Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Recherche Azure AI est disponible via le portail Azure, les API REST et les SDK Azure. Il sous-tend également Foundry IQ, la couche de connaissances managée qui transforme le contenu d’entreprise en bases de connaissances réutilisables et prenant en charge les autorisations pour les agents dans le portail Microsoft Foundry.
Utilisez cet article si le filtrage d’autorisation au moment de la requête pour le contenu indexé SharePoint retourne des résultats manquants ou inattendus, ou si une requête filtrée par autorisation échoue.
Prerequisites
- Un index alimenté par l’indexeur SharePoint dans Microsoft 365 avec l’ingestion des ACL configurée.
- Filtrage des permissions à l’exécution de la requête configuré comme décrit dans l’application des ACL et du RBAC à l’exécution de la requête.
- Version
2026-08-01-previewde l’API REST ou package de sdk en préversion équivalent lorsque vous utilisez des groupes de sites SharePoint. - Accès à la définition d’index, à l’état de l’indexeur généré ou explicite et aux autorisations de SharePoint pour un utilisateur de test.
- Contributeur de données d’index de recherche ou autorisation de lecture élevée équivalente si vous devez comparer les résultats filtrés et non filtrés.
Suivez l’arbre de décision de résolution des problèmes
Effectuez ces vérifications dans l’ordre. Arrêtez lorsque le résultat observé identifie la configuration ou l’autorisation qui a besoin de correction.
1. Confirmer que l’échec se produit au moment de la requête
Cet article traite du filtrage des autorisations une fois que le contenu SharePoint et les métadonnées d’ACL sont indexés.
- Si la création d’une source de données ou l’exécution d’un indexeur signale
Invalid AAD tenant, suivez la procédure de correction du locataire Microsoft Entra. - Si vous devez corriger
TenantId, l’authentification ou la chaîne de connexion de la source de données, consultez Configurer l’indexeur SharePoint dans Microsoft 365. - Si
UserIds,GroupIdsouSharePointSiteUrlsont manquants pendant l’indexation, utilisez le tableau de résolution des problèmes d’ingestion des ACL.
Continuez ici uniquement lorsque des métadonnées d’autorisation indexées existent et que le symptôme se produit lorsque vous l’interrogez.
2. Identifier les trois identités
Enregistrez l’identité qui remplit chaque rôle. Ne remplacez pas un identificateur par un autre.
| Identité | Purpose | Où la vérifier |
|---|---|---|
| Interrogation de l’utilisateur | Le jeton utilisateur délégué dans x-ms-query-source-authorization détermine quels documents protégés l’utilisateur peut récupérer. |
Flux d’authentification de votre application et demande de requête. |
| enregistrement de l’application de connecteur SharePoint | Sur l’index, sharePointConnectorAppRegistration permet à Recherche Azure AI de déterminer les appartenances de l’utilisateur qui effectue la requête aux groupes de sites SharePoint. |
La définition de l’index et l’enregistrement de l’application décrits dans Configurer la prise en charge des groupes SharePoint. |
| identité de la requête d’Recherche Azure AI | Le jeton du porteur Microsoft Entra dans l’en-têteAuthorization, ou la clé API dans l’en-têteapi-key, authentifie la requête auprès du service de recherche. L’identité doit être autorisée à interroger l’index. |
Votre client de requête et l’attribution de rôle du plan de données Recherche Azure AI. |
3. Vérifier la configuration du filtre d’autorisation
Comparez l’index, l’indexeur et les objets générés avec leurs articles associés.
- Vérifiez que l’index a
permissionFilterOptiondéfini surenabled. - Vérifiez que
UserIdsetGroupIdsont les valeurspermissionFiltercorrectes. - Pour les groupes de sites SharePoint, vérifiez que l’index comporte
sharePointConnectorAppRegistrationet un champSharePointSiteUrlavecsharepointSiteUrl: true. - Vérifiez que chaque document ou bloc indexé contient les champs d’autorisation applicables. Si l’ensemble de compétences utilise des projections d’index, vérifiez que les champs ACL se trouvent dans
indexProjections.mappings.
Si une valeur est absente, revenez à Configurer votre service de recherche pour l’ingestion des ACL et l’application au moment de la requête.
4. Vérifiez le jeton de requête en toute sécurité
Ne connectez jamais, collez-les dans une demande de support ou partagez un jeton d’accès complet. Décoder uniquement la charge utile du jeton localement, et assainir les identificateurs avant de capturer les données de diagnostic.
- Vérifiez que la requête inclut
x-ms-query-source-authorizationavec un jeton délégué valide pour l’utilisateur de test. - Décodez localement le contenu utile et confirmez que
oididentifie l’utilisateur de test prévu. Enregistrez une valeur désinfectée telle que<test-user-object-id>. - Réauthentifier l’utilisateur et réessayer si le jeton est manquant ou expiré.
Si le jeton utilisateur est omis, le contenu protégé par l’autorisation n’est pas retourné. L’en-tête Authorization seul ne remplace x-ms-query-source-authorizationpas .
5. Vérifier les autorisations Microsoft Entra
- Vérifiez que les éléments indexés
UserIdsouGroupIdscontiennent l’ID d’objet Microsoft Entra attendu. Utilisez une requête de lecture avec élévation de privilèges uniquement pour cette comparaison de diagnostic. - Vérifiez que l’utilisateur de test a une affectation directe ou qu’il accède au groupe Microsoft Entra assigné via une appartenance transitive à un groupe Microsoft Entra.
- Si le groupe Microsoft Entra est imbriqué dans un groupe SharePoint, modifiez l’affectation. Cette relation mixte n’est pas développée et peut entraîner des résultats manquants. Ajoutez l’utilisateur directement au groupe SharePoint, ou accordez des autorisations via une attribution de groupe Microsoft Entra prise en charge.
Pour connaître la limite de prise en charge exacte, consultez les relations de groupe prises en charge.
6. Vérifier les autorisations de groupe de sites SharePoint
Effectuez cette étape lorsque l’ACL du document dépend d’un groupe de sites propriétaires, membres, visiteurs ou personnalisé SharePoint.
- Utilisez une requête en lecture élevée pour confirmer que
GroupIdscontient l’ID de groupe attendu avec le préfixespg:et queSharePointSiteUrlidentifie le site source. - Vérifiez que l’utilisateur de test est un membre direct de ce groupe SharePoint.
- Vérifiez que le
sharePointConnectorAppRegistrationde l’index utilise les identifiants et les autorisations requis par la prise en charge des groupes SharePoint.
Si les champs indexés sont vides ou obsolètes, corrigez l’ingestion ou synchronisez les autorisations de SharePoint avant de retester la requête.
7. Vérifiez la demande de requête
- Utilisez la version
2026-08-01-previewde l’API REST ou un package SDK en préversion équivalent pour les filtres d’autorisation des groupes de sites SharePoint. - Confirmez que
Authorizationauthentifie un principal pouvant interroger l’index. - Vérifiez que
x-ms-query-source-authorizationcontient le jeton de l’utilisateur de test délégué. - Réessayez la même requête sans filtres ou modifications de classement non liées afin de pouvoir isoler le comportement des autorisations.
Utilisez l’exemple de requête général comme propriétaire de la forme de requête. N’incluez pas de tokens complets dans les requêtes enregistrées ou les journaux.
8. Comparer les résultats attendus et réels
- Choisissez un document que l'utilisateur de test peut accéder et un document que l'utilisateur ne peut pas accéder dans SharePoint.
- Exécutez la requête filtrée par autorisation en tant qu’utilisateur de test et enregistrez uniquement les clés de document ou d’autres identificateurs non-secret.
- Exécutez une requête de lecture avec élévation de privilèges et comparez les valeurs stockées
UserIds,GroupIdsetSharePointSiteUrlavec les autorisations de la source. - Si la lecture en mode privilégié renvoie le document attendu, mais que la requête de l’utilisateur ne le fait pas, concentrez-vous sur le jeton utilisateur et la résolution des groupes. Si même la lecture avec élévation de privilèges ne le détecte pas, concentrez-vous sur l’ingestion, les mappages et la synchronisation des ACL.
La lecture en mode privilégié sert à des fins d’investigation. Ne l’utilisez pas pour retourner des résultats illimités aux utilisateurs finaux.
9. Capturer les détails de corrélation des demandes
Si la requête échoue toujours, capturez la version de l’API, l’horodatage UTC, le corps de la requête nettoyé, l’état HTTP, les en-têtes de réponse et toute requête ou ID de corrélation retourné par le service. Incluez le nom de l’index et indiquez si le même document apparaît lors d’une lecture en mode privilégié.
Supprimez les jetons d’accès, les clés API, les secrets, les noms d’utilisateur et les URL spécifiques au locataire avant de partager des diagnostics avec Support Microsoft.