Je réponds à un défi où la protectionSpace.authenticationMethod == "NSURLAuthenticationMethodServerTrust".Rendre NSURLCredential forTrust permanent dans le trousseau
Je crée les informations d'identification pour Trust et l'ajoute au NSURLCredentialStorage.
Mais chaque fois que je redémarre l'application (en cours d'exécution dans le simulateur), je reçois à nouveau le défi. Au cours d'une session, elle ne demande qu'une seule fois car j'ai ajouté les informations d'identification forTrust au stockage. En outre, je peux voir que protectionSpace dans le stockage NSURLCredential. Mais quand je redémarre l'application c'est parti et je dois à nouveau faire confiance au serveur.
Le serveur utilise un certificat auto-signé et je suis accès via HTTPS
S'il vous plaît aider!
Merci d'avance.
"utilise un certificat auto-signé". Effectuez-vous une évaluation personnalisée de l'approbation du serveur, comme indiqué dans la note technique 2232? https://developer.apple.com/library/mac/technotes/tn2232/_index.html#//apple_ref/doc/uid/DTS40012884 – quellish
Je donne à l'utilisateur une option pour faire confiance au serveur source ou non. S'ils y croient, je crée les informations d'identification pour Trust, l'ajoute à NSCredentialStorage et en fait le fichier par défaut pour cet espace de protection. Je n'arrive tout simplement pas à trouver comment rendre cela permanent afin que la question de confiance ne se pose pas chaque fois qu'ils lancent l'application (après que celle-ci soit sortie de mémoire) – Rob
Oui, vous devez faire une évaluation de confiance personnalisée et stocker * cela *, c'est-à-dire que votre cert auto-signé doit être une ancre dans la confiance que vous stockez. – quellish