IOS 开发 网络详解--- AFSecurityPolicy

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 开发 网络详解--- AFSecurityPolicy相关的知识,希望对你有一定的参考价值。

1.获取证书

1、获取到站点的证书:
??我们可以使用以下openssl命令来获取到服务器的公开二进制证书(以google为例):

"openssl s_client -connect www.google.com:443 </dev/null 2>/dev/null | openssl x509 -outform DER > https.cer"
冒号中的为命令主要部分。该条命令将会在当前路径下,形成google.com站点的公开二进制证书,命名为https.cer。您可以将www.google.com 替换成您自己的站点以此来获取您自己站点的https.cer。

 

2.证书加入到项目

技术分享图片

 

3.使用的代码

AFSecurityPolicy *securityPolicy = [[AFSecurityPolicy alloc] init]; 
[securityPolicy setAllowInvalidCertificates:NO]; 
[securityPolicy setSSLPinningMode:AFSSLPinningModeCertificate]; 
[securityPolicy setValidatesDomainName:YES];
[securityPolicy setValidatesCertificateChain:NO]; 

manager.securityPolicy = securityPolicy;

 

4.mode的设置

typedef NS_ENUM(NSUInteger, AFSSLPinningMode) {
    AFSSLPinningModeNone,
    AFSSLPinningModePublicKey,
    AFSSLPinningModeCertificate,
};

 


以上是关于IOS 开发 网络详解--- AFSecurityPolicy的主要内容,如果未能解决你的问题,请参考以下文章

IOS 开发 网络详解(10)--- AFNetWorking概述

IOS 开发 网络详解AFNetworking总结

IOS 开发 网络详解--- AFNetworkReachabilityManager

IOS 开发 网络详解--- AF的大体思路

IOS 开发 网络详解--- AFSecurityPolicy解析

IOS 开发 网络详解--- AFSecurityPolicy