ios - [iOS]如何使用NSURLConnection自定义SSL验证?

标签 ios ssl nsurlconnection nsurlsession

出于某种原因,我需要自定义我的 iOS 应用程序的 SSL 验证,这样它就不会尝试将 URL 与 SSL 证书的 CN 字段匹配,而是检查 CN 字段是否包含我指定的内容。

我现在正在使用标准的 [NSURLConnection sendAsynchronousRequest],我无法使用它来自定义 SSL 验证行为。

这可能吗?

最佳答案

这在 Overriding TLS Chain Validation Correctly 中有记录,并附有代码 list 在 Apple 的开发者文档网站上。基本上,您为所需的主机名创建一个新的 TLS 策略对象,然后使用一组证书和更改后的信任策略创建一个新的信任对象。

只需将 list 3(覆盖 NSURLConnection 对象使用的信任对象)与 list 2(更改 SecTrustRef 对象的远程主机名)结合起来。

关于ios - [iOS]如何使用NSURLConnection自定义SSL验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53485695/

相关文章:

ios - iOS 7 中的 UITabbarController 布局问题-导航栏后面的 View

ssl - 通过 SSL 使用 AD LDS

iphone - 什么时候 NSURLResponse 不是 NSHTTPURLResponse?

ios - NSURLConnection - didReceiveData 没有被调用 - iOS 和 ARC

ios - 在 UITableView 中更改数据库 JSON 数组数据时出现问题

iOS: Realm ,检查对象是否为零

javascript - 如何在外部安全网站上创建超时

ssl - AlphaSSL - "CA Bundle does not match the certificate"- 在 CPanel 中

iphone - NSURLConnection 异步请求并在满足请求时显示 "Loading"警报 View 或 subview

ios - setContentOffset : animated: wont do anything if animated = NO