Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
只有当服务器需要客户端证书时,iOS客户端才能通过f5 BigIP进行服务器验证/身份验证_Ios_Security_Ssl_Https_F5 - Fatal编程技术网

只有当服务器需要客户端证书时,iOS客户端才能通过f5 BigIP进行服务器验证/身份验证

只有当服务器需要客户端证书时,iOS客户端才能通过f5 BigIP进行服务器验证/身份验证,ios,security,ssl,https,f5,Ios,Security,Ssl,Https,F5,在尝试通过双向SSL(HTTPS)连接到f5 BigIP服务器时,我的iOS客户端遇到了一个奇怪的错误-只有当服务器在SSL协商期间不需要客户端证书时,客户端才能通过其证书验证服务器。签署服务器和我的客户端证书的根CA的证书已在我的受信任的锚证书列表中 以下是我尝试的每个测试中的步骤及其SSL协商结果: 服务器不需要客户端证书,客户端验证服务器证书(单向ssl:客户端->服务器) 客户端验证服务器证书(通过) 客户端向服务器提供其证书(未选中-服务器不需要) 连接已建立,服务器允许客户端访问

在尝试通过双向SSL(HTTPS)连接到f5 BigIP服务器时,我的iOS客户端遇到了一个奇怪的错误-只有当服务器在SSL协商期间不需要客户端证书时,客户端才能通过其证书验证服务器。签署服务器和我的客户端证书的根CA的证书已在我的受信任的锚证书列表中

以下是我尝试的每个测试中的步骤及其SSL协商结果:

  • 服务器不需要客户端证书,客户端验证服务器证书(单向ssl:客户端->服务器)
    • 客户端验证服务器证书(通过)
    • 客户端向服务器提供其证书(未选中-服务器不需要)
    • 连接已建立,服务器允许客户端访问
  • 服务器需要客户端证书,客户端验证服务器证书(双向SSL:客户端-服务器)
    • 客户端验证服务器证书(失败!!)
    • 没有别的事情发生

  • 服务器需要客户端证书,客户端接受任何受信任的服务器(1-way SSL:client问题是我在f5服务器上的iRule中收到了客户端请求。我删除了iRule的这一部分,并将请求添加到客户端SSL配置文件中。这似乎适用于iOS客户端,这意味着iOS代码可能有点奇怪,因为我测试过的所有浏览器都是以任何一种方式运行的uest(iRule或客户端SSL配置文件)。iOS应用程序仅适用于在客户端SSL配置文件中发出请求