SharePoint
Déployer Kerberos sur SharePoint On-Premise : SPN, AD, IIS et GPO

Déployer Kerberos sur SharePoint On-Premise : SPN, AD, IIS et GPO

Déployer Kerberos sur SharePoint On-Premise : SPN, AD, IIS et GPO

Mettre en place l'authentification Kerberos pour une application Web SharePoint On-Premise est souvent redouté par les administrateurs, car cela implique de configurer plusieurs briques du système d'information (SharePoint, AD, DNS, IIS et les postes clients).

Cependant, c'est la méthode la plus sécurisée et la plus performante. Voici un guide pas à pas pour configurer correctement l'authentification Kerberos, de la création de l'application Web jusqu'au déploiement de la GPO sur les postes de vos utilisateurs.

Étape 1 : Configurer l'application Web dans SharePoint

Tout commence dans l'Administration Centrale de SharePoint. Lors de la création (ou de la modification de l'authentification) de votre application Web, appliquez ces paramètres :

  1. Cochez l'option Enable Windows Authentication (Activer l'authentification Windows).

  2. Sélectionnez Negotiate (Kerberos) au lieu de NTLM.

  3. Prérequis réseau : Assurez-vous d'avoir créé un enregistrement DNS de type A (ex: portal.contoso.com) qui pointe vers l'adresse IP de votre serveur (ou de votre Load Balancer).

Étape 2 : Créer les SPN (Service Principal Names)

C'est une étape fondamentale : vous devez lier l'URL de votre site au compte de service Active Directory qui fait tourner le pool d'application (App Pool) dans IIS.

Pourquoi est-ce indispensable ? Sans la création d'un SPN, l'onglet "Délégation" n'apparaîtra tout simplement pas sur le compte de service dans l'Active Directory.

Ouvrez une invite de commandes (en tant qu'administrateur) et lancez les commandes suivantes :

setspn -S HTTP/nom-du-site domaine\compte_de_service
setspn -S HTTP/nom-du-site.domaine.com domaine\compte_de_service
 
Note : Si votre site utilise un port spécifique (par exemple 8080), vous devez impérativement l'ajouter au SPN, comme ceci : HTTP/nom-du-site:8080.

Étape 3 (Optional) : Configurer la Délégation dans l'Active Directory (AD)

(Cette étape est particulièrement cruciale si votre ferme SharePoint comporte plusieurs serveurs ou si vous interrogez des bases de données externes via l'identité de l'utilisateur).

Une fois les SPN créés, rendez-vous sur votre contrôleur de domaine :

  1. Ouvrez la console Utilisateurs et ordinateurs Active Directory.

  2. Trouvez le compte de service lié à votre pool d'application IIS.

  3. Allez dans le nouvel onglet Délégation (qui vient d'apparaître grâce à l'étape précédente).

  4. Cochez l'option : "N'approuver cet utilisateur que pour la délégation aux services spécifiés".

  5. Sélectionnez en dessous : "Utiliser tout protocole d'authentification" (ce paramètre est vital, car il permet la transition de protocole).

  6. Cliquez sur Ajouter, recherchez votre compte de service et sélectionnez les services HTTP que vous venez de créer.

Étape 4 : Paramétrer IIS (Internet Information Services)

Sur votre serveur front-end SharePoint, ouvrez le Gestionnaire IIS pour affiner la configuration de l'authentification :

  1. Sélectionnez votre site Web SharePoint, puis ouvrez Authentification > Authentification Windows.

  2. Dans le volet de droite, cliquez sur Fournisseurs. Assurez-vous que Negotiate se trouve tout en haut de la liste (au-dessus de NTLM).

  3. Toujours dans le volet de droite, cliquez sur Paramètres avancés. Appliquez strictement ces deux réglages :

    • Extended Protection (Protection étendue) : Off (Désactivé).

    • Enable Kernel-mode authentication (Activer l'authentification en mode noyau) : DÉCOCHÉ. (C'est crucial pour que Kerberos fonctionne avec les comptes de service personnalisés dans SharePoint).

Étape 5 : Configurer la GPO pour la Zone d'Intranet

C'est l'étape que beaucoup oublient. Elle est pourtant vitale : elle force les navigateurs des utilisateurs à considérer votre site SharePoint comme une zone de confiance (Intranet), ce qui active l'envoi automatique du ticket Kerberos lors de la connexion.

1. Création de l'objet GPO

  • Ouvrez la console de Gestion de stratégie de groupe (GPMC) sur votre contrôleur de domaine.

  • Faites un clic droit sur l'Unité d'Organisation (OU) contenant vos ordinateurs ou utilisateurs.

  • Créez une nouvelle GPO (ex: SharePoint-Kerberos-SITES).

2. Édition des paramètres

Modifiez la GPO et naviguez vers le chemin suivant : Configuration utilisateur > Modèles d'administration > Composants Windows > Internet Explorer > Panneau de configuration Internet > Page Sécurité.

Cherchez le paramètre nommé : Liste des attributions de sites aux zones.

3. Configuration des URLs

  • Activez la stratégie, puis cliquez sur le bouton Afficher....

  • Dans la colonne Nom de la valeur, saisissez l'URL de votre site (ex: http://mon-sharepoint.domaine.com ou https://*.domaine.com).

  • Dans la colonne Valeur, saisissez le chiffre 1.

Pourquoi le chiffre "1" ? Ce tableau n'accepte que des valeurs numériques strictes :

  • 1 = Intranet local (Requis pour que le ticket Kerberos soit transmis à SharePoint)

  • 2 = Sites de confiance

  • 3 = Zone Internet

  • 4 = Zone Sites sensibles

L'étape de validation finale

Une fois la configuration terminée, il est temps de tester depuis un poste client.

  1. Forcez l'application de la GPO sur le PC de test en ouvrant une invite de commandes et en tapant : gpupdate /force

  2. Ouvrez Microsoft Edge ou Google Chrome, allez dans les paramètres réseau/système et vérifiez que votre URL apparaît bien dans la zone Intranet local.

  3. Videz vos tickets Kerberos existants avec la commande : klist purge

  4. Accédez à votre site SharePoint via le navigateur.

  5. Tapez ensuite klist dans l'invite de commandes. Vous devriez voir un ticket Kerberos généré spécifiquement pour le service HTTP/votre-site-sharepoint. Si c'est le cas, félicitations, Kerberos est pleinement opérationnel !

MAKHZOUM Hussein
Auteur
MAKHZOUM Hussein
Consultant Cloud & Infrastructure Engineer
Voir le profil

Articles similaires