J'ai lutté avec les noms des principes de service à quelques reprises maintenant et l' explication de Microsoft n'est tout simplement pas suffisante. Je configure une application IIS pour fonctionner sur notre domaine et il semble que certains de mes problèmes sont liés à mon besoin de configurer des SPN spécifiques http sur le compte de service Windows qui exécute le pool d'applications hébergeant mon site.
Tout cela m'a fait réaliser que je ne comprends tout simplement pas complètement la relation entre les types de services (MSSQL, http, hôte, termsrv, wsman, etc.), l'authentification Kerberos, les comptes d'ordinateurs Active Directory (PCName $), les comptes de services Windows, les SPN et le compte d'utilisateur que j'utilise pour essayer d'accéder à un service.
Quelqu'un peut-il expliquer les noms de principe du service Windows (SPN) sans simplifier à l'excès l'explication?
Points bonus pour une analogie créative qui résonnerait avec un administrateur / développeur système moyennement expérimenté.
la source
Réponses:
Un nom de principal de service est un concept de
Kerberos
. C'est un identifiant pour un service particulier offert par un hôte particulier au sein d'un domaine d'authentification. La forme courante des SPN estservice class
/fqdn
@REALM
(par exempleIMAP/[email protected]
). Il y a aussi des noms UPN qui identifient les utilisateurs, sous forme deuser
@REALM
(ouuser1
/user2
@REALM
, qui identifie un parle-pour la relation). Leservice class
peut être vaguement considéré comme le protocole du service. La liste des classes de service intégrées à Windows est répertoriée dans cet article de Microsoft .Chaque SPN doit être enregistré dans le
REALM
s » Key Distribution Centre (KDC) et a émis une clé de service . L'setspn.exe
utilitaire, disponible dans un\Support\Tools
dossier sur le support d'installation de Windows ou en téléchargement du Kit de ressources, manipule les affectations de SPN à l'ordinateur ou à d'autres comptes dans l'AD.Lorsqu'un utilisateur accède à un service qui utilise Kerberos pour l'authentification (un service "Kerberized"), il présente un ticket chiffré obtenu à partir de KDC (dans un environnement Windows un contrôleur de domaine Active Directory). Le ticket est crypté avec la clé de service . En déchiffrant le ticket, le service prouve qu'il possède la clé pour le SPN donné. Les services exécutés sur les hôtes Windows utilisent la clé associée au compte d'ordinateur AD, mais pour être conformes au protocole Kerberos, les SPN doivent être ajoutés à Active Directory pour chaque service kerberized exécuté sur l'hôte - à l'exception des SPN intégrés mentionnés ci-dessus. Dans Active Directory, les SPN sont stockés dans l'
servicePrincipalName
attribut de l'objet ordinateur de l'hôte.Pour plus d'informations, voir: article Microsoft TechNet sur SPN , FAQ Kerberos de Ken Hornstein
la source
La réponse de yarek était excellente, et je l'ai votée, mais je voulais également vous donner un peu plus d'informations spécifiques à Windows sur le sujet, ou plutôt du point de vue de quelqu'un qui est plus familier avec AD que Kerberos en général, juste car c'est un sujet qui m'intéresse beaucoup.
J'avais l'impression que ce type avait fait un excellent travail pour l'expliquer, et je vous recommande de lire son article, mais voici un paragraphe particulièrement concis à droite de votre question:
L'article complet est ici: http://blogs.technet.com/b/askds/archive/2008/03/06/kerberos-for-the-busy-admin.aspx
la source