【问题标题】:iOS NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made."iOS NSURLErrorDomain Code=-1200 “发生 SSL 错误,无法与服务器建立安全连接。”
【发布时间】:2020-11-02 16:43:40
【问题描述】:

我的应用程序从 AWS 存储桶中获取资源(通过云端访问)。 部分用户无法获取数据,原因是

NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made."

当我们使用 AWS 服务时,我假设 SSL 证书没问题,它发生在一小部分(但不够小)的用户应该说 SSL 证书没问题。

我看到的有关此问题的任何其他帖子都建议在 info.plist 文件中向App Transport Security Settings 添加一个标志,以允许不安全的连接。这不是我可以(或不想)做的事情。

感谢您的帮助:)

【问题讨论】:

    标签: ios amazon-web-services ssl amazon-s3 amazon-cloudfront


    【解决方案1】:

    我从 Apple 开发者论坛中找到了 this solution,其中不涉及修改 App Transport Security Settings

    而且您的场景中不应该需要 ATS 异常。这 我推荐的方法如下:

    • 在您的组织内设置自定义证书颁发机构 (CA)(许多组织已经拥有此功能)。

    • 让它为您的私人服务器颁发证书。

    • 使用 MDM 在您的设备上安装您组织 CA 的根证书。

    【讨论】:

    • 谢谢!由于我不使用私有服务器,而是使用 AWS s3 + 云前端(带有 AWS SSL 证书),我认为这不适合我。
    【解决方案2】:
    • 如果您使用的是 VPN,这可能会发生。
    • 但是,如果您使用的是 Charles Proxy 等代理工具,但尚未安装/信任 Charles Proxy 证书,也会发生这种情况。
    • 当我在公共 wifi 网络上时,它也发生在我身上。似乎公共 wifi 是如何做某种 MITM 来添加一些广告的。我在使用 LTE 或非公共 wifi 时没有遇到同样的问题

    【讨论】:

      猜你喜欢
      • 2019-06-26
      • 2016-02-28
      • 2018-06-06
      • 2015-12-21
      • 2013-10-11
      • 2017-01-22
      • 2012-07-25
      • 2017-09-03
      • 1970-01-01
      相关资源
      最近更新 更多