Configurer l’authentification serveur à serveur dans SharePoint dans Microsoft 365 à partir de SharePoint Server
S’APPLIQUE À :
2013
2016
2019
Subscription Edition
SharePoint in Microsoft 365
Cet article fait partie d'une feuille de route de procédures de configuration pour les solutions hybrides SharePoint. Veillez à respecter une feuille de route lorsque vous effectuez les procédures décrites dans cet article.
Notes
Nous vous recommandons d’utiliser le sélecteur d’environnement hybride SharePoint pour établir l’authentification de serveur à serveur entre SharePoint Server et SharePoint dans Microsoft 365. Si, pour une raison quelconque, vous ne pouvez pas utiliser le sélecteur d’environnement hybride, suivez les étapes décrites dans cet article pour activer l’authentification de serveur à serveur.
Configurer l’authentification de serveur à serveur
Cet article donne des conseils pour le processus de déploiement d'environnement hybride SharePoint qui intègre SharePoint Server et SharePoint dans Microsoft 365.
Conseil
Pour obtenir le résultat le plus fiable, exécutez les procédures dans l’ordre indiqué dans cet article.
Vérifier les paramètres de l’application web
Dans une solution hybride SharePoint, les utilisateurs fédérés peuvent envoyer des demandes à SharePoint dans Microsoft 365 à partir de n'importe quelle application web SharePoint Server configurée pour utiliser l'authentification Windows intégrée avec NTLM.
Par exemple, vous devez vous assurer que les sites Centre de recherche sur site que vous voulez utiliser dans votre solution sont configurés pour utiliser l'authentification Windows intégrée avec NTLM. Si ce n'est pas le cas, vous devez reconfigurer l'application web pour utiliser l'authentification Windows avec NTLM ou utiliser un site Centre de recherche sur une application web qui répond aux exigences. Vous devez également vous assurer que les utilisateurs qui s’attendent à ce que les résultats de recherche soient renvoyés SharePoint dans Microsoft 365 sont des utilisateurs fédérés.
Pour vérifier qu'une application web répond à la demande
Vérifiez que le compte d’utilisateur qui effectue cette procédure est membre du groupe SharePoint Administrateurs de batterie de serveurs.
Dans Administration centrale, sélectionnez Gestion des applications, puis Gérer les applications web.
Dans la colonne Nom, sélectionnez l'application web à vérifier, puis sélectionnez Fournisseurs d'authentification dans le ruban.
Dans la boîte de dialogue Fournisseurs d'authentification dans la colonne Zone, sélectionnez la zone à laquelle le site Centre de recherche est associé.
Dans la boîte de dialogue Modifier l'authentification, vérifiez que l'authentification Windows intégrée et NTLM sont sélectionnés, comme le montre la figure suivante.
Configurer OAuth sur HTTP (si nécessaire)
Par défaut, OAuth dans SharePoint Server requiert le protocole HTTPS. Si vous avez configuré votre application web principale de sorte qu'elle utilise le protocole HTTP au lieu du protocole SSL, vous devez activer le protocole OAuth sur HTTP sur chaque serveur web dans votre batterie de serveurs SharePoint Server.
Notes
Si vous avez configuré votre application web principale pour utiliser le protocole SSL, cette étape n’est pas requise.
Pour activer OAuth sur HTTP, exécutez les commandes suivantes avec un compte d'administrateur de batterie à partir de l'invite de commandes SharePoint 2016 Management Shell sur chaque serveur web de votre batterie SharePoint Server.
$serviceConfig = Get-SPSecurityTokenServiceConfig
$serviceConfig.AllowOAuthOverHttp = $true
$serviceConfig.Update()
Si vous avez activé OAuth sur HTTP à des fins de test, mais que vous voulez reconfigurer votre environnement pour utiliser SSL, vous pouvez désactiver OAuth sur HTTP en exécutant les commandes suivantes avec un compte d'administrateur de batterie à partir de l'invite de commandes SharePoint 2016 Management Shell sur chaque serveur web de votre batterie SharePoint Server.
$serviceConfig = Get-SPSecurityTokenServiceConfig
$serviceConfig.AllowOAuthOverHttp = $false
$serviceConfig.Update()
Configurer l’authentification de serveur à serveur entre SharePoint Server sur site et SharePoint dans Microsoft 365
Cette section vous aidera à configurer l’authentification de serveur à serveur entre :
SharePoint Server
SharePoint dans Microsoft 365
Azure Active Directory
Lors de la configuration de l'authentification de serveur à serveur pour les environnements hybrides, une relation d'approbation est créée entre votre batterie de serveurs SharePoint sur site et votre client SharePoint dans Microsoft 365, qui utilise Azure Active Directory en tant que service de signature de jetons approuvé. En ajoutant les modules et les composants logiciels enfichables PowerShell requis, ce processus peut s'effectuer dans une seule fenêtre PowerShell sur un serveur web SharePoint sur site.
Conseil
Pour conserver un enregistrement de vos étapes, des cmdlets PowerShell exécutées et de toute erreur que vous pourriez rencontrer, vous devez capturer l'intégralité du contenu de la mémoire tampon PowerShell lorsque vous avez terminé, avant de fermer la fenêtre. Ceci vous donne un historique des étapes réalisées, ce qui est utile si vous devez résoudre des problèmes ou expliquer le processus à d'autres personnes. Il est également utile d'actualiser votre mémoire si l'installation se produit en plusieurs étapes.
Voici une vue d'ensemble des procédures que vous devez exécuter dans cette section :
Installer les outils de gestion de service en ligne sur un serveur web dans votre batterie de serveurs SharePoint Server.
Configurer l’authentification de serveur à serveur.
Définir les variables à utiliser dans les étapes ultérieures.
Télécharger le certificat STS SharePoint server intégré à SharePoint dans Microsoft 365.
Ajouter un nom de principal du service (SPN) à Azure.
Inscrivez l'ID d'objet principal de l'application SharePoint dans Microsoft 365 avec SharePoint Server sur site.
Configurez un domaine d'authentification commun entre votre batterie de serveurs SharePoint Server sur site et SharePoint dans Microsoft 365.
Configurer un proxy d'application Azure Active Directory sur site.
Installer les outils de gestion de service en ligne et configurer la fenêtre Windows PowerShell
Pour continuer, vous devez installer ces outils dans un serveur web SharePoint Server sur site :
Module Azure Active Directory pour Windows PowerShell
SharePoint dans Microsoft 365 Management Shell
Le plus simple est d'effectuer cette action sur un serveur web dans votre batterie de serveurs SharePoint car il est plus facile de charger le composant logiciel enfichable Microsoft.SharePoint.PowerShell sur des serveurs web que sur des serveurs sur lesquels SharePoint Server n'est pas installé.
L'authentification à SharePoint Server, SharePoint dans Microsoft 365 et Azure Active Directory nécessite plusieurs comptes d'utilisateur. Pour plus d'informations sur la façon de déterminer les comptes à utiliser, voir Comptes nécessaires pour la configuration et les tests d'un environnement hybride.
Notes
Pour faciliter l'exécution de les étapes de cette section, nous allons ouvrir une fenêtre d'invite de commandes PowerShell sur un serveur web SharePoint Server, puis ajouter les modules et les composants logiciels enfichables qui vous permettront de vous connecter à SharePoint Server, SharePoint dans Microsoft 365 et Azure Active Directory (nous vous fournirons les étapes détaillées concernant cette procédure plus loin dans cet article). Nous laisserons ensuite cette fenêtre ouverte, car elle nous servira pour les étapes PowerShell restantes de cet article.
Pour installer les outils de gestion de service en ligne et configurer la fenêtre PowerShell :
Installez la dernière version du module Azure Active Directory pour Windows PowerShell.
Installez SharePoint Online dans Microsoft 365 Management Shell :
SharePoint dans Microsoft 365 Management Shell (version 64 bits)
Pour plus d'informations, voir Présentation de SharePoint dans Microsoft 365 Management Shell.
Ouvrez une fenêtre PowerShell.
Pour être certain de ne pas remplir la mémoire tampon et de ne perdre aucun élément de votre historique des commandes, augmentez la taille de la mémoire tampon de la fenêtre PowerShell :
Sélectionnez le coin supérieur gauche de la fenêtre PowerShell, puis Propriétés.
Dans la fenêtre Propriétés de PowerShell, sélectionnez l'onglet Disposition.
Sous Taille de la mémoire tampon écran, définissez le champ Hauteur sur 9999, puis sélectionnez OK.
Cette étape permet de charger les modules téléchargés pour que vous puissiez les utiliser dans votre sessionPowerShell. Copiez les commandes suivantes dans votre session PowerShell et appuyez sur Entrée.
Add-PSSnapin Microsoft.SharePoint.PowerShell Import-Module Microsoft.PowerShell.Utility Import-Module MSOnline -forceSi vous devez à nouveau exécuter l'une de ces étapes de configuration ultérieurement, n'oubliez pas d'exécuter à nouveau ces commandes pour charger les modules et les composants logiciels enfichables requis dans PowerShell.
Entrez les commandes suivantes pour vous connecter à SharePoint dans Microsoft 365 à partir de l’invite de commandes PowerShell :
$cred=Get-Credential Connect-MsolService -Credential $credVous êtes invité à vous connecter. Connectez-vous à l’aide du compte d’administrateur général Microsoft 365.
Laissez la fenêtre PowerShell ouverte jusqu'à ce que vous ayez effectué toutes les étapes de cet article. Vous en aurez besoin pour nombre de procédures des sections suivantes.
Configurer l’authentification de serveur à serveur (S2S)
Maintenant que vous avez installé les outils vous permettant d'administrer à distance Azure Active Directory et SharePoint dans Microsoft 365, vous êtes prêt à configurer l'authentification de serveur à serveur.
À propos des variables que vous allez créer
Cette section décrit les variables que vous allez définir dans la procédure suivante. Ces variables contiennent d’importantes informations utilisées dans la plupart des étapes de configuration restantes.
| Variable | Commentaires |
|---|---|
| $spcn | Nom de domaine racine de votre domaine public. Cette valeur ne doit pas prendre la forme d'une URL ; il doit s'agir du nom de domaine uniquement, sans aucun protocole. Par exemple, adventureworks.com. |
| $spsite | URL interne de votre application web principale sur site, telle que http://sharepoint ou https://sharepoint.adventureworks.com. Cette valeur est une URL complète utilisant le protocole adéquat ( http: // ou https:// ). Il s’agit de l’URL interne de l’application web utilisée pour la fonctionnalité hybride : Par exemple, http://sharepoint ou https://sharepoint.adventureworks.com. |
| $site | Objet de votre application web principale sur site. La commande qui remplit cette variable obtient l'objet du site spécifié dans la variable $spsite. Cette variable est remplie automatiquement. |
| $spoappid | L’ID de principal de l’application SharePoint dans Microsoft 365 est toujours 00000003-0000-0ff1-ce00-000000000000. Cette valeur générique permet d’identifier les objets SharePoint dans Microsoft 365 au sein d’une organisation Microsoft 365. |
| $spocontextID | ID de contexte (ObjectID) de votre client SharePoint dans Microsoft 365. Cette valeur est un GUID unique qui permet d'identifier votre client SharePoint dans Microsoft 365. Cette valeur est détectée automatiquement lors de l’exécution de la commande pour définir la variable. |
| $metadataEndpoint | URL utilisée par votre proxy Azure Active Directory pour se connecter à votre client Azure Active Directory. Vous n’avez pas besoin d’entrer une valeur pour cette variable. |
Étape 1 : Définir des variables
Maintenant que vous avez identifié les variables à définir, utilisez ces instructions pour les définir. Le pré-remplissage des variables les plus fréquemment utilisées devrait vous aider à effectuer les étapes restantes plus vite. Ces variables restent remplies tant que vous ne fermez pas la session PowerShell. Veillez à fournir des informations précises là où vous voyez des chevrons (< >) et supprimez toujours ces derniers avant d'exécuter la commande. Ne modifiez pas le code en dehors des chevrons.
Notes
Si vous devez à nouveau effectuer l'une de ces étapes de configuration ultérieurement, vous devez commencer par exécuter les commandes PowerShell suivantes dans cette étape pour re-remplir les variables importantes.
Copiez les déclarations de variable suivantes et collez-les dans un éditeur de texte tel que le Bloc-notes. Définissez les valeurs d'entrée propres à votre organisation. À partir de l'invite de commandes PowerShell configurée à l'aide des outils de gestion de service en ligne, exécutez les commandes.
$spcn="*.<public_root_domain_name>.com"
$spsite=Get-Spsite <principal_web_application_URL>
$site=Get-Spsite $spsite
$spoappid="00000003-0000-0ff1-ce00-000000000000"
$spocontextID = (Get-MsolCompanyInformation).ObjectID
$metadataEndpoint = "https://accounts.accesscontrol.windows.net/" + $spocontextID + "/metadata/json/1"
Après avoir rempli ces variables, vous pouvez afficher leurs valeurs en saisissant le nom de la variable dans la fenêtre PowerShell. Par exemple, si vous saisissez $metadataEndpoint, une valeur semblable à la suivante sera renvoyée :
https://accounts.accesscontrol.windows.net/00fceb75-246c-4ac4-a0ad-7124xxxxxxxx/metadata/json/1
Étape 2 : Charger le certificat STS vers SharePoint dans Microsoft 365
Dans cette étape, vous chargez le certificat STS de votre batterie de serveurs SharePoint Server vers votre client SharePoint dans Microsoft 365, ce qui permet à SharePoint Server et à SharePoint dans Microsoft 365 de se connecter et d'utiliser les applications de service de l'un et de l'autre.

Les commandes de cette étape ajoutent le certificat STS local (clé publique uniquement) à la SharePoint dans Microsoft 365 objet principal de votre organisation Microsoft 365.
À partir de l'invite de commandes PowerShell, saisissez les commandes suivantes :
$stsCert=(Get-SPSecurityTokenServiceConfig).LocalLoginProvider.SigningCertificate
$binCert = $stsCert.GetRawCertData()
$credValue = [System.Convert]::ToBase64String($binCert);
New-MsolServicePrincipalCredential -AppPrincipalId $spoappid -Type asymmetric -Usage Verify -Value $credValue
Étape 3 : Ajouter un SPN pour votre nom de domaine public sur Azure Active Directory
La prochaine étape consiste à ajouter un nom de principal du service (SPN) à votre client Azure Active Directory. Le SPN est composé de l'objet principal SharePoint dans Microsoft 365 et de l'espace de noms DNS public de votre entreprise.
Tout comme pour les SPN dans Active Directory, la création de ce SPN inscrit un objet auprès de Azure Active Directory. Celui-ci est alors utilisé pour prendre en charge l'authentification mutuelle entre SharePoint Server et le client SharePoint dans Microsoft 365. La syntaxe de base du SPN est la suivante :
<service type>/<instance name>
Où :
<service type> est l'objet principal SharePoint dans Microsoft 365 (identique pour tous les clients SharePoint dans Microsoft 365).
<instance name> correspond à l'URL de l'espace de noms de domaine DNS public de votre entreprise, qui est toujours exprimé sous la forme d'un caractère générique (même si le certificat SSL de canal sécurisé est un certificat SAN).
Voici un exemple :
00000003-0000-0ff1-ce00-000000000000/*.<public domain name>.com
Si le nom commun de votre certificat est sharepoint.adventureworks.com, la syntaxe du SPN ressemblera à ce qui suit :
00000003-0000-0ff1-ce00-000000000000/*.adventureworks.com
L’utilisation d’une valeur générique permet à SharePoint dans Microsoft 365 de valider les connexions avec n’importe quel hôte dans ce domaine. Cela est utile si vous avez besoin de changer le nom d’hôte de votre point de terminaison externe (si votre topologie en inclut un) ou de votre application web SharePoint Server dans le futur.
Pour ajouter le SPN à Azure Active Directory, entrez les commandes suivantes dans l’invite de commandes du module Azure Active Directory pour Windows PowerShell.
$msp = Get-MsolServicePrincipal -AppPrincipalId $spoappid
$spns = $msp.ServicePrincipalNames
$spns.Add("$spoappid/$spcn")
Set-MsolServicePrincipal -AppPrincipalId $spoappid -ServicePrincipalNames $spns
Pour valider la définition du SPN, saisissez les commandes suivantes dans l'invite de commandes Module Azure Active Directory pour Windows PowerShell.
$msp = Get-MsolServicePrincipal -AppPrincipalId $spoappid
$spns = $msp.ServicePrincipalNames
$spns
Vous devez voir la liste actuelle des SPN pour SharePoint dans Microsoft 365 dans votre organisation Microsoft 365, et l’un des SPN doit inclure votre nom de domaine racine public, précédé de l’ID principal de l’application SharePoint dans Microsoft 365. Il s’agit d’une inscription générique qui doit ressembler à l’exemple suivant :
00000003-0000-0ff1-ce00-000000000000/*.<public domain name>.com
Il doit s'agir de l'unique SPN de la liste incluant votre nom de domaine racine public.
Étape 4 : Inscrivez l'ID d'objet principal de l'application SharePoint dans Microsoft 365 avec SharePoint Server
Cette étape permet d'inscrire l'ID d'objet principal de l'application SharePoint dans Microsoft 365 auprès du service de gestion de l'application SharePoint dans Microsoft 365 sur site, qui permet à SharePoint Server de s'authentifier sur SharePoint dans Microsoft 365 à l'aide d'OAuth.
À partir de l'invite de commandes PowerShell, saisissez les commandes suivantes :
$spoappprincipalID = (Get-MsolServicePrincipal -ServicePrincipalName $spoappid).ObjectID
$sponameidentifier = "$spoappprincipalID@$spocontextID"
$appPrincipal = Register-SPAppPrincipal -site $site.rootweb -nameIdentifier $sponameidentifier -displayName "SharePoint"
Pour valider cette étape, saisissez la variable $appPrincipal à partir de l'invite de commandes PowerShell.
$appPrincipal | fl
La sortie attendue est une description du principal d'application inscrit avec le nom SharePoint Online, semblable à ceci :

Étape 5 : Définir le domaine d’authentification SharePoint dans Microsoft 365
Cette étape définit le domaine d’authentification de votre batterie SharePoint Server sur l’ID de contexte de l’organisation Microsoft 365.
À partir de l’invite de commandes PowerShell, entrez la commande suivante :
Set-SPAuthenticationRealm -realm $spocontextID
Pour valider cette étape, entrez les commandes suivantes à partir de l’invite de commandes PowerShell :
$spocontextID
Get-SPAuthenticationRealm
La sortie de chacune de ces commandes est le GUID qui représente l'ID de contexte du client SharePoint dans Microsoft 365. Ces GUID doivent être identiques.
Important
Si vous avez configuré des scripts d'installation de batterie de serveurs qui spécifient la valeur de domaine d'authentification de batterie de serveurs, vous devez mettre à jour les scripts d'installation avec cette nouvelle valeur avant de les exécuter une nouvelle fois. > Pour plus d'informations sur les exigences associées aux valeurs de domaine dans les scripts d'installation de batterie de serveurs, voir Planifier l'authentification de serveur à serveur dans SharePoint Server. Cette batterie de serveurs SharePoint étant désormais configurée pour participer à la configuration hybride, la valeur de domaine d'authentification de batterie SharePoint doit toujours correspondre à l'identificateur de contexte de client. Si vous modifiez cette valeur, la batterie ne participera plus à la fonctionnalité hybride.
Étape 6 : Configurer un proxy local pour Azure Active Directory
À cette étape, vous allez créer un service proxy Azure Active Directory dans la batterie de serveurs SharePoint Server. Cette action active Azure Active Directory en tant qu'émetteur de jeton approuvé qui sera utilisé par SharePoint Server pour signer et authentifier les jetons de revendication à partir de SharePoint dans Microsoft 365.
Dans l’invite de commandes PowerShell, entrez les commandes suivantes.
New-SPAzureAccessControlServiceApplicationProxy -Name "ACS" -MetadataServiceEndpointUri $metadataEndpoint -DefaultProxyGroup
New-SPTrustedSecurityTokenIssuer -MetadataEndpoint $metadataEndpoint -IsTrustBroker:$true -Name "ACS"
Pour valider la commande New-SPAzureAccessControlServiceApplicationProxy:
Parcourez le site web Administration centrale de SharePoint 2016 et sélectionnez Sécurité > Sécurité générale > Gérer la relation d’approbation.
Vérifiez qu’il existe une entrée dont le nom commence par ACS, puis entrez Consommateur de services approuvés.
Pour valider cette étape, à partir de l’invite de commandes PowerShell, saisissez la commande suivante.
Get-SPTrustedSecurityTokenIssuerLa sortie attendue est une description de l'émetteur de jeton approuvé de la batterie où la valeur de la propriété RegisteredIssuerName est la suivante :
00000001-0000-0000-c000-000000000000@<context ID>Où :
- <context ID> correspond à l'ID de contexte de votre client SharePoint dans Microsoft 365, qui est la valeur dans la variable $spocontextID.
Étape 7 : Mettre à jour la recherche fédérée hybride
À compter d’octobre 2021, une étape supplémentaire est nécessaire pour ajuster une configuration hybride SharePoint existante afin de l’utiliser et de l’authentifier à l’aide du nouveau moteur Microsoft 365 recherche. Pour plus d’informations sur cette modification, consultez le billet de 270671.
Le script doit être exécuté sur un serveur sur lequel SharePoint local est installé (2013, 2016 ou 2019). Le script tente d’installer les dépendances de module requises (MSOnline, AzureAD) sur le serveur où il est exécuté.
Téléchargez le script de configuration.
À partir du répertoire où le script a été téléchargé, exécutez le script à l’aide SharePoint compte Administrateur de batterie local, à l’aide de la commande suivante :
Update-FederatedHybridSearchForM365.ps1 -HybridWebApp YourHybridWebApplication -ForcePour plus d’informations sur les valeurs des paramètres, exécutez la commande suivante :
Get-Help .\Update-FederatedHybridSearchForM365.ps1Lorsque vous y sont invités, connectez-vous Microsoft 365 compte Administrateur général.
Attendez la fin de l’exécution du script . en cas de problème, contactez le Support Microsoft.
Après l’exécution du script, les utilisateurs ne voient aucune modification lorsque cette modification est implémentée.
Validation et étapes suivantes
Après avoir terminé les tâches de cette rubrique et ses étapes de validation, vérifiez votre SSO et la configuration de la synchronisation d’annuaires.
Pour pouvoir disposer d'un historique des étapes effectuées, vous devez capturer l'intégralité du contenu de la mémoire tampon PowerShell dans un fichier. Il s'agit d'une étape cruciale si vous devez référencer votre historique de configuration à des fins de résolution des problèmes ou pour toute autre raison. Vous pourrez également reprendre là où vous en étiez si la configuration s'étend sur plusieurs jours ou implique plusieurs personnes.
Une fois que vous avez terminé et validé les tâches de configuration dans cette rubrique, poursuivez votre feuille de route de configuration.