Question

Nous avons un cadre exclusif et maintenant nous voulons intégrer l'authentification par certificats SSL côté client. Quelles sont les meilleures pratiques pour mapper un certificat client à un compte utilisateur propriétaire (par exemple une simple table utilisateur dans la base de données)?

  • Enregistrer la clé publique du certificat?
  • Enregistrer émetteur et serialnumber?

Ou y at-il d'autres possibilités?

Était-ce utile?

La solution

Êtes-vous délivrer les certificats (et ont une possibilité de définir certains champs du certificat)? Est-ce que ces certificats doivent être intégrés à un environnement à l'échelle de l'ICP plus comme le courrier électronique, la signature (je veux dire que vous avez le cauchemar d'interopérabilité X.509)?

Si vous pouvez créer une autorité de certification pour les utilisateurs, et pas se soucier de systèmes étrangers, vous pouvez donner à chaque certificat client un attribut de nom commun qui associe directement à votre compte utilisateur. Ainsi, vous pouvez vérifier si le certificat client est signé par l'autorité de certification d'utilisateur et correspondre au certificat attribut CN.

Quand il n'y a qu'un nombre limité et bien connu des certificats de signature alors je vous recommande de stocker ces certificats et vérifier les certificats clients et les accepter que si elles sont signées par l'un des certificats de signature. Ensuite, vous utilisez un champ du certificat qui l'AC émettrice fixe unique pour chaque utilisateur (qui reste égal lorsque le certificat d'utilisateur est renouvelé, beaucoup de coopérations laisser le temps les certificats d'utilisateur après environ un an) pour connecter ce champ avec votre base de données utilisateur.

Si vous ne pouvez pas délivrer les certificats que vous pouvez stocker le certificat de la base de données de hachage , mais cela a l'inconvénient que, lorsqu'un certificat est à court de ce jour vous avez besoin de mettre à jour la base de données. Le hachage est unique à chaque certificat, alors que les la plupart des champs d'un certificat peut être usurpée.

Vous pouvez également consulter les listes de révocation de certificats pour les autorités de certification de signature, donc aucun utilisateur ne peut accéder à votre service avec un certificat volé.

Autres conseils

Nous stockons série et l'émetteur du certificat client DN et il correspond. Selon http://www.tectia.com/manuals/server -admin / 60 / userauth-cert.html , cela suffit pour identifier le certificat.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top