Configuração geral
Para permitir que o SCEPman trate com êxito os pedidos SOAP recebidos, precisamos tomar alguns passos:
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 aponte para o App Service. Caso contrário, o cliente não conseguirá solicitar um ticket Kerberos válido ao controlador de domínio.
O domínio personalizado não precisa se assemelhar ao FQDN do seu domínio AD. Portanto, ter um domínio ad.contoso.local não significa que você precise de um domínio personalizado idêntico ou semelhante para o SCEPman.
Consulte abaixo o problema conhecido sobre WS_E_ENDPOINT_ACCESS_DENIED para obter mais informações sobre isso.
Certifique-se de que o SCEPman esteja configurado para ser acessível usando um domínio personalizado:
Domínio PersonalizadoO mesmo requisito também se aplica após o pedido inicial da política (listando os modelos de certificado) para emitir 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 configuração dedicada AppConfig:ActiveDirectory:BaseUrl se preferir acessar o Endpoint do AD em uma Url diferente dos seus outros endpoints do SCEPman.
Criar Service Principal
Use o New-SCEPmanADPrincipal Cmdlet do módulo SCEPman PowerShell para criar o service principal no seu domínio Active Directory local. Ele também exportará um keytab desta 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 ingressado no 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
Escrever
msDS-SupportedEncryptionTypesEscrever
servicePrincipalNameEscrever
userPrincipalName
A variante abaixo também exige acesso de rede HTTPS de saída para a sua instância SCEPman.
Se o seu computador com acesso a um Controlador de Domínio não tiver acesso à rede, existem variantes do CMDlet que funcionam sem isso, 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 fará o seguinte:
Criar um objeto de computador na
OU=Example,DC=contoso,DC=comUnidade Organizacional.Baixar o certificado CA do SCEPman para criptografar o keytab na etapa 5.
Adicionar um nome de service principal (SPN) ao objeto de computador.
Criar um keytab para a conta de computador contendo a chave de criptografia com base na senha do computador.
Criptografar o keytab com o certificado CA do SCEPman, para que apenas o SCEPman possa descriptografá-lo novamente usando a chave privada da CA.
Gerar a saída do 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 SCEPman App Service.
Adicionar Keytab ao SCEPman
A integração pode ser facilmente ativada adicionando as seguintes variáveis de ambiente no SCEPman App Service. Dependendo do seu caso de uso, ative um ou mais dos modelos de certificado disponíveis:
Exemplo com todos os modelos de certificado ativados:
AppConfig:ActiveDirectory:Keytab
Keytab codificado em Base64 para o service principal criado na Etapa 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: -2143485947Este erro é conhecido por ocorrer durante a validação do servidor CEP quando você está usando os padrão URIs do Azure App Service. Esse erro é causado pelo protocolo Kerberos ao solicitar um service principal name do registro A do serviço a 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.comComo esse registro A de um host de infraestrutura não tem garantia de 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 use um registro A no seu provedor de DNS para apontá-lo para o app service em vez de um CNAME.
Domínio PersonalizadoERROR_INVALID_PARAMETER
Erro: ERROR_INVALID_PARAMETER
Hex: 0x80070057
Dec: -2147024809Este erro ocorre durante o registro do servidor CEP se você inserir uma URI que comece com http://. Certifique-se de registrar um servidor CEP usando apenas 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 local Administrators no computador enquanto edita a GPO.
Certifique-se de iniciar gpmc.msc com privilégios elevados neste caso.
Last updated
Was this helpful?