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.
Accès intercompte aux octrois d’accès S3
Avec S3 Access Grants, vous pouvez accorder à Amazon S3 l'accès aux données suivantes :
AWS Identity and Access Management (IAM) identités au sein de votre compte
IAMidentités dans d'autres AWS comptes
Répertoriez les utilisateurs ou les groupes de votre AWS IAM Identity Center instance
Tout d'abord, configurez l'accès entre comptes pour l'autre compte. Cela inclut l'octroi de l'accès à votre instance S3 Access Grants à l'aide d'une politique de ressources. Accordez ensuite l'accès à vos données S3 (compartiments, préfixes ou objets) en utilisant des autorisations.
Une fois que vous avez configuré l'accès entre comptes, l'autre compte peut demander des informations d'accès temporaires à vos données Amazon S3 auprès de S3 Access Grants. L'image suivante montre le flux d'utilisateurs pour l'accès entre comptes S3 via S3 Access Grants :
Les utilisateurs ou les applications d'un deuxième compte (B) demandent des informations d'identification à l'instance S3 Access Grants de votre compte (A), où les données Amazon S3 sont stockées. Pour de plus amples informations, veuillez consulter Demande d’un accès aux données Amazon S3 via les octrois d’accès S3.
L'instance S3 Access Grants de votre compte (A) renvoie des informations d'identification temporaires si une autorisation permet au deuxième compte d'accéder à vos données Amazon S3. Pour plus d'informations sur les autorisations d'accès, voirUtilisation des subventions dans S3 Access Grants.
Les utilisateurs ou les applications du second compte (B) utilisent les informations d'identification fournies par S3 Access Grants pour accéder aux données S3 de votre compte (A).
Configuration de S3 Access : octroie un accès entre comptes
Pour accorder un accès S3 entre comptes via S3 Access Grants, procédez comme suit :
Étape 1 : configurez une instance S3 Access Grants dans votre compte, par exemple, l'ID de compte
111122223333
, où les données S3 sont stockées.Étape 2 : Configurez la politique de ressources pour l'instance S3 Access Grants de votre compte
111122223333
afin de donner accès au deuxième compte, par exemple, l'ID du compte444455556666
.Étape 3 : Configurez les IAM autorisations permettant au IAM principal du deuxième compte de demander des informations d'identification
444455556666
à l'instance S3 Access Grants de votre compte111122223333
.Étape 4 : Créez une subvention dans votre compte
111122223333
qui donne au IAM principal du deuxième compte l'444455556666
accès à certaines des données S3 de votre compte111122223333
.
Étape 1 : configurer une instance S3 Access Grants dans votre compte
Tout d'abord, vous devez disposer d'une instance S3 Access Grants dans votre compte 111122223333
pour gérer l'accès à vos données Amazon S3. Vous devez créer une instance S3 Access Grants dans chaque Région AWS endroit où sont stockées les données S3 que vous souhaitez partager. Si vous partagez des données entre plusieurs entités Région AWS, répétez chacune de ces étapes de configuration pour chacune d'entre elles Région AWS. Si vous disposez déjà d'une instance S3 Access Grants dans l' Région AWS endroit où sont stockées vos données S3, passez à l'étape suivante. Si vous n'avez pas configuré d'instance S3 Access Grants, consultez Utilisation des instances S3 Access Grants pour terminer cette étape.
Étape 2 : configurer la politique de ressources pour votre instance S3 Access Grants afin d'accorder un accès entre comptes
Après avoir créé une instance S3 Access Grants dans votre compte 111122223333
pour un accès entre comptes, configurez la politique basée sur les ressources pour l'instance S3 Access Grants de votre compte 111122223333
afin d'accorder un accès entre comptes. L’instance d’octrois d’accès S3 elle-même prend en charge les politiques basées sur les ressources. Lorsque la bonne politique basée sur les ressources est en place, vous pouvez accorder l'accès à AWS Identity and Access Management (IAM) à des utilisateurs ou à des rôles provenant d'autres utilisateurs Comptes AWS à votre instance S3 Access Grants. L'accès entre comptes n'accorde que les autorisations (actions) suivantes :
-
s3:GetAccessGrantsInstanceForPrefix
— l'utilisateur, le rôle ou l'application peut récupérer l'instance S3 Access Grants qui contient un préfixe particulier. -
s3:ListAccessGrants
-
s3:ListAccessLocations
-
s3:ListCallerAccessGrants
-
s3:GetDataAccess
— l'utilisateur, le rôle ou l'application peut demander des informations d'identification temporaires en fonction de l'accès qui vous a été accordé via S3 Access Grants. Utilisez ces informations d’identification pour accéder aux données S3 auxquelles l’accès vous a été accordé.
Parmi ces autorisations, vous pouvez choisir les autorisations à inclure dans la politique de ressources. Cette politique de ressources sur l'instance S3 Access Grants est une politique normale basée sur les ressources et prend en charge tout ce que le langage de IAM politique prend en charge. Dans la même politique, vous pouvez accorder l'accès à des IAM identités spécifiques de votre compte111122223333
, par exemple en utilisant aws:PrincipalArn
cette condition, mais vous n'êtes pas obligé de le faire avec S3 Access Grants. Au sein de votre instance S3 Access Grants, vous pouvez plutôt créer des autorisations pour IAM des identités individuelles à partir de votre compte, ainsi que pour l'autre compte. En gérant chaque autorisation d'accès par le biais de S3 Access Grants, vous pouvez augmenter vos autorisations.
Si vous utilisez déjà AWS Resource Access Manager(AWS RAM), vous pouvez l'utiliser pour partager vos s3:AccessGrants
ressources avec d'autres comptes ou au sein de votre organisation. Consultez la section Utilisation de AWS ressources partagées pour plus d'informations. Si vous ne l'utilisez pas AWS RAM, vous pouvez également ajouter la politique de ressources en utilisant les API opérations S3 Access Grants ou le AWS Command Line Interface (AWS CLI).
Nous vous recommandons d'utiliser la console AWS Resource Access Manager (AWS RAM) pour partager vos s3:AccessGrants
ressources avec d'autres comptes ou au sein de votre organisation. Pour partager des subventions d'accès S3 entre comptes, procédez comme suit :
Pour configurer la politique de ressources de l'instance S3 Access Grants, procédez comme suit :
Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/s3/
. Sélectionnez-le dans Région AWS le Région AWS sélecteur.
Dans le volet de navigation de gauche, sélectionnez Access Grants.
Sur la page de l'instance Access Grants, dans la section Instance dans ce compte, sélectionnez Partager l'instance. Cela vous redirigera vers la AWS RAM console.
Sélectionnez Créer un partage de ressources.
Suivez les AWS RAM étapes pour créer le partage de ressources. Pour plus d'informations, consultez la section Création d'un partage de ressources dans AWS RAM.
Pour l'installer AWS CLI, reportez-vous à la section Installation du AWS CLI dans le guide de AWS Command Line Interface l'utilisateur.
Vous pouvez ajouter la politique de ressources à l'aide de la put-access-grants-instance-resource-policy
CLI commande.
Si vous souhaitez accorder un accès entre comptes pour l'instance S3 Access Grants de votre compte 111122223333
au second compte444455556666
, la politique de ressources de l'instance S3 Access Grants de votre compte 111122223333
doit 444455556666
autoriser le second compte à effectuer les actions suivantes :
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
Dans la politique de ressources de l'instance S3 Access Grants, spécifiez votre instance S3 Access Grants comme étant leResource
, et le second compte 444455556666
comme lePrincipal
. ARN Pour utiliser l'exemple suivant, remplacez user input
placeholders
avec vos propres informations.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "
444455556666
" }, "Action": [ "s3:ListAccessGrants", "s3:ListAccessGrantsLocations", "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": "arn:aws:s3:us-east-2
:111122223333
:access-grants/default" } ] }
Pour ajouter ou mettre à jour la politique de ressources d'instance S3 Access Grants, utilisez la commande suivante. Lorsque vous utilisez l'exemple de commande suivant, remplacez-le
par vos propres informations.user input
placeholders
Exemple Ajouter ou mettre à jour la politique de ressources de l'instance S3 Access Grants
aws s3control put-access-grants-instance-resource-policy \ --account-id
111122223333
\ --policy file://resourcePolicy.json \ --regionus-east-2
{ "Policy": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [{\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"AWS\": \"444455556666
\"\n },\n \"Action\": [\n \"s3:ListAccessGrants\",\n \"s3:ListAccessGrantsLocations\",\n \"s3:GetDataAccess\",\n \"s3:GetAccessGrantsInstanceForPrefix\",\n \"s3:ListCallerAccessGrants"\n ],\n \"Resource\": \"arn:aws:s3:us-east-2
:111122223333
:access-grants/default\"\n }\n ]\n }\n", "CreatedAt": "2023-06-16T00:07:47.473000+00:00" }
Exemple Obtenir une politique de ressources d’octrois d’accès S3
Vous pouvez également utiliser le CLI pour obtenir ou supprimer une politique de ressources pour une instance S3 Access Grants.
Pour obtenir une politique de ressources S3 Access Grants, utilisez l'exemple de commande suivant. Pour utiliser cet exemple de commande, remplacez
par vos propres informations.user input
placeholders
aws s3control get-access-grants-instance-resource-policy \ --account-id
111122223333
\ --regionus-east-2
{ "Policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::111122223333
:root\"},\"Action\":[\"s3:ListAccessGrants\",\"s3:ListAccessGrantsLocations\",\"s3:GetDataAccess\",\"s3:GetAccessGrantsInstanceForPrefix\",\"s3:ListCallerAccessGrants\"],\"Resource\":\"arn:aws: s3:us-east-2
:111122223333
:access-grants/default\"}]}", "CreatedAt": "2023-06-16T00:07:47.473000+00:00" }
Exemple Supprimer une politique de ressources d’octrois d’accès S3
Pour supprimer une politique de ressources S3 Access Grants, utilisez l'exemple de commande suivant. Pour utiliser cet exemple de commande, remplacez
par vos propres informations.user input
placeholders
aws s3control delete-access-grants-instance-resource-policy \ --account-id
111122223333
\ --regionus-east-2
// No response body
Vous pouvez ajouter la politique de ressources en utilisant le PutAccessGrantsInstanceResourcePolicy API.
Si vous souhaitez accorder un accès entre comptes pour l'instance S3 Access Grants de votre compte 111122223333
au second compte444455556666
, la politique de ressources de l'instance S3 Access Grants de votre compte 111122223333
doit 444455556666
autoriser le second compte à effectuer les actions suivantes :
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
Dans la politique de ressources de l'instance S3 Access Grants, spécifiez votre instance S3 Access Grants comme étant leResource
, et le second compte 444455556666
comme lePrincipal
. ARN Pour utiliser l'exemple suivant, remplacez user input
placeholders
avec vos propres informations.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "
444455556666
" }, "Action": [ "s3:ListAccessGrants", "s3:ListAccessGrantsLocations", "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": "arn:aws:s3:us-east-2
:111122223333
:access-grants/default" } ] }
Vous pouvez ensuite utiliser le PutAccessGrantsInstanceResourcePolicy APIpour configurer la politique.
Pour plus d'informations sur la REST API prise en charge de la mise à jour, de l'obtention ou de la suppression d'une politique de ressources pour une instance S3 Access Grants, consultez les sections suivantes du manuel Amazon Simple Storage Service API Reference :
Cette section fournit des AWS SDK exemples de configuration de votre politique de ressources S3 Access Grants afin d'accorder à un deuxième AWS compte l'accès à certaines de vos données S3.
Étape 3 : accorder aux IAM identités d'un deuxième compte l'autorisation d'appeler l'instance S3 Access Grants de votre compte
Une fois que le propriétaire des données Amazon S3 a configuré la politique inter-comptes pour l'instance S3 Access Grants en compte111122223333
, le propriétaire du second compte 444455556666
doit créer une politique basée sur l'identité pour ses IAM utilisateurs ou ses rôles, et le propriétaire doit leur donner accès à l'instance S3 Access Grants. Dans la politique basée sur l'identité, incluez une ou plusieurs des actions suivantes, en fonction de ce qui est accordé dans la politique de ressources d'instance S3 Access Grants et des autorisations que vous souhaitez accorder :
s3:ListAccessGrants
s3:ListAccessGrantsLocations
s3:GetDataAccess
s3:GetAccessGrantsInstanceForPrefix
s3:ListCallerAccessGrants
Selon le modèle d'accès AWS
entre comptes, les IAM utilisateurs ou les rôles du second compte 444455556666
doivent explicitement disposer d'une ou de plusieurs de ces autorisations. Par exemple, accordez l's3:GetDataAccess
autorisation afin que l'IAMutilisateur ou le rôle puisse appeler l'instance S3 Access Grants associée au compte 111122223333
pour demander des informations d'identification.
Pour utiliser cet exemple de commande, remplacez
par vos propres informations.user input placeholders
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetDataAccess", ], "Resource": "arn:aws:s3:
us-east-2
:111122223333
:access-grants/default" } ] }
Pour plus d'informations sur la modification IAM des politiques basées sur l'identité, consultez la section Modification IAM des politiques du AWS Identity and Access Management guide.
Étape 4 : Créez une autorisation dans l'instance S3 Access Grants de votre compte qui donne à l'IAMidentité du second compte l'accès à certaines de vos données S3
Pour la dernière étape de configuration, vous pouvez créer une autorisation dans l'instance S3 Access Grants de votre compte 111122223333 qui donne accès à l'IAMidentité du deuxième compte 444455556666 à certaines données S3 de votre compte. Vous pouvez le faire en utilisant la console Amazon S3,CLI,API, etSDKs. Pour de plus amples informations, veuillez consulter Création d’octrois.
Dans l'autorisation, spécifiez l' AWS ARNIAMidentité du deuxième compte et spécifiez à quel emplacement dans vos données S3 (un compartiment, un préfixe ou un objet) vous accordez l'accès. Cet emplacement doit déjà être enregistré auprès de votre instance S3 Access Grants. Pour de plus amples informations, veuillez consulter Enregistrement d’un emplacement. Vous pouvez éventuellement spécifier un sous-préfixe. Par exemple, si l'emplacement auquel vous accordez l'accès est un compartiment et que vous souhaitez limiter davantage l'accès à un objet spécifique de ce compartiment, transmettez le nom de la clé de l'objet dans le S3SubPrefix
champ. Ou si vous souhaitez limiter l'accès aux objets du compartiment dont les noms de clé commencent par un préfixe spécifique2024-03-research-results/
, tel que « pass S3SubPrefix=2024-03-research-results/
».
Voici un exemple de CLI commande permettant de créer une autorisation d'accès pour une identité dans le deuxième compte. Pour plus d’informations, consultez Création d’octrois. Pour utiliser cet exemple de commande, remplacez
par vos propres informations.user input placeholders
aws s3control create-access-grant \ --account-id
111122223333
\ --access-grants-location-id default \ --access-grants-location-configuration S3SubPrefix=prefixA*
\ --permission READ \ --grantee GranteeType=IAM,GranteeIdentifier=arn:aws:iam::444455556666
:role/data-consumer-1
Après avoir configuré l'accès entre comptes, l'utilisateur ou le rôle du second compte peut effectuer les opérations suivantes :
Appels
ListAccessGrantsInstances
pour répertorier les instances S3 Access Grants partagées avec ce service via AWS RAM. Pour de plus amples informations, veuillez consulter Obtenez les détails d'une instance S3 Access Grants.Demande des informations d'identification temporaires à S3 Access Grants. Pour plus d'informations sur la procédure à suivre pour effectuer ces demandes, consultezDemande d’un accès aux données Amazon S3 via les octrois d’accès S3.