Le serveur CardDAV auquel j'essaie de me connecter utilise un certificat auto-signé. Malheureusement, je ne peux rien y faire.
Dans les versions précédentes d'OS X, lorsque je me connectais à ce serveur, le système me demandait si je voulais me connecter en utilisant ce certificat non sécurisé. Je pouvais accepter et continuer.
En essayant la même chose dans la version actuelle d'OS X, cela ne fonctionne pas. Le fichier Contacts.app ne montre qu'un problème de connexion.
En regardant les journaux dans Console, j'ai trouvé cette erreur :
02/12/15 00:55:39,637 Contacts[39186]: [CardDAVPlugin-ERROR] -getPrincipalInfo:[_controller discoverServer https://user@host:port(null)]
Error Domain=NSURLErrorDomain
Code=-1200
"An SSL error has occurred and a secure connection to the server cannot be made."
UserInfo={
_kCFStreamErrorCodeKey=-9801,
NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?
}
Pas d'alerte, pas de demande de procédure de toute façon.
J'ai pensé que je pourrais télécharger le certificat, l'ajouter au trousseau de clés et définir la confiance par défaut sur "Always Trust".
echo -n | openssl s_client -connect host:port | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > carddav.cer
J'ai obtenu le certificat, je l'ai ajouté au trousseau de clés, j'ai défini la confiance et j'ai réessayé - c'est la poisse : Même erreur à nouveau et toujours pas de dialogue de confirmation.
Maintenant, ma question est la suivante : existe-t-il un moyen de permettre à Contacts.app de se connecter à mon serveur ou de ramener la boîte de dialogue de confirmation ?
EDIT
Comme demandé, voici les détails de ma connexion SSL :
CONNECTED(00000003)
depth=0 CN = , O = , OU = , ST = , C = , L = , emailAddress =
verify error:num=18:self signed certificate
verify return:1
depth=0 CN = , O = , OU = , ST = , C = , L = , emailAddress =
verify return:1
---
Certificate chain
0 s:/CN=/O=/OU=/ST=/C=/L=/emailAddress=
i:/CN=/O=/OU=/ST=/C=/L=/emailAddress=
---
Server certificate
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
subject=/CN=/O=/OU=/ST=/C=/L=/emailAddress=
issuer=/CN=/O=/OU=/ST=/C=/L=/emailAddress=
---
No client certificate CA names sent
---
SSL handshake has read 1198 bytes and written 658 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : SSLv3
Cipher : AES256-SHA
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1449069604
Timeout : 300 (sec)
Verify return code: 18 (self signed certificate)
---
DONE