不受信任的证书 NSErrorPeerCertificateChainKey

时间:2021-02-04 11:12:05

标签: swift certificate ssl-certificate nsurlsession airwatch

我有一部 iPhone 正在注册 AirWatch。我尝试了一个简单的登录请求,但出现以下错误:

▿ URLError
  - _nsError : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, _kCFStreamErrorDomainKey=3, NSErrorPeerCertificateChainKey=(
    "<cert(0x10b0e3c00) s: MY_SERVER i: QuoVadis Global SSL ICA G3>",
    "<cert(0x10b0e4800) s: QuoVadis Global SSL ICA G3 i: QuoVadis Root CA 2 G3>"
), NSErrorClientCertificateStateKey=0, NSErrorFailingURLKey=https://MY_SERVER/login, NSErrorFailingURLStringKey=https://MY_SERVER/login, NSUnderlyingError=0x283052340 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, kCFStreamPropertySSLPeerTrust=<SecTrustRef: 0x280d79950>, _kCFNetworkCFStreamSSLErrorOriginalValue=-9802, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9802, kCFStreamPropertySSLPeerCertificates=(
    "<cert(0x10b0e3c00) s: MY_SERVER i: QuoVadis Global SSL ICA G3>",
    "<cert(0x10b0e4800) s: QuoVadis Global SSL ICA G3 i: QuoVadis Root CA 2 G3>"
)}}, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <66CA69A9-B1F6-4020-BCBB-920CE84F129D>.<2>"
), _kCFStreamErrorCodeKey=-9802, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <66CA69A9-B1F6-4020-BCBB-920CE84F129D>.<2>, NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef: 0x280d79950>, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made.}

当我尝试使用未注册的设备时,一切正常。

我尝试在 plist 中添加:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>MY_SERVER</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>

0 个答案:

没有答案