Rest 具有自签名证书的AFN网络

Rest 具有自签名证书的AFN网络,rest,ssl,certificate,backend,Rest,Ssl,Certificate,Backend,我正在尝试为具有REST后端的IOS应用程序设置自签名SSL证书 我的问题是我应该使用[securityPolicy setAllowInvalidCertificates:YES];当我们使用自签名证书时?没有可信证书吗 我不理解确切的机制,但是我读了好几个小时关于SSL的书。。它与setAllowInvalidCertificates一起工作:是的,但否则我会得到1012错误 我的问题是我应该使用[securityPolicy setAllowInvalidCertificates:YES]

我正在尝试为具有REST后端的IOS应用程序设置自签名SSL证书

我的问题是我应该使用[securityPolicy setAllowInvalidCertificates:YES];当我们使用自签名证书时?没有可信证书吗

我不理解确切的机制,但是我读了好几个小时关于SSL的书。。它与setAllowInvalidCertificates一起工作:是的,但否则我会得到1012错误

我的问题是我应该使用[securityPolicy setAllowInvalidCertificates:YES];当我们使用自签名证书时?没有可信证书吗


不!这将挫败SSL的全部目的,因为它将使中间人攻击成为可能。更好地使用。我不知道如何使用AFNetwork实现这一点,但是链接的资源有很多环境的代码。

是的,您应该设置[securityPolicy setAllowInvalidCertificates:Yes];使用自签名证书时。正确,;您应该对受信任的证书使用NO


当设置为“否”时,您可能仍然会收到错误,因为您的证书链的一部分不受信任。尝试使用名为SSL Detective的应用程序,以确保整个链都是可信的,没有红色(不可信)组件。AFNetworking不喜欢这些。

顺便说一句,那些帖子声称不喜欢这些。但这对我来说也不安全;这可能是因为该选项的名称不正确,只是意味着它不会执行内置检查,但您可以定义其他选项。在其他语言中,这种选项通常禁用所有检查,即内置检查和自定义检查。但最好检查它是否真的在末尾使用了钉住。在任何情况下,您都不应该设置此选项,然后不进行任何进一步的检查,因为这样您就可以只接受任何证书。在您将该证书安装到手机上之前,您似乎无法将自签名证书与[securityPolicy setAllowInvalidCertificates:no]一起使用。在模拟器中,你们可以拖放你们的cer文件来安装,然后它就可以工作了。我想我应该选择苹果值得信赖的CAs。