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,
};

 

posted on 2017-12-24 06:00  古成风云  阅读(549)  评论(0编辑  收藏  举报

导航