Configuração Geral

Para permitir que o SCEPman trate com sucesso solicitações SOAP recebidas, precisamos executar alguns passos:

1

Domínio personalizado e BaseUrl

Para uma autenticação bem-sucedida com o SCEPman, certifique-se de que um domínio personalizado usando um registro A aponta para o App Service. Caso contrário, o cliente não conseguirá solicitar um ticket Kerberos válido ao controlador de domínio.

circle-info

Veja o problema conhecido abaixo sobre WS_E_ENDPOINT_ACCESS_DENIED para mais informações sobre isso.

Garanta que o SCEPman esteja configurado para ser acessível usando um domínio personalizado:

Domínio Personalizadochevron-right

O mesmo requisito também se aplica após a solicitação inicial de política (listagem dos templates de certificado) para registrar certificados. Para permitir autenticações bem-sucedidas, certifique-se de que a AppConfig:BaseUrl variável corresponda ao seu domínio personalizado ou use a AppConfig:ActiveDirectory:BaseUrl configuração dedicada se preferir acessar o Endpoint do AD em uma URL diferente das suas outras endpoints do SCEPman.

2

Criar Service Principal

Use o New-SCEPmanADPrincipal Cmdlet do módulo PowerShell do SCEPman para criar o service principal no seu domínio Active Directory on-premises. Ele também exportará um keytab dessa conta e o criptografará com o certificado CA do SCEPman.

Você pode executar este comando em um controlador de domínio ou em um servidor associado ao domínio que tenha instalado o RSAT-AD-Tools recurso. Você também precisará das seguintes permissões na OU em que deseja criar o principal:

Na própria OU:

  • Criar objetos de computador

Em objetos de computador descendentes:

  • Redefinir senha

  • Gravar msDS-SupportedEncryptionTypes

  • Gravar servicePrincipalName

  • Gravar userPrincipalName

A variante abaixo também requer acesso de rede HTTPS de saída à sua instância do SCEPman.

circle-info

Se o seu computador com acesso a um Controlador de Domínio não tiver acesso à rede, há variantes do CMDlet que funcionam sem ele, mas exigem alguma preparação adicional, como baixar o certificado CA do SCEPman e copiar a CA para a máquina que executa o CMDlet.

Executar este comando realizará o seguinte:

  1. Criar um objeto de computador na OU=Example,DC=contoso,DC=com Unidade Organizacional.

  2. Baixar o certificado CA do SCEPman para criptografar o keytab no passo 5.

  3. Adicionar um service principal name (SPN) ao objeto de computador.

  4. Criar um keytab para a conta do computador contendo a chave de criptografia baseada na senha do computador.

  5. Criptografar o keytab com o certificado CA do SCEPman, de modo que apenas o SCEPman possa descriptografá-lo novamente usando a chave privada da CA.

  6. Gerar o keytab criptografado, para que ele possa ser transferido para a configuração do SCEPman.

A saída codificada em Base64 deve então ser adicionada à variável de ambiente AppConfig:ActiveDirectory:Keytab do seu App Service do SCEPman.

3

Adicionar Keytab ao SCEPman

A integração pode ser facilmente habilitada adicionando as seguintes variáveis de ambiente no App Service do SCEPman. Dependendo do seu caso de uso, habilite um ou mais dos templates de certificado disponíveis:

Exemplo com todos os templates de certificado habilitados:

Configuração
Valor

AppConfig:ActiveDirectory:Keytab

Keytab codificado em Base64 para o service principal criado no Passo 1

AppConfig:ActiveDirectory:Computer:Enabled

true

AppConfig:ActiveDirectory:User:Enabled

true

AppConfig:ActiveDirectory:DC:Enabled

true

Problemas conhecidos

WS_E_ENDPOINT_ACCESS_DENIED

Erro: WS_E_ENDPOINT_ACCESS_DENIED 
Hex: 0x803d0005
Dec: -2143485947

Sabe-se que esse erro ocorre durante a validação do servidor CEP quando você está usando os padrões URIs do Azure App Service. Esse erro é causado pelo protocolo Kerberos solicitando um service principal name do registro A do serviço que será acessado. No caso dos domínios padrão do app service, por exemplo contoso.azurewebsites.net é apenas um CNAME e aponta para um registro A semelhante a:

waws-prod-ab1-234-c56d.westeurope.cloudapp.azure.com

Como esse registro A de um host de infraestrutura não é garantido ser consistente no futuro, adicionar um service principal name para esse host não é recomendado.

Certifique-se de adicionar um domínio personalizado ao seu app service e usar um registro A no seu provedor de DNS para apontá-lo para o app service em vez de um CNAME.

Domínio Personalizadochevron-right

ERROR_INVALID_PARAMETER

Erro: ERROR_INVALID_PARAMETER
Hex: 0x80070057
Dec: -2147024809

Esse erro ocorre durante o registro do servidor CEP se você inserir um URI que começa com http://. Certifique-se de registrar um servidor CEP apenas usando https://

ERROR_ACCESS_DENIED

Ao registrar um servidor CEP no contexto da máquina, o usuário atuante (a conta que iniciou gpmc.msc) precisa ser membro do grupo Administradores locais no computador enquanto edita a GPO.

Certifique-se de iniciar gpmc.msc com permissões elevadas neste caso.

Last updated

Was this helpful?