Idealmente, solo debería haber dos escenarios en los que una aplicación iOS necesitaría aceptar un certificado no confiable.
Escenario A: está conectado a un entorno de prueba que utiliza un certificado autofirmado.
Escenario B: está enviando HTTPS
tráfico mediante un MITM Proxy like Burp Suite, Fiddler, OWASP ZAP, etc.
proxy Los proxy devolverán un certificado firmado por una CA autofirmada para que el proxy pueda capturarHTTPS
tráfico.
Los hosts de producción nunca deben usar certificados no confiables por razones obvias .
Si necesita que el simulador de iOS acepte un certificado no confiable para fines de prueba, se recomienda encarecidamente que no cambie la lógica de la aplicación para deshabilitar la validación de certificado incorporada proporcionada por el NSURLConnection
API. Si la aplicación se lanza al público sin eliminar esta lógica, será susceptible a ataques de hombre en el medio.
La forma recomendada de aceptar certificados no confiables para fines de prueba es importar el certificado de la Autoridad de certificación (CA) que firmó el certificado en su simulador de iOS o dispositivo iOS. Escribí una publicación rápida en el blog que demuestra cómo hacer esto en un simulador de iOS en:
aceptar certificados no confiables utilizando el simulador ios