View a markdown version of this page

Document-level contrôles d'accès - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Document-level contrôles d'accès

OneDrive les sources de données prennent éventuellement en charge le contrôle d'accès au niveau du document. Lorsque cette option est activée, Bedrock Managed Knowledge Base synchronise les listes de contrôle d'accès (ACL) à OneDrive chaque exploration et vérifie les autorisations de chaque utilisateur au moment de la requête, de sorte que les utilisateurs ne voient que les résultats des documents auxquels ils sont autorisés à accéder. OneDrive Pour une vue d'ensemble de la prise en compte des ACL sur tous les connecteurs, voirSensibilisation aux listes de contrôle d'accès.

La connaissance de l'ACL n'est pas une autorisation

La base de connaissances gérée Bedrock fournit un ACL-aware filtrage et non une limite de sécurité. La base de connaissances gérée Bedrock n'authentifie pas les utilisateurs finaux. Votre application est chargée d'authentifier les utilisateurs et de transmettre le contexte d'identité vérifié. La base de connaissances gérée Bedrock ne peut pas vérifier l'authenticité du contexte utilisateur que vous fournissez. Par conséquent, cette fonctionnalité filtre les résultats en fonction de l'identité que vous fournissez, mais ne constitue pas une véritable autorisation. Vous ne devez pas vous fier à cette fonctionnalité comme seul mécanisme de contrôle d'accès sans authentification en amont.

Comment ça marche

Lorsqu'un utilisateur interroge une base de connaissances qui utilise une source de ACL-enabled OneDrive données, Bedrock Managed Knowledge Base applique les contrôles d'accès en deux étapes :

  • Pre-retrieval filtrage — La base de connaissances gérée par Bedrock applique les listes de contrôle d'accès synchronisées OneDrive lors du dernier crawl, renvoyant uniquement les documents candidats auxquels l'utilisateur (ou ses groupes) est autorisé à accéder.

  • Real-time vérification — La base de connaissances gérée par Bedrock vérifie les documents candidats en temps réel en vérifiant l'accès actuel de l'utilisateur demandeur. OneDrive Seuls les documents auxquels l'utilisateur est actuellement autorisé à accéder sont inclus dans la réponse.

Cette approche en deux étapes fournit un contrôle d'accès au niveau du document qui reste actuel même lorsque les OneDrive autorisations changent entre les synchronisations.

Qu'est-ce qui est crawlé

Lorsque les ACL sont activées, Bedrock Managed Knowledge Base analyse les autorisations de partage au niveau des fichiers et les attributions de groupes de sécurité à partir de. OneDrive Les appartenances à des groupes imbriqués (transitifs) sont également résolues.

Au moment de la requête, vous transmettez l'adresse e-mail de l'utilisateur (et non celle d'un groupe). La base de connaissances gérée Bedrock résout les appartenances aux groupes de cet utilisateur à partir des données qu'il a analysées et les applique lors du filtrage des résultats. Pour plus d'informations sur le modèle d'identité, consultezSensibilisation aux listes de contrôle d'accès.

Conditions préalables à la prise de conscience de l'ACL

ACL-enabled OneDrive utilise deux API Microsoft différentes, chacune ayant son propre ensemble d'autorisations d'application sur votre application Microsoft Entra : le crawl utilise l'API Microsoft Graph et la vérification en temps réel utilise l' SharePoint API REST (OneDrive pour les entreprises est soutenue par). SharePoint Configurez les autorisations pour les deux API, avec le consentement de l'administrateur, avant d'activer la prise en compte des ACL.

  • User.Read.Allet GroupMember.Read.All sur Microsoft Graph (pour l'exploration des identités).

  • Sites.FullControl.Allactivé SharePoint (pour la vérification de l'accès aux documents). Sites.Read.Alln'est pas suffisant : l'accès en lecture seule ne peut pas effectuer la vérification des autorisations effective requise par la vérification en temps réel.

Important

Le crawl utilise l'API Microsoft Graph et la vérification en temps réel utilise l' SharePoint API REST, c'est-à-dire différentes ressources avec différentes autorisations d'application. Les autorisations d'exploration des identités Microsoft Graph sont nécessaires mais pas suffisantes : la vérification en temps réel nécessite également l' SharePoint Sites.FullControl.Allautorisation avec le consentement de l'administrateur. L'octroi uniquement des autorisations Microsoft Graph est la cause la plus courante pour laquelle une source de ACL-enabled OneDrive données ne renvoie aucun résultat, même lorsque l'utilisateur y a accès.

Pour la procédure de configuration complète, y compris le certificat, voirConfigurer l'authentification Microsoft Entra App ID pour OneDrive.

Activer la sensibilisation à l'ACL

Pour activer la prise en compte des ACL pour une source de OneDrive données, définissez aclEnabled la true valeur sur in the connectorParameters et utilisez le type d'ENTRA_APP_IDauthentification. Ce type d'authentification utilise des autorisations d'application qui permettent à Bedrock Managed Knowledge Base d'explorer les informations d'identité et de vérifier l'accès aux documents au moment de la requête.

Important

La configuration de l'ACL est permanente. Vous ne pouvez pas activer les ACL sur une source de données créée sans support ACL, et vous ne pouvez pas désactiver les ACL une fois activées.

Lorsque les ACL sont activées pour OneDrive, vous devez inclure un certificateS3Path dans le connectionConfiguration pointeur vers un fichier de certificat PKCS #12 (.p12) dans Amazon S3. Ce certificat est utilisé pour la vérification des ACL en temps réel par rapport à l' SharePoint API REST. Ce n'certificateS3Pathest pas obligatoire lorsque les ACL sont désactivées.

"connectorParameters": { "type": "ONEDRIVE", "version": "1", "aclEnabled": true, "connectionConfiguration": { "tenantId": "your-tenant-id", "authType": "ENTRA_APP_ID", "secretArn": "arn:aws:secretsmanager:region:account-id:secret:secret-name", "certificateS3Path": { "s3BucketName": "your-certificate-bucket", "s3KeyName": "certs/certificate.p12" } }, "dataEntityConfiguration": { "crawlPersonalDrives": true } }
Note

Le certificatePassword champ du secret est facultatif. Si vous l'omettez, Bedrock Managed Knowledge Base ouvre le fichier PKCS #12 (.p12) en utilisant l'ID client de votre application comme mot de passe. Le certificat doit donc avoir été créé avec ce mot de passe. Nous vous recommandons de toujours définir une valeur explicite à entropie élevée certificatePassword pour protéger la clé privée du certificat au repos.

Note

Le type d'OAUTH2authentification n'est pas pris en charge pour les sources ACL-enabled OneDrive de données. Vous devez utiliser ENTRA_APP_ID.

Real-time vérification d'accès

Bedrock Managed Knowledge Base vérifie chaque document candidat en temps réel, entièrement côté serveur, en utilisant les informations d'identification de l'application. Il n'y a pas de connexion de l'utilisateur final ni de consentement délégué. OneDrive For Business étant soutenu par SharePoint, Bedrock Managed Knowledge Base vérifie les autorisations effectives de l'utilisateur demandeur par rapport à l' SharePoint API REST de l'hôte de OneDrive votre locataire.

OneDrive la vérification en temps réel utilise un modèle à deux informations d'identification, et les deux informations d'identification sont requises :

  • L'ID client et le secret client contenus dans votre AWS Secrets Manager secret créent un jeton Microsoft Graph qui est utilisé pour identifier l' OneDrive hôte de votre locataire (l'-my.sharepoint.comhôte).

  • Le certificat produit certificateS3Path le jeton SharePoint REST utilisé pour la vérification des autorisations elle-même. Le certificat est l'identifiant officiel pour la vérification en temps réel : un jeton secret client ne peut pas à lui seul effectuer la vérification.

Important

L'application doit détenir l' SharePoint Sites.FullControl.Allautorisation avec le consentement de l'administrateur ; cela ne Sites.Read.All suffit pas car la vérification des autorisations effectives nécessite manage/full des droits de contrôle. Sans l'autorisation appropriée, la vérification en temps réel ne peut pas évaluer les autorisations effectives et échoue à la fermeture, refusant chaque document pour chaque requête, même lorsque l'utilisateur y a accès et que le crawl et le filtrage préalable à la récupération ont réussi. Voir Conditions préalables à la prise de conscience de l'ACL.

Note

Une fois que vous avez accordé ou accepté l'autorisation d' SharePoint application, attendez jusqu'à une heure pour que la modification prenne effet pour les utilisateurs sélectionnés avant la modification, car les informations d'identification d'accès à l'application sont mises en cache. Pour confirmer la modification plus rapidement, testez auprès d'un autre utilisateur qui n'a pas encore été interrogé.

Vérification de votre configuration

Vous pouvez valider les autorisations de votre application Entra indépendamment d'une demande de récupération. Effectuez chacune des vérifications suivantes :

  1. Microsoft Graph (crawl) :

    • Acquérez un jeton d'application doté d'une portéehttps://graph.microsoft.com/.default.

    • Décodez le jeton et vérifiez que la roles réclamation inclut les autorisations Microsoft Graph requises (User.Read.AllGroupMember.Read.All, etFiles.Read.All).

    • Appelez GET https://graph.microsoft.com/v1.0/users/{user}/drive/root/children et confirmez qu'il répertorie les éléments du lecteur de l'utilisateur.

  2. SharePoint REST (vérification en temps réel) :

    • Acquérez un jeton à l'aide de l'assertion du client de certificat avec portéehttps://{tenant}-my.sharepoint.com/.default.

    • Vérifiez que la roles demande du jeton inclut l' SharePoint Sites.FullControl.Allautorisation. Une roles: null valeur signifie que l'autorisation ou le consentement de l'administrateur est absent.

    • Appelez GET https://{tenant}-my.sharepoint.com/_api/web et confirmez le succès (HTTP 200). Une réponse échouée ou non autorisée signifie que l' SharePoint autorisation ou le consentement de l'administrateur est absent, ce qui entraîne le refus de tous les documents.

Résolution des problèmes

Note

Les erreurs de configuration de l'ACL ne produisent pas d'erreurs explicites lors de la récupération. La récupération échoue à la fermeture : les documents concernés sont omis de manière silencieuse, de sorte qu'une requête renvoie moins de résultats, voire aucun, plutôt qu'une erreur. Utilisez les contrôles de vérification ci-dessus pour diagnostiquer ces problèmes.

ACL-enabled OneDrive symptômes, causes et solutions
Symptôme Cause probable Corriger
Retrieve ne renvoie aucun résultat, mais l'utilisateur y a accès OneDrive. Les autorisations Microsoft Graph sont présentes, mais l'autorisation de l' SharePoint application ou le consentement de l'administrateur sont absents. L'appel SharePoint REST est donc rejeté et tous les documents sont refusés. Accordez l' SharePoint Sites.FullControl.Allautorisation avec le consentement de l'administrateur. Ces informations d'identification de l'application étant mises en cache, attendez jusqu'à une heure pour que la modification prenne effet, ou testez avec un utilisateur qui n'a pas encore été interrogé pour confirmer plus tôt.
L'accès d'un utilisateur a été modifié OneDrive, mais le nouveau résultat n'est pas reflété immédiatement. Per-user les résultats d'accès sont finalement cohérents entre la source de données et la base de connaissances gérée par Bedrock (généralement en deux minutes environ), de sorte qu'un changement d'accès récent peut ne pas être reflété immédiatement. Une fois que la source de données a reflété la modification, attendez environ deux minutes et réessayez.
Tous les utilisateurs sont refusés après avoir travaillé auparavant. Le certificat a expiré ou le consentement de l'administrateur a été révoqué. Renouvelez le certificat lors de l'enregistrement de l'application Entra et dans Amazon S3, et accordez à nouveau le consentement de l'administrateur.
L'exploration ou la synchronisation échouent bien que la configuration semble correcte. L'autorisation requise pour l'application Microsoft Graph est manquante. Grant Files.Read.AllSites.Read.All,User.Read.All, etGroupMember.Read.All.
Erreurs liées au mot de passe du certificat ou à la création de jetons. Le .p12 mot de passe ne correspond pascertificatePassword. certificatePasswordDéfini sur le mot de passe utilisé pour créer le .p12 fichier.