web-dev-qa-db-fra.com

Comment Chrome sait quel certificat client inviter pour un site?

Je configure l'authentification par certificat pour mon projet à l'aide de Tomcat. Cela fonctionne bien pour le client de ligne de commande tel que cURL.

J'ai de nombreux certificats clients installés dans le navigateur Chrome. Certains utilisent pour se connecter à mon site, d'autres sont utilisés à des fins différentes et ne sont pas liés à mon projet.

Chaque fois que je me connecte à mon site, Chrome présente une liste de certificats clients à choisir. Ce sont exactement les certificats que j'ai installés et pas les autres. Mes questions sont:

  1. Comment Chrome sait quels certificats clients un site doit présenter pour choisir?
  2. Tomcat stocke ces certificats clients dans son magasin de confiance. Pendant SSL hanshake, Tomcat demandera un certificat client. Demande-t-il certains certificats spécifiques qu'il connaît dans son magasin de confiance afin que Chrome sache quoi afficher?
18
System

L'authentification du certificat client est régie dans la phase de prise de contact du protocole SSL/TLS implémenté par les navigateurs.

  1. Si le serveur requiert une authentification par certificat client (elle est facultative), envoyez un message au client avec la liste des autorités de certification (CA) acceptées. Peut être annulé si le serveur accepte un certificat.

  2. Le client sélectionne les certificats installés dans le magasin de clés client qui ont été émis par l'une de ces autorités de certification et présente la liste à l'utilisateur. Dans le cas de Chrome, le navigateur sélectionne les certificats installés par l'utilisateur dans le magasin de clés du système d'exploitation.

  3. L'utilisateur choisit un certificat et le client effectue une signature avec la clé privée du certificat sur une donnée connue échangée pendant la prise de contact.

Seuls les certificats avec clé privée peuvent être sélectionnés à l'étape 2. C'est la raison pour laquelle le navigateur ne sélectionne pas les certificats des autorités de certification de confiance installées sur votre appareil. Vous ne possédez pas la clé privée

24
pedrofb