SSL-Zertifikatsfehler nur in iOSIOS

Programmierung für iOS
Anonymous
 SSL-Zertifikatsfehler nur in iOS

Post by Anonymous »

Ich habe eine einfache App, die Daten an einen Webdienst sendet (Ubuntu / Node js / Javascript). Bei Verwendung von http hat alles funktioniert (obwohl möglicherweise immer noch ein HTTPS-Setup-Problem das Problem ist). Das Problem scheint mit dem SSL-Serverzertifikat auf dem Ubuntu-Server und der Tatsache zusammenzuhängen, dass Apple es nicht als sicher anerkennt. Ich habe jedoch kein Problem mit den entsprechenden Android-App- oder Webbrowser-Verbindungen zu denselben übrigen API-Webdiensten. Es gibt zahlreiche Beiträge zu diesen Problemen bei Apple und anderen Foren, aber keiner hat mir dabei geholfen, das Problem erfolgreich zu lösen.
Ich habe auf https://www.ssllabs.com/ssltest/ einen SSL-Servertest durchgeführt, der Bewertungen für SSL-Sites liefert. Der Test ergab eine A-Bewertung, obwohl eine Reihe kleinerer Probleme festgestellt wurden, die für den iOS-Fehler ausschlaggebend sein könnten. Bei einigen Sectigo-Zertifikaten stand „selbstsigniert“, was ich nicht verstehen konnte.
Fehlermeldung aus XCode-Protokoll beigefügt

Code: Select all

2025-09-10 10:28:01.725091+0100 locateandclock[2291:1585213] ATS failed system trust
2025-09-10 10:28:01.725192+0100 locateandclock[2291:1585213] Connection 1: system TLS Trust evaluation failed(-9802)
2025-09-10 10:28:01.725291+0100 locateandclock[2291:1585213] Connection 1: TLS Trust encountered error 3:-9802
2025-09-10 10:28:01.725352+0100 locateandclock[2291:1585213] Connection 1: encountered error(3:-9802)
2025-09-10 10:28:01.726727+0100 locateandclock[2291:1585213] Task . HTTP load failed, 0/0 bytes (error code: -1200 [3:-9802])
2025-09-10 10:28:01.736504+0100 locateandclock[2291:1585213] Task . finished with error [-1200] 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=(
"",
"",
"" ),
NSErrorClientCertificateStateKey=0, NSErrorFailingURLKey=https://xxxxxxxxxxxx.co.uk/insertclocking, NSErrorFailingURLStringKey=https://xxxxxxxxxxxx.co.uk/insertclocking, NSUnderlyingError=0x282361650 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, kCFStreamPropertySSLPeerTrust=, _kCFNetworkCFStreamSSLErrorOriginalValue=-9802, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9802, kCFStreamPropertySSLPeerCertificates=(
"",
"",
"" )}},
_NSURLErrorRelatedURLSessionTaskErrorKey=( "LocalDataTask ." ), _kCFStreamErrorCodeKey=-9802, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask ., NSURLErrorFailingURLPeerTrustErrorKey=,
NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made.}
Ich habe dann die iOS-Einstellungen geändert, indem ich NSAllowsArbitraryLoads so eingestellt habe, dass ATS entfernt wird – ein Test, keine Lösung. Die Fehlermeldung ändert sich wie folgt, ich bin mir jedoch nicht sicher, was mir das sagt.
Irgendwelche Ideen???

Code: Select all

2025-09-12 12:33:32.650932+0100 locateandclock[2832:2071478] Connection 2: default TLS Trust evaluation failed(-9813)
2025-09-12 12:33:32.651119+0100 locateandclock[2832:2071478] Connection 2: TLS Trust encountered error 3:-9813
2025-09-12 12:33:32.651175+0100 locateandclock[2832:2071478] Connection 2: encountered error(3:-9813)
2025-09-12 12:33:32.706852+0100 locateandclock[2832:2071478] Task . HTTP load failed, 0/0 bytes (error code: -1202 [3:-9813])
2025-09-12 12:33:32.723928+0100 locateandclock[2832:2071541] Task . finished with error [-1202] Error Domain=NSURLErrorDomain Code=-1202 "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “xxxxxxxxxxx.co.uk” which could put your confidential information at risk."
UserInfo={NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, _kCFStreamErrorDomainKey=3, NSErrorPeerCertificateChainKey=(
"",
"",
"" ),
NSErrorClientCertificateStateKey=0, NSErrorFailingURLKey=https://xxxxxxxxxxxxx.co.uk/insertclocking, NSErrorFailingURLStringKey=https://xxxxxxxxxxxxx.co.uk/insertclocking, NSUnderlyingError=0x282a1a0d0 {Error Domain=kCFErrorDomainCFNetwork Code=-1202 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, kCFStreamPropertySSLPeerTrust=, _kCFNetworkCFStreamSSLErrorOriginalValue=-9813, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9813, kCFStreamPropertySSLPeerCertificates=(
"",
"",
"" )}}, _NSURLErrorRelatedURLSessionTaskErrorKey=( "LocalDataTask ." ), _kCFStreamErrorCodeKey=-9813, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask ., NSURLErrorFailingURLPeerTrustErrorKey=,
NSLocalizedDescription=The certificate for this server is invalid. You might be connecting to a server that is pretending to be “xxxxxxxxx.co.uk” which could put your confidential information at risk.}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post