【问题标题】:Handling SSL certificates as they are renewed on the server在服务器上更新 SSL 证书时处理它们
【发布时间】:2014-05-26 19:00:17
【问题描述】:

我的服务器上有一个由 CA (Geotrust) 签署的证书。我的应用程序中安装了相同的证书。我比较了 URLSession:didReceiveChallenge:completionHandler: 中的两个证书。但是我的托管服务通知我,我需要每年“更新”证书。这为我在应用程序中处理创建了一个新的和不同的证书。由于证书不是自签名的,我是否需要将证书嵌入应用程序以与来自服务器的证书进行比较,或者 iOS 的 SSL 处理是否为我解决了挑战。也许我可以只使用服务器信任而不查看证书?

【问题讨论】:

  • 您能否澄清一下您的客户端是否在确定服务器是否正确,或者服务器是否在确定客户端是否正确?
  • 在 SSL pinning 上查看这个答案 stackoverflow.com/questions/22055153/… 它可能会有所帮助

标签: ios ssl certificate


【解决方案1】:

我的应用中安装了相同的证书。

为什么?

我比较了 URLSession:didReceiveChallenge:completionHandler 中的两个证书。

为什么?

您应该做的是比较subjectDN。这就是签名者正在验证的内容。这就是你所需要的。

也许我可以只使用服务器信任而不查看证书?

听起来您正在尝试做正确的事情并添加授权步骤。依靠“服务器信任”只是为您提供身份验证,即主题 DN 就是他所说的那个人。授权检查该 DN 是否被授权使用该应用程序的这一部分。但您无需为此检查整个证书。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-04
    • 1970-01-01
    • 2020-12-17
    • 1970-01-01
    • 2021-12-27
    • 1970-01-01
    • 2021-10-23
    • 1970-01-01
    相关资源
    最近更新 更多