Ajout de nouveaux SPN aux identifiants de service existants

2

Nous avons un serveur tomcat utilisant un kerberos à ressort pour authentifier les utilisateurs sur la page Web par rapport à Active Directory.

Il y a environ 25 contrôleurs de domaine.

Le site comporte deux alias DNS basés sur CNAME.

Le site possède actuellement un identifiant de service avec des SPN enregistrés pour l'enregistrement DNS A, ainsi que pour chacun des CNAME.

Bien que tout fonctionne actuellement, je ne sais pas comment changer cette configuration de manière fiable sans temps d'arrêt possible.

La raison en est que les clients cachent les tickets kerberos:

http://www.juniper.net/techpubs/en_US/uac4.2/topics/concept/user-role-active-directory-about.html

Le programme 'kerbtray.exe' est utile pour afficher et supprimer des tickets Kerberos sur le terminal. Les anciens tickets doivent être purgés du noeud final si les SPN sont mis à jour ou si les mots de passe sont modifiés (en supposant que le noeud final dispose toujours d'une copie en cache du ticket d'une requête SPNEGO antérieure vers le périphérique MAG Series. Lors du test, vous devez purger les tickets avant chaque demande d'authentification. .

Description du programme "klist" utilisé pour inspecter / supprimer les tickets mis en cache: http://technet.microsoft.com/en-us/library/hh134826.aspx

Par conséquent, si chacun des clients (utilisateurs de Windows) qui se connectent à mon serveur Web ont des tickets Kerberos qui ne sont plus valides dès que je mets à jour les noms SPN ou les mots de passe, comment puis-je m'assurer que les modifications sont transparentes? Existe-t-il des opérations pouvant être effectuées en toute sécurité? Je ne peux pas simplement demander à tous les utilisateurs d'installer klist et de supprimer leurs anciens tickets.

jmh
la source

Réponses:

1

La stratégie pour cela sur le côté unix des choses serait de garder à la fois les anciennes et les nouvelles copies de la clé dans le keytab du service. Kerberos conserve les numéros de version sur les clés et les bibliothèques Kerberos vérifient la version correcte de la clé pour la version à utiliser lors de la présentation du ticket de service.

Vous ne pouvez avoir qu'une seule version de la clé dans le KDC, mais tant que l'ancienne version et la nouvelle version de la clé se trouvent dans l'onglet du serveur, vos clients ne devraient voir aucune interruption de service. Si vous pouvez expliquer comment vous installez le clavier pour le service, je peux probablement suggérer quelque chose.

Fred le chien magique
la source
Pour charger un nouveau clavier, le nouveau est copié sur le serveur et tomcat est redémarré. Cela ne devrait être nécessaire que pour un changement de mot de passe, n'est-ce pas? Pas pour les mises à jour SPN.
Jmh
J'ai plus de 20 ans d'expérience avec Kerberos, mais uniquement du côté Unix et de l'utilisation de protocoles std tels que LDAP et Kerberos pour prétendre qu'AD n'est qu'un autre KDC. Si le changement de SPN ne nécessite pas le téléchargement d'un nouveau clavier sur le serveur tomcat, vous ne devriez pas rencontrer de problèmes. Si c'est le cas, vous devez utiliser un utilitaire pour fusionner l'ancien et le nouveau keytab en un seul.
Fred le chien magique Wonder
0

Peut-être devriez-vous tester l'ajout d'un SPN au lieu de modifier un SPN existant. Les principaux de sécurité peuvent avoir plusieurs SPN.

Greg Askew
la source