iOS APP配置HTTPS流程
2016-12-22 13:27
501 查看
您的APP启用HTTPS了吗?距离2017年1月1日"苹果iOS强制要求HTTPS连接"还有不到1个月的时间,是否支持HTTPS直接影响APP能否在苹果商店顺利上架。本文将帮助您更快实施HTTPS!
Ngnix服务器+域名
SSL证书
准备工作
申请一个 SSL 证书 ,可在沃通WoSign网站申请所需SSL证书类型。SSL证书按验证的类别可分:
DV SSL证书(域名验证型):只验证域名所有权,适合个人网站、博客等站点使用;
OV SSL证书(企业验证型):验证网站所属单位身份,适合企业级用户使用;
EV SSL证书(扩展验证型):扩展验证网站所属单位身份,这种证书在浏览器中会显示醒目的绿色地址栏,可信度最高,适合需要用户高度信任的企业级用户使用。
根据域名数量和域名类型选择对应的证书。
![](http://f.hiphotos.baidu.com/exp/w=500/sign=f057883840540923aa69637ea259d1dc/738b4710b912c8fcbe2880d6f5039245d78821d5.jpg)
AFN配置HTTPS
1.项目中的网络交互都是基于AFN,要求AFN版本在3.0及其以上;
2.代码部分
设置AFN请求管理者的时候 添加 https ssl 验证。
// 1.获得请求管理者
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
// 2.加上这个函数,https ssl 验证。
[manager setSecurityPolicy:[self customSecurityPolicy]];
// https ssl 验证函数
- (AFSecurityPolicy *)customSecurityPolicy {
// 先导入证书
NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"xxx" ofType:@"cer"];//证书的路径
NSData *cerData = [NSData dataWithContentsOfFile:cerPath];
// AFSSLPinningModeCertificate 使用证书验证模式
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
// allowInvalidCertificates 是否允许无效证书(也就是自建的证书),默认为NO
//validatesDomainName 是否需要验证域名,默认为YES;
3.关于证书
从沃通获取到HTTPS证书后,会得到一个有密码的压缩包文件,使用for other server里面的domain.crt的证书文件即可。
后台服务器配置HTTPS证书(Ngnix)
从沃通证书文件压缩包中,打开其中的for Nginx 文件可以看到 2 个文件,包括公钥、私钥。
打开Nginx安装目录下conf目录中的nginx.conf文件找到
#HTTPS server
#
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
将其修改为 :
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate sslkey/public.cer; (证书公钥)
ssl_certificate_key sslkey/private.key; (证书私钥)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
保存退出,并重启Nginx。
Ngnix服务器+域名
SSL证书
准备工作
申请一个 SSL 证书 ,可在沃通WoSign网站申请所需SSL证书类型。SSL证书按验证的类别可分:
DV SSL证书(域名验证型):只验证域名所有权,适合个人网站、博客等站点使用;
OV SSL证书(企业验证型):验证网站所属单位身份,适合企业级用户使用;
EV SSL证书(扩展验证型):扩展验证网站所属单位身份,这种证书在浏览器中会显示醒目的绿色地址栏,可信度最高,适合需要用户高度信任的企业级用户使用。
根据域名数量和域名类型选择对应的证书。
![](http://f.hiphotos.baidu.com/exp/w=500/sign=f057883840540923aa69637ea259d1dc/738b4710b912c8fcbe2880d6f5039245d78821d5.jpg)
AFN配置HTTPS
1.项目中的网络交互都是基于AFN,要求AFN版本在3.0及其以上;
2.代码部分
设置AFN请求管理者的时候 添加 https ssl 验证。
// 1.获得请求管理者
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
// 2.加上这个函数,https ssl 验证。
[manager setSecurityPolicy:[self customSecurityPolicy]];
// https ssl 验证函数
- (AFSecurityPolicy *)customSecurityPolicy {
// 先导入证书
NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"xxx" ofType:@"cer"];//证书的路径
NSData *cerData = [NSData dataWithContentsOfFile:cerPath];
// AFSSLPinningModeCertificate 使用证书验证模式
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
// allowInvalidCertificates 是否允许无效证书(也就是自建的证书),默认为NO
//validatesDomainName 是否需要验证域名,默认为YES;
3.关于证书
从沃通获取到HTTPS证书后,会得到一个有密码的压缩包文件,使用for other server里面的domain.crt的证书文件即可。
后台服务器配置HTTPS证书(Ngnix)
从沃通证书文件压缩包中,打开其中的for Nginx 文件可以看到 2 个文件,包括公钥、私钥。
打开Nginx安装目录下conf目录中的nginx.conf文件找到
#HTTPS server
#
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
将其修改为 :
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate sslkey/public.cer; (证书公钥)
ssl_certificate_key sslkey/private.key; (证书私钥)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
保存退出,并重启Nginx。
相关文章推荐
- windows安装并配置apache https 网站 &发布企业级iOS APP(enterprise)
- iOS 开发 APP应用发布流程详解之证书/配置文件--2016最新版
- Mac OS X EI Captitan 配置 Apache https 网站 & 发布 ios 企业级APP(Enterprise)
- iOS app 企业内部发布及HTTPS服务器配置
- 苹果iOS APP配置HTTPS,iOS ATS配置SSL,苹果ATS标准解决方案
- [IOS] iOS开发之工具篇-20个可以帮你简化移动app开发流程的工具
- iOS开发之工具篇-20个可以帮你简化移动app开发流程的工具
- IOS APP提交流程
- IOS App提交流程
- ios app开发学习流程(入门到精通)
- iOS 企业证书发布app 流程
- iOS开发之工具篇-20个可以帮你简化移动app开发流程的工具
- iOS app官方开发,调试,发布流程
- iOS 企业证书发布app 流程
- ios app证书申请、提交app store流程
- ios app 常用 配置
- ios 企业级app打包流程纪录
- ios APNS配置流程
- IOS下app的发布流程
- iOS APP 开发流程