
Tengo un inquilino de Azure B2C que usa políticas personalizadas para conectarse a nuestra propia API. Actualmente, la política cuenta con un certificado *.something.dev y vence cada 3 meses. El plan es reemplazar este certificado actual con un certificado emitido por una CA para que no tengamos que reemplazar el certificado 4 veces al año, sino solo una vez.
Sin embargo, el error que recibimos después de cargar un certificado CA de Comodo es
Microsoft.Cpim.Common.PolicyException
.
¿Hay algún lugar donde podríamos haber establecido una CA o limitaciones en Azure para que esto cause estos problemas? No recuerdo haber realizado ninguna configuración relacionada con CA en Azure.
Si reemplazamos Comodo CA con un certificado Let's Encrypt, el servicio vuelve a funcionar. El código de nuestra parte permite la huella digital de ambos certificados, por lo que eso no causa el problema.
Lo he intentado hasta ahora:
- Reemplazo de nuestra URL en el servicio web (movida de algo.test.dev a otrodominio.com).
- Se reemplazaron los certificados 2048 por 4096 y viceversa.
- Nuevas políticas creadas (B2C_1A_EnrichmentApiClientCertificate)
- Creé un nuevo inquilino b2c y realicé todas las configuraciones nuevamente.
- Si configuro nuestra propia API sin conexión, aparece este error:
Microsoft.Cpim.Common.Web.ConnectionException
así que estoy 100% seguro de que estamos llamando a esta API exacta. - Se eliminó cualquier registro CAA, para ver si tiene alguna relación con él.
Respuesta1
La respuesta a esta pregunta está en la cadena de certificados.
La cadena estaba mal configurada y teníamos certificados no raíz colocados en el almacén raíz del servidor, lo que estaba causando problemas.
La eliminación de los certificados incorrectos solucionó este problema.
¿Cómo solucionamos esto?
- Comparó una computadora/servidor mmc.exe en funcionamiento con un entorno que no funciona y eliminó los certificados que no coinciden.