Professional Documents
Culture Documents
P a s c a l G a c h e t –E I V D
pascal.gachet@eivd.ch
mai 2002
Résumé
Ce document décrit les différences qui interviennent au niveau protocolaire entre une
version de kerberos 5 standard et une version mettant en œuvre Pkinit, dans le cas
très concret de Microsoft Windows 2000 serveur. Ce document est prévu pour des
lecteurs qui ont déjà une bonne connaissance de protocole Kerberos.
Pkinit
Un des principaux objectifs du standard Pkinit est de permettre une interaction entre
une infrastructure à clés publique PKI et le protocole de gestion de clé Kerberos.
Les utilisateurs du domaine seront en mesure de s’authentifier auprès du KDC
Microsoft 2000 en utilisant un certificat x509 à la place du classique login et mot de
passe.
AS_Req
AS
AS_Rep
TGS
Client
W2K KDC
Le client désirant obtenir un ticket TGT pour le serveur TGS 3, doit en premier lieu
s’authentifier après du service d’authentification AS.
Cette authentification s’effectue dans le message AS_req. La méthode
d’authentification peut varier suivant les implémentations du protocole, les différentes
alternatives sont décrites dans le RFC 1510.
1
Ticket Granting Ticket
2
Autentication Service
3
Ticket Granting Service
De manière générique, l’authentification suit le déroulement suivant. Le message
AS_req contient deux informations : d’une part le nom de l’utilisateur et le nom du
service auquel il désire accéder, dans ce cas il s’agit du TGS ; et d’autre part une
information qui permet au AS de s’assurer que le client connaît son mot de passe.
Le protocole Pkinit ne modifie que les messages contenus dans les champs pré-
authentification des messages échangés entre le client et le service d’authentification
AS.
Dans un système Pkinit, le mécanisme d’authentification suit le déroulement
suivant :
Le client envoie toujours un message AS-Req au serveur AS, ce message contient
dans le champ pré-authentification une liste de certificats de confiance, un
authentificateur signé (avec sa clé privée), et le certificat client.
L’authentificateur dépend de l’implémentation de kerberos, il contient généralement
le nom du KDC, une estampille temporelle et un Nonce.
Le serveur AS répond par un message AS-rep, ce message contient dans le champ
pré-authentification, le certificat serveur, une clé utilisée pour déchiffrer la partie
chiffrée du message AS-req, cette clé de déchiffrement étant bien entendu chiffrée
avec la clé publique du client.
Si en apparence le protocole Kerberos n’a été que peu affecté par la modification de la
procédure d’authentification, le mécanisme profond de contrôle de Kerberos est
passablement modifié. La politique de contrôle pour obtenir les credentials ne se base
plus sur un chiffrage symétrique et donc sur une connaissance des mots de passe
utilisateur, mais l’authentification intègre tous les mécanismes de contrôle PKI
nécessaires à une vérification en règle des certificats présentés, c’est-à-dire
vérification de la signature, et contrôle des CRL, mécanismes qui interviennent dans
une architecture à tiers de confiance.