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, };
时间: 2024-10-13 12:59:54