【移动应用开发技术】iOS实用教程之Https双向认证详解_第1页
【移动应用开发技术】iOS实用教程之Https双向认证详解_第2页
【移动应用开发技术】iOS实用教程之Https双向认证详解_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【移动应用开发技术】iOS实用教程之Https双向认证详解

前言年前的时候,关于苹果要强制https的传言四起,虽然结果只是一个“谣言”,但是很明显的这是迟早会到来的,间接上加速了各公司加紧上https的节奏,对于iOS客户端来说,上https需不需要改变一些东西取决于对,就是公司有没有钱。土豪公司直接买买买,iOS开发者只需要把http改成https完事。然而很不幸,我们在没钱的公司,选择了自签证书。虽然网上很多关于https的适配,然而很多都是已过时的,这里我们主要是讲一下https双向认证。【证书选择】自签

【网络请求】原生NSURLSession或者AFNetworking3.0以上版本

【认证方式】双向认证Https双向认证过程先来了解一下双向认证的大体过程:(图片来自网络,如果是某位博主原创的请私信我)

下面我们一步步来实现1、设置服务端证书2、处理挑战原生的NSURLSession是在代理方法里面处理挑战的,再看看AFNetworking在该代理方法里处理的代码我们只需要给它传递一个处理的block根据传来的challenge生成disposition(应对挑战的方式)和credential(客户端生成的挑战证书)3、服务端认证当challenge的认证方法为NSURLAuthenticationMethodServerTrust时,需要客户端认证服务端证书4、客户端认证认证完服务端后,需要认证客户端

由于是双向认证,这一步是必不可省的原生NSURLSession双向认证在原生的代理方法里面认证就行,代码基本和AFNetworking的一致,注意最后需要调用来执行回调操作关于UIWebView的Https双向认证网上的资料大体上有几种解决方法

1:跳过Https认证(这还能跳过?没试过,不太靠谱)

2:中断原有的请求步骤,将request拿出来,下载完整的HTML代码,让webView加载该代码(在单页面展示的情况下基本满足使用,但是在部分标签不是独立跳转https路径的时候,将出现无法加载的情况,不是很好用)3、中断原有的请求步骤,将request拿出来,完成鉴权认证之后,再让webView重新请求该request(这种方式理论上好像可以,我试过,没有成功,可能我打开的方式不正确)

4、或许,您有更好的解决方案--关于代码网上很多https双向认证的代码,基本是一样的,这里我们直接拿来用就可以,前

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论