Tenho um locatário do Azure B2C que usa políticas personalizadas para conectar-se à nossa própria API. A política é atualmente provisionada com um certificado *.something.dev e expira a cada 3 meses. O plano é substituir este certificado atual por um certificado emitido por uma CA para que não tenhamos que substituir o certificado 4 vezes por ano, mas apenas uma vez.
O erro que recebemos após o upload de um certificado Comodo CA é
Microsoft.Cpim.Common.PolicyException
.
Existe algum lugar onde poderíamos ter definido uma CA ou limitações no Azure para que isso causasse esses problemas? Não me lembro de ter feito nenhuma configuração relacionada à CA no Azure.
Se substituirmos o Comodo CA por um certificado Let's Encrypt, o serviço funcionará novamente. O código do nosso lado permite a impressão digital de ambos os certificados, portanto isso não está causando o problema.
Eu tentei até agora:
- Substituindo nossa URL no webservice (movido de algo.test.dev para algumoutrodomínio.com).
- Substituídos 2.048 certificados por 4.096 e vice-versa.
- Novas políticas criadas (B2C_1A_EnrichmentApiClientCertificate)
- Criou um novo locatário b2c e fez todas as configurações novamente.
- Se eu definir nossa própria API off-line, recebo este erro:
Microsoft.Cpim.Common.Web.ConnectionException
tenho 100% de certeza de que estamos chamando exatamente essa API. - Removido qualquer registro CAA, para ver se tem alguma relação com ele
Responder1
A resposta a esta pergunta está na cadeia de certificados.
A cadeia foi configurada incorretamente e tínhamos certificados não raiz colocados no armazenamento raiz do servidor, o que estava causando problemas.
A remoção dos certificados errados corrigiu esse problema para nós.
Como resolvemos isso:
- Compare um computador/servidor mmc.exe em funcionamento com um ambiente que não funciona e remova os certificados que não correspondem.