mit habe ich den folgenden Code (schnelle Umsetzung):Wie nehme ich ein selbst signiertes SSL-Zertifikat iOS 7s NSURLSession
func connection(connection: NSURLConnection, canAuthenticateAgainstProtectionSpace protectionSpace: NSURLProtectionSpace) -> Bool
{
return protectionSpace.authenticationMethod == NSURLAuthenticationMethodServerTrust
}
func connection(connection: NSURLConnection, didReceiveAuthenticationChallenge challenge: NSURLAuthenticationChallenge)
{
if challenge.protectionSpace.authenticationMethod == NSURLAuthenticationMethodServerTrust
{
if challenge.protectionSpace.host == "myDomain"
{
let credentials = NSURLCredential(forTrust: challenge.protectionSpace.serverTrust)
challenge.sender.useCredential(credentials, forAuthenticationChallenge: challenge)
}
}
challenge.sender.continueWithoutCredentialForAuthenticationChallenge(challenge)
}
Es funktioniert perfekt in iOS 8.x aber nicht funktioniert iOS 7 .x In iOS 7.x habe ich Fehler:
NSURLConnection/CFURLConnection HTTP Last fehlgeschlagen (kCFStreamErrorDomainSSL, -9813)
Jede Idee? danke !!!
edwardmp Dank, funktioniert perfekt: D –
Ist das überhaupt sicher ohne öffentlichen Schlüssel Pinning? Soweit ich sehen kann, überprüfen Sie nicht das Zertifikat entspricht, was es sollte –
Wie können Sie die Übereinstimmungen des Zertifikats überprüfen, wenn Sie keine öffentlichen Schlüssel Pinning verwenden? Key-Pinning ist nicht erforderlich, aber ich empfehle es, das ist, warum ich den Link an der Unterseite zu einem Snippet enthalten .. – edwardmp