Autorisez le Microsoft SharePoint Online connecteur à analyser vos sites et collections de sites en accordant des autorisations FullControl d’API SharePoint spécifiques au site à l’application OAuth 2.0 enregistrée Microsoft Entra pour le connecteur.
Avant de commencer
PowerShell 7.0 ou une version ultérieure compatible doit être installé.
Vous devez disposer des privilèges ou des autorisations appropriés pour modifier les autorisations de
l’application cible, qui est l’application
Microsoft Entra OAuth 2.0 qui permet
Microsoft SharePoint Online au connecteur de contenu externe de s’authentifier et d’accéder au contenu de votre système source. Ces privilèges et autorisations dépendent du modèle d’authentification que vous souhaitez utiliser lors de la configuration de l’accès au site pour l’application cible :
- Pour utiliser la connexion interactive basée sur un navigateur, votre Microsoft Entra compte doit disposer de privilèges d’administration.
-
Pour utiliser l’authentification du principal de service, vous avez besoin d’un principal de service pour une
Microsoft Entra application disposant de l’autorisation d’application d’API Sites.FullControl.All
Microsoft Graph accordée par un
Microsoft Entra administrateur. Cette
application principale de service est distincte de l’application cible. Vous avez également besoin de l’un des éléments suivants :
- Pour l’authentification du principal de service basée sur un certificat, vous avez besoin du certificat et de la clé privée de votre application principale de service au format PFX.
Remarque :
Si vous ne disposez que du certificat et de la clé privée de votre application principale de service dans un fichier Java KeyStore (JKS), vous pouvez convertir ce fichier au format PFX à l’aide de cette commande Java keytool :
keytool -importkeystore -srckeystore <your-keystore>.jks -destkeystore certificate.pfx -deststoretype PKCS12
-srcalias <your-alias> -deststorepass <your-pfx-password> -destkeypass <your-pfx-password>
Dans cette commande, remplacez
<votre-magasin de clés> et
<votre-alias> par le nom et l’alias du fichier JKS existant. Remplacez
votre-pfx-mot de passe par le mot de passe que vous souhaitez spécifier pour le fichier de sortie PFX.
Pour plus d’informations sur l’utilitaire Java keytool, reportez-vous à la section https://docs.oracle.com/en/java/javase/21/docs/specs/man/keytool.html.
- Pour l’authentification du principal de service basée sur le secret client, vous avez besoin du secret client de votre application principal de service. Si vous n’avez pas le secret client, demandez-le à votre Microsoft administrateur Entra.
Rôle requis : aucun
Pourquoi et quand exécuter cette tâche
Cette tâche n’est requise que si vous spécifiez l’autorisation d’API SharePoint Sites.Selected au lieu de l’autorisation Sites.FullControl.All lors de la configuration de l’application OAuth 2.0 enregistrée
Microsoft Entra pour le
Microsoft SharePoint Online connecteur.
Par défaut, les administrateurs système source accordent l’autorisation d’API SharePoint Sites.FullControl.All à l’application OAuth 2.0 enregistrée Microsoft Entra pour le Microsoft SharePoint Online connecteur. Cette autorisation permet au connecteur de lire le contenu, les métadonnées et les informations de sécurité pour tous les types de contenu dans tous les sites du système source et toutes les collections de sites.
Si les pratiques de sécurité de votre organisation ne permettent pas d’accorder l’autorisation Sites.FullControl.All, vous pouvez accorder l’autorisation d’API SharePoint Sites.Selected à l’application OAuth 2.0. Lorsque cette autorisation est accordée, le connecteur ne peut lire le contenu, les Microsoft SharePoint Online métadonnées et les informations de sécurité que pour les sites et collections de sites pour lesquels l’application OAuth 2.0 dispose de l’autorisation FullControl.
Un administrateur système source doit accorder l’autorisation FullControl pour chaque site ou collection de sites que vous souhaitez que le Microsoft SharePoint Online connecteur puisse analyser. Si vous souhaitez empêcher le connecteur d’analyser un site ou une collection de sites, vous pouvez révoquer une autorisation FullControl précédemment accordée pour ce site ou cette collection de sites.
Procédure
-
Importez le module PowerShell SelectedSiteAppPermissionManager sur votre système local.
-
Téléchargez l’archive du module PowerShell SelectedSiteAppPermissionManager à partir de l’article KB2741707 dans la Now Support base de connaissances.
-
Extrayez le contenu de l’archive téléchargée dans un répertoire.
-
Démarrez une session PowerShell et accédez au répertoire dans lequel vous avez extrait le contenu de l’archive.
-
Assurez-vous que la dernière version du Kit de développement logiciel (SDK) PowerShell Microsoft Graph est installée en exécutant ces commandes PowerShell :
Install-Module -Name Microsoft.Graph -Scope CurrentUser
Update-Module -Name Microsoft.Graph -Force -Scope CurrentUser
-
Affichez les chemins d’accès de vos modules PowerShell en exécutant cette commande PowerShell :
$env:PSModulePath -split [System.IO.Path]::PathSeparator
-
Copiez le dossier du module SelectedSiteAppPermissionManager de l’archive téléchargée dans l’un de vos chemins d’accès de module PowerShell en exécutant cette commande PowerShell, en remplaçant <PowerShell-module-path> par l’un des chemins indiqués à l’étape 1.e.
Copy-Item -Path "SelectedSiteAppPermissionManager" -Destination "<PowerShell-module-path>" -Recurse
Par exemple, pour copier le dossier module dans votre dossier de modules personnels, vous pouvez exécuter cette commande :
Copy-Item -Path "SelectedSiteAppPermissionManager" -Destination "$HOME\Documents\PowerShell\Modules" -Recurse
-
Importez le module SelectedSiteAppPermissionManager en exécutant cette commande PowerShell :
Import-Module SelectedSiteAppPermissionManager
-
Vérifiez que le module SelectedSiteAppPermissionManager est correctement importé en exécutant cette commande PowerShell :
Get-Module SelectedSiteAppPermissionManager
La commande doit afficher des informations sur le module SelectedSiteAppPermissionManager, y compris sa version et les commandes prises en charge.
-
Copiez l’un des exemples de fichiers de configuration au format JSON trouvés dans le répertoire SelectedSiteAppPermissionManager\Config dans un nouveau fichier my-config.json , en fonction de la méthode d’authentification que vous souhaitez utiliser lors de la configuration de l’accès au site :
- Pour utiliser l’authentification interactive dans le navigateur, copiez app-config-interactive.example.json dans my-config.json.
- Pour utiliser l’authentification principale du service avec un secret client, copiez app-config.client-secret.example.json dans my-config.json.
- Pour utiliser l’authentification principale du service avec un certificat au format PFX, copiez app-config.certificate.example.json dans my-config.json.
-
Dans un éditeur de texte, modifiez les paires clé-valeur littérales de l’objet JSON de votre fichier my-config.json pour qu’elles correspondent à la configuration de votre Microsoft Entra application.
| Clé littérale d’objet JSON |
Valeur |
| ServicePrincipal.Authentification.Certificat.Mot de passe |
Mot de passe du certificat au format PFX utilisé pour l’authentification du principal du service. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un certificat qui a un mot de passe. Si votre certificat n’a pas de mot de passe, omettez cette paire clé-valeur.
Type : chaîne
|
| ServicePrincipal.Authentication.Certificat.Chemin d’accès |
Chemin d’accès relatif à un fichier de certificat au format PFX contenant le certificat et la clé privée de votre application principale de service dans Microsoft Entra. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un certificat.
Type : chaîne
|
| ServicePrincipal.Authentication.Secret |
Secret client pour votre application principale de service dans Microsoft Entra. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un secret client.
Type : chaîne
|
| ServicePrincipal.Authentication.Type |
Type d’authentification à utiliser pour votre principal de service. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un certificat ou un secret client.
Type : choix
Valeurs prises en charge :
- Certificate: authentifiez-vous à l’aide d’un certificat au format PFX.
- Secret: authentifier à l’aide d’un secret client.
|
| ServicePrincipal.ClientId |
ID (client) de l’application pour votre application principale de service dans Microsoft Entra. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un certificat ou un secret client.
Type : chaîne
|
| ServicePrincipal.TenantId |
ID (locataire) du répertoire de votre application principale de service dans Microsoft Entra. Vous n’avez besoin de cette paire clé-valeur que si vous utilisez l’authentification principale du service avec un certificat ou un secret client.
Type : chaîne
|
| TargetApp.DisplayName |
Nom d’affichage de l’application OAuth 2.0 enregistrée pour Microsoft Entra le Microsoft SharePoint Online connecteur. Pour en savoir plus sur cette application, reportez-vous à la section Configurer Microsoft SharePoint Online pour l’indexation de contenu externe.
Type : chaîne
|
| TargetApp.Id |
ID (client) de l’application Microsoft Entra OAuth 2.0 enregistrée pour le Microsoft SharePoint Online connecteur. Pour en savoir plus sur cette application, reportez-vous à la section Configurer Microsoft SharePoint Online pour l’indexation de contenu externe.
Type : chaîne
|
Exemple de configuration pour l’authentification interactive :
{
"TargetApp": {
"Id": "your-application-id",
"DisplayName": "Your Application Name"
}
}
Exemple de configuration pour l’authentification principale du service avec certificat au format PFX :
{
"TargetApp": {
"Id": "your-application-id",
"DisplayName": "Your Application Name"
},
"ServicePrincipal": {
"ClientId": "your-service-principal-id",
"TenantId": "your-tenant-id",
"Authentication": {
"Type": "Certificate",
"Certificate": {
"Path": "path/to/certificate.pfx",
"Password": "pfx-password"
}
}
}
}
Exemple de configuration pour l’authentification principale du service avec le secret client :
{
"TargetApp": {
"Id": "your-application-id",
"DisplayName": "Your Application Name"
},
"ServicePrincipal": {
"ClientId": "your-service-principal-id",
"TenantId": "your-tenant-id",
"Authentication": {
"Type": "Secret",
"Secret": "your-client-secret"
}
}
}
- Facultatif :
Créez un fichier de liste de sites avec toutes les Microsoft SharePoint Online URL de sites et de collections de sites que vous souhaitez utiliser pour les opérations en bloc.
-
Dans un éditeur de texte, créez un fichier appelé sitelist.txt.
-
Renseignez le nouveau fichier sitelist.txt avec les URL de tous les sites et collections de sites pour lesquels Microsoft SharePoint Online vous souhaitez afficher ou modifier les autorisations, une par ligne.
Par exemple, si vous souhaitez afficher ou modifier les autorisations de deux sites à la fois, votre fichier pourrait ressembler à ceci :
https://example.sharepoint.com/sites/site1
https://example.sharepoint.com/sites/site2
-
Pour afficher les autorisations d’application existantes pour les sites et collections de sites spécifiés Microsoft SharePoint Online , exécutez cette commande PowerShell :
Get-SharePointAppPermission -SiteUrls "https://example.sharepoint.com/sites/site1","https://example.sharepoint.com/sites/site2" -ConfigFile "./my-config.json"
Si vous avez un fichier de liste de sites, vous pouvez le spécifier avec l’argument
-SiteListFile (en remplaçant l’argument
-SiteURLs ) :
Get-SharePointAppPermission -SiteListFile "./sitelist.txt" -ConfigFile "./my-config.json"
Important : Si vous utilisez l’authentification principale du service, ajoutez l’argument -UseServicePrincipal à votre ligne de commande.
-
Pour ajouter des autorisations FullControl à des sites et collections de sites spécifiés Microsoft SharePoint Online , exécutez cette commande PowerShell :
Add-SharePointAppPermission -SiteUrls "https://example.sharepoint.com/sites/site1","https://example.sharepoint.com/sites/site2" -ConfigFile "./my-config.json"
Si vous avez un fichier de liste de sites, vous pouvez le spécifier avec l’argument
-SiteListFile (en remplaçant l’argument
-SiteURLs ) :
Add-SharePointAppPermission -SiteListFile "./sitelist.txt" -ConfigFile "./my-config.json"
Important : Si vous utilisez l’authentification principale du service, ajoutez l’argument -UseServicePrincipal à votre ligne de commande.
-
Pour supprimer les autorisations FullControl des sites et collections de sites spécifiés Microsoft SharePoint Online , exécutez cette commande PowerShell :
Remove-SharePointAppPermission -SiteUrls "https://example.sharepoint.com/sites/site1","https://example.sharepoint.com/sites/site2" -ConfigFile "./my-config.json"
Si vous avez un fichier de liste de sites, vous pouvez le spécifier avec l’argument
-SiteListFile (en remplaçant l’argument
-SiteURLs ) :
Remove-SharePointAppPermission -SiteListFile "./sitelist.txt" -ConfigFile "./my-config.json"
Important : Si vous utilisez l’authentification principale du service, ajoutez l’argument -UseServicePrincipal à votre ligne de commande.
Que faire ensuite
Si vous supprimez les autorisations FullControl des sites ou collections de sites qui sont toujours analysés par le Microsoft SharePoint Online connecteur de contenu externe, le connecteur consigne des alertes d’autorisations lorsqu’il tente d’analyser le contenu de ces sites ou collections de sites. Pour éliminer ces alertes, demandez à votre administrateur de connecteur de supprimer ou d’exclure les sites et collections de sites affectés de l’ensemble de sites analysés par le connecteur.