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.
Fonctionnement d’Amazon S3 avec IAM
Avant d’utiliser IAM pour gérer l’accès à Amazon S3, découvrez les fonctionnalités IAM qui peuvent être utilisées avec Amazon S3.
| Fonctionnalité IAM | Prise en charge d’Amazon S3 |
|---|---|
|
Oui |
|
|
Oui |
|
|
Oui |
|
|
Oui |
|
|
Oui |
|
|
Oui |
|
|
Partielle |
|
|
Oui |
|
|
Oui |
|
|
Oui |
|
|
Partielle |
Pour obtenir une vue d'ensemble de la façon dont Amazon S3 et les autres AWS services fonctionnent avec la plupart des fonctionnalités IAM, consultez les AWS services compatibles avec IAM dans le guide de l'utilisateur IAM.
Pour plus d’informations sur les autorisations relatives aux opérations d’API S3 par type de ressource S3, consultez Autorisations requises pour les opérations d’API Amazon S3.
Politiques basées sur l’identité pour Amazon S3
Prend en charge les politiques basées sur l’identité : oui
Les politiques basées sur l’identité sont des documents de politique d’autorisations JSON que vous pouvez attacher à une identité telle qu’un utilisateur, un groupe d’utilisateurs ou un rôle IAM. Ces politiques contrôlent quel type d’actions des utilisateurs et des rôles peuvent exécuter, sur quelles ressources et dans quelles conditions. Pour découvrir comment créer une politique basée sur l’identité, consultez Définition d’autorisations IAM personnalisées avec des politiques gérées par le client dans le Guide de l’utilisateur IAM.
Avec les politiques IAM basées sur l’identité, vous pouvez spécifier des actions et ressources autorisées ou refusées, ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. Pour découvrir tous les éléments que vous utilisez dans une politique JSON, consultez Références des éléments de politique JSON IAM dans le Guide de l’utilisateur IAM.
Exemples de politiques basées sur l’identité pour Amazon S3
Pour voir des exemples de politiques Amazon S3 basées sur l’identité, consultez Politiques basées sur l’identité pour Amazon S3.
Politiques basées sur les ressources au sein d’Amazon S3
Prend en charge les politiques basées sur les ressources : oui
Les politiques basées sur les ressources sont des documents de politique JSON que vous attachez à une ressource. Par exemple, les politiques de confiance de rôle IAM et les politiques de compartiment Amazon S3 sont des politiques basées sur les ressources. Dans les services qui sont compatibles avec les politiques basées sur les ressources, les administrateurs de service peuvent les utiliser pour contrôler l’accès à une ressource spécifique. Pour la ressource dans laquelle se trouve la politique, cette dernière définit quel type d’actions un principal spécifié peut effectuer sur cette ressource et dans quelles conditions. Vous devez spécifier un principal dans une politique basée sur les ressources. Les principaux peuvent inclure des comptes, des utilisateurs, des rôles, des utilisateurs fédérés ou. Services AWS
Pour permettre un accès intercompte, vous pouvez spécifier un compte entier ou des entités IAM dans un autre compte en tant que principal dans une politique basée sur les ressources. Pour plus d’informations, consultez Accès intercompte aux ressources dans IAM dans le Guide de l’utilisateur IAM.
Le service Amazon S3 prend en charge les politiques de compartiment, les stratégies de points d’accès et les autorisations d’accès S3 :
-
Les politiques de compartiment sont des politiques basées sur les ressources. Elles sont associées à un compartiment Amazon S3. Une politique de compartiment désigne les principaux autorisés à effectuer des actions au niveau de ce compartiment.
-
Les stratégies de points d’accès sont des politiques basées sur les ressources. Elles sont évaluées conjointement avec la politique de compartiment sous-jacente.
-
Les autorisations d’accès S3 fournissent un modèle simplifié pour définir les autorisations d’accès aux données dans Amazon S3 par préfixe, compartiment ou objet. Pour plus d’informations sur les autorisations d’accès S3, consultez Gestion de l’accès avec les autorisations d’accès S3.
Principaux pour les politiques de compartiment
L’élément Principal spécifie l’utilisateur, le compte, le service ou une autre entité qui a accès ou non à une ressource. Voici quelques exemples de spécification de Principal. Pour plus d’informations, consultez Principal dans le Guide de l’utilisateur IAM.
Accorder des autorisations à un Compte AWS
Pour accorder des autorisations à un Compte AWS, identifiez le compte en utilisant le format suivant.
"AWS":"account-ARN"
Voici quelques exemples.
"Principal":{"AWS":"arn:aws:iam::AccountIDWithoutHyphens:root"}
"Principal":{"AWS":["arn:aws:iam::AccountID1WithoutHyphens:root","arn:aws:iam::AccountID2WithoutHyphens:root"]}
Note
Les exemples ci-dessus accordent des autorisations à l'utilisateur root, qui les délègue au niveau du compte. Cependant, des politiques IAM sont toujours requises pour les rôles et les utilisateurs spécifiques du compte.
Octroyer des autorisations à un utilisateur IAM
Pour accorder une autorisation à un utilisateur IAM de votre compte, vous devez fournir une paire de nom-valeur "AWS":".user-ARN"
"Principal":{"AWS":"arn:aws:iam::account-number-without-hyphens:user/username"}
Pour des exemples détaillés fournissant des step-by-step instructions, reportez-vous aux sections Exemple 1 : propriétaire d’un compartiment accordant à ses utilisateurs des autorisations sur un compartiment etExemple 3 : propriétaire d’un compartiment accordant des autorisations sur des objets qu’il ne possède pas.
Note
Si une identité IAM est supprimée après la mise à jour de votre politique de compartiment, la politique de compartiment affichera un identifiant unique dans l’élément principal au lieu d’un ARN. Ces informations uniques ne IDs sont jamais réutilisées. Vous pouvez donc supprimer en toute sécurité les principaux associés à des identifiants uniques de toutes vos déclarations de politique. Pour plus d’informations sur les identifiants uniques, consultez Identificateurs IAM dans le Guide de l’utilisateur IAM.
Octroyer des autorisations anonymes
Avertissement
Soyez vigilant lorsque vous accordez un accès anonyme à votre compartiment Amazon S3. Lorsque vous accordez un accès anonyme, tout le monde peut accéder à votre compartiment. Nous vous recommandons vivement de ne jamais accorder un type d’accès en écriture anonyme quel qu’il soit à votre compartiment S3.
Pour accorder l’autorisation à tout le monde (on parle aussi d’accès anonyme), définissez le caractère générique "*" en tant que valeur Principal. Par exemple, si vous configurez votre compartiment en tant que site Web, vous voulez que tous les objets dans le compartiment soit accessibles publiquement.
"Principal":"*"
"Principal":{"AWS":"*"}
L'utilisation "Principal": "*" avec Allow effet dans le cadre d'une politique basée sur les ressources permet à quiconque, même s'il n'est pas connecté AWS, d'accéder à votre ressource.
L’utilisation de l’interface "Principal" : { "AWS" : "*" } avec un effet Allow dans une politique basée sur les ressources permet à n’importe quel utilisateur racine, utilisateur IAM, séance à rôle supposé ou utilisateur fédéré dans n’importe quel compte de la même partition d’accéder à votre ressource.
Pour les utilisateurs anonymes, ces deux méthodes sont équivalentes. Pour plus d’informations, consultez Tous les principaux dans le Guide de l’utilisateur IAM.
Vous ne pouvez pas utiliser un caractère générique pour une correspondance à une partie d’un nom ou d’un ARN principal.
Important
Dans les politiques de contrôle d' AWS accès, les principes « * » et {»AWS« : « *"} se comportent de manière identique.
Restriction des autorisations sur les ressources
Vous pouvez également utiliser la politique sur les ressources pour restreindre l’accès aux ressources qui seraient autrement accessibles aux principaux IAM. Utilisez une instruction Deny pour empêcher l’accès.
L’exemple suivant bloque l’accès si aucun protocole de transport sécurisé n’est utilisé :
Au lieu de tenter de refuser l’accès à des comptes ou des principaux spécifiques selon cette méthode, l’utilisation de "Principal": "*" de sorte que cette restriction s’applique à tout le monde est une bonne pratique pour cette politique.
Nécessite un accès via CloudFront URLs
Vous pouvez demander à vos utilisateurs d'accéder à votre contenu Amazon S3 uniquement en utilisant CloudFront URLs plutôt qu'Amazon S3 URLs. Pour ce faire, créez un contrôle CloudFront d'accès à l'origine (OAC). Modifiez ensuite les autorisations au niveau de vos données S3. Dans votre politique de compartiment, vous pouvez définir le CloudFront rôle principal comme suit :
"Principal":{"Service":"cloudfront.amazonaws.com"}
Utilisez un Condition élément de la politique CloudFront pour autoriser l'accès au compartiment uniquement lorsque la demande provient de la CloudFront distribution contenant l'origine S3.
"Condition": { "StringEquals": { "AWS:SourceArn": "arn:aws:cloudfront::111122223333:distribution/CloudFront-distribution-ID" } }
Pour plus d'informations sur l'obligation d'accéder à S3 via CloudFront URLs, consultez Restreindre l'accès à une origine Amazon Simple Storage Service dans le manuel Amazon CloudFront Developer Guide. Pour plus d'informations sur les avantages en matière de sécurité et de confidentialité liés à l'utilisation d'Amazon CloudFront, consultez Configuration de l'accès sécurisé et restriction de l'accès au contenu.
Exemples de politiques basées sur les ressources pour Amazon S3
Pour obtenir des exemples de politiques de compartiment Amazon S3, consultez Politiques de compartiment pour Amazon S3.
Pour consulter des exemples de stratégies de points d’accès, consultez Configuration des politiques IAM pour l’utilisation des points d’accès.
Actions de politique pour Amazon S3
Prend en charge les actions de politique : oui
Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel principal peut effectuer des actions sur quelles ressources et dans quelles conditions.
L’élément Action d’une politique JSON décrit les actions que vous pouvez utiliser pour autoriser ou refuser l’accès à une politique. Intégration d’actions dans une politique afin d’accorder l’autorisation d’exécuter les opérations associées.
Vous trouverez ci-dessous les différents types de relations de mappage entre les opérations de l’API S3 et les actions de politiques requises.
One-to-one mappage portant le même nom. Par exemple, pour utiliser l’opération d’API
PutBucketPolicy, l’action de politiques3:PutBucketPolicyest requise.One-to-one mappage avec des noms différents. Par exemple, pour utiliser l’opération d’API
ListObjectsV2, l’action de politiques3:ListBucketest requise.One-to-many cartographie. Par exemple, pour utiliser l’opération d’API
HeadObject,s3:GetObjectest requis. De même, lorsque vous utilisez le verrouillage d’objet S3 et que vous souhaitez obtenir le statut de conservation légale d’un objet ou les paramètres de rétention d’un objet, les actions de politiques3:GetObjectLegalHoldous3:GetObjectRetentioncorrespondantes sont également requises avant de pouvoir utiliser l’opération d’APIHeadObject.Many-to-one cartographie. Par exemple, pour utiliser les opérations d’API
ListObjectsV2ouHeadBucket, l’action de politiques3:ListBucketest requise.
Pour afficher la liste des actions Amazon S3 que vous pouvez utilisez dans les politiques, consultez Actions définies par Amazon S3 dans la Référence de l’autorisation de service. Pour obtenir la liste des opérations d’API Amazon S3, consultez Actions d’API Amazon S3 dans la Référence d’API Amazon Simple Storage Service.
Pour plus d’informations sur les autorisations relatives aux opérations d’API S3 par type de ressource S3, consultez Autorisations requises pour les opérations d’API Amazon S3.
Les actions de politique dans Amazon S3 utilisent le préfixe suivant avant l’action :
s3
Pour indiquer plusieurs actions dans une seule déclaration, séparez-les par des virgules.
"Action": [ "s3:action1", "s3:action2" ]
Opérations de compartiment
Les opérations de compartiment sont des opérations d’API S3 qui opèrent sur le type de ressource du compartiment. Par exemple, CreateBucket, ListObjectsV2 et PutBucketPolicy. Les actions de politique S3 pour les opérations de compartiment nécessitent que l’élément Resource des politiques de compartiment ou des politiques basées sur l’identité IAM soit l’identifiant Amazon Resource Name (ARN) du type de compartiment S3 dans l’exemple de format suivant.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket"
La politique de compartiment suivante accorde à l’utilisateur titulaire du compte Akua l’autorisation 12345678901s3:ListBucket d’effectuer l’opération d’API ListObjectsV2 et de répertorier les objets dans un compartiment S3.
Opérations relatives aux compartiments dans les politiques relatives aux points d'accès pour les compartiments à usage général
Les autorisations accordées dans un point d'accès pour la politique des buckets à usage général ne sont effectives que si le bucket sous-jacent autorise les mêmes autorisations. Lorsque vous utilisez des points d’accès S3, vous devez déléguer le contrôle d’accès du compartiment au point d’accès ou ajouter les mêmes autorisations dans les stratégies du point d’accès à la politique du compartiment sous-jacent. Pour de plus amples informations, veuillez consulter Configuration des politiques IAM pour l’utilisation des points d’accès. Dans les stratégies de point d’accès, les actions de politique S3 pour les opérations de compartiment nécessitent que vous utilisiez l’ARN du point d’accès pour l’élément Resource au format suivant.
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point"
La stratégie de point d’accès suivante accorde à l’utilisateur titulaire du compte Akua l’autorisation 12345678901s3:ListBucket d’effectuer l’opération d’API ListObjectsV2 via le point d’accès S3 nommé . Cette autorisation permet à example-access-point de répertorier les objets dans le compartiment associé à Akua. example-access-point
Note
Toutes les opérations liées aux compartiments ne sont pas prises en charge par des points d'accès pour les compartiments à usage général. Pour de plus amples informations, veuillez consulter Compatibilité des points d'accès avec les opérations S3.
Opérations relatives aux compartiments dans les politiques relatives aux points d'accès aux compartiments d'annuaire
Les autorisations accordées dans une politique de points d'accès pour les compartiments d'annuaire ne sont efficaces que si le compartiment sous-jacent autorise les mêmes autorisations. Lorsque vous utilisez des points d’accès S3, vous devez déléguer le contrôle d’accès du compartiment au point d’accès ou ajouter les mêmes autorisations dans les stratégies du point d’accès à la politique du compartiment sous-jacent. Pour de plus amples informations, veuillez consulter Configuration des politiques IAM pour l’utilisation de points d’accès pour les compartiments de répertoires. Dans les stratégies de point d’accès, les actions de politique S3 pour les opérations de compartiment nécessitent que vous utilisiez l’ARN du point d’accès pour l’élément Resource au format suivant.
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point--usw2-az1--xa-s3"
La politique de point d'accès suivante accorde à l'utilisateur titulaire Akua du compte l'12345678901s3:ListBucketautorisation d'effectuer l'opération d'ListObjectsV2API via le point d'accès nommé. Cette autorisation permet à example-access-point--usw2-az1--xa-s3 de répertorier les objets dans le compartiment associé à Akua. example-access-point--usw2-az1--xa-s3
Note
Les opérations de compartiment ne sont pas toutes prises en charge par les points d'accès pour les compartiments de répertoire. Pour de plus amples informations, veuillez consulter Opérations sur les objets pour les points d'accès aux compartiments de répertoire.
Opérations d’objet
Les opérations d’objet sont des opérations d’API S3 qui agissent sur le type de ressource de l’objet. Par exemple, GetObject, PutObject et DeleteObject. Les actions de politique S3 pour les opérations d’objet nécessitent que l’élément Resource des politiques soit l’ARN de l’objet S3 dans les exemples de formats suivants.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/*"
Note
L’ARN de l’objet doit contenir une barre oblique après le nom du compartiment, comme indiqué dans les exemples précédents.
La politique de compartiment suivante accorde à l’utilisateur () du compte Akua l’autorisation 12345678901s3:PutObject. Cette autorisation permet à d’utiliser l’opération d’API PutObject pour charger des objets dans le compartiment S3 nommé Akua.amzn-s3-demo-bucket
Opérations d’objet dans les stratégies de point d’accès
Lorsque vous utilisez des points d’accès S3 pour contrôler l’accès aux opérations d’objet, vous pouvez opter pour des stratégies de point d’accès. Lorsque vous utilisez des stratégies de point d’accès, les actions de politique S3 pour les opérations d’objet nécessitent que vous utilisiez l’ARN du point d’accès pour l’élément Resource au format suivant :arn:aws:s3:. Pour les opérations d’objet qui utilisent des points d’accès, vous devez inclure la valeur region:account-id:accesspoint/access-point-name/object/resource/object/ après l’ARN complet du point d’accès dans l’élément Resource. Voici quelques exemples.
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point/object/*"
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point/object/prefix/*"
La stratégie de point d’accès suivante accorde à l’utilisateur titulaire du compte Akua l’autorisation 12345678901s3:GetObject. Cette autorisation permet à d’effectuer l’opération d’API GetObject via le point d’accès nommé Akua sur tous les objets du compartiment associé à ce point d’accès. example-access-point
Note
Les opérations d’objet ne sont pas toutes prises en charge par les points d’accès. Pour de plus amples informations, veuillez consulter Compatibilité des points d'accès avec les opérations S3.
Opérations sur les objets dans les politiques relatives aux points d'accès aux compartiments d'annuaire
Lorsque vous utilisez des points d'accès pour des compartiments de répertoire afin de contrôler l'accès aux opérations sur les objets, vous pouvez utiliser des politiques de point d'accès. Lorsque vous utilisez des stratégies de point d’accès, les actions de politique S3 pour les opérations d’objet nécessitent que vous utilisiez l’ARN du point d’accès pour l’élément Resource au format suivant :arn:aws:s3:. Pour les opérations d’objet qui utilisent des points d’accès, vous devez inclure la valeur region:account-id:accesspoint/access-point-name/object/resource/object/ après l’ARN complet du point d’accès dans l’élément Resource. Voici quelques exemples.
"Resource": "arn:aws:s3express:us-west-2:123456789012:accesspoint/example-access-point--usw2-az1--xa-s3/object/*"
"Resource": "arn:aws:s3express:us-west-2:123456789012:accesspoint/example-access-point--usw2-az1--xa-s3/object/prefix/*"
La stratégie de point d’accès suivante accorde à l’utilisateur titulaire du compte Akua l’autorisation 12345678901s3:GetObject. Cette autorisation permet à d’effectuer l’opération d’API GetObject via le point d’accès nommé Akua sur tous les objets du compartiment associé à ce point d’accès. example-access-point--usw2-az1--xa-s3
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAkuato get objects through access point", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::12345678901:user/Akua" }, "Action": "s3express:CreateSession","s3:GetObject" "Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point--usw2-az1--xa-s3/object/*" } ] }
Note
Les opérations sur les objets ne sont pas toutes prises en charge par les points d'accès pour les compartiments de répertoire. Pour de plus amples informations, veuillez consulter Opérations sur les objets pour les points d'accès aux compartiments de répertoire.
Point d'accès pour les opérations de godet à usage général
Les opérations de point d’accès sont des opérations d’API S3 qui agissent sur le type de ressource accesspoint. Par exemple, CreateAccessPoint, DeleteAccessPoint et GetAccessPointPolicy. Les actions de politique S3 pour les opérations de point d’accès ne peuvent être utilisées que dans les politiques basées sur l’identité IAM, et non dans les politiques de compartiment ou les stratégies de point d’accès. Les opérations de points d’accès nécessitent que l’élément Resource soit l’ARN du point d’accès dans l’exemple de format suivant.
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point"
La politique basée sur l’identité IAM suivante accorde l’autorisation s3:GetAccessPointPolicy d’effectuer l’opération d’API GetAccessPointPolicy au niveau du point d’accès S3 nommé .example-access-point
Lorsque vous utilisez des points d’accès, pour contrôler l’accès aux opérations de compartiment, consultez Opérations relatives aux compartiments dans les politiques relatives aux points d'accès pour les compartiments à usage général et, pour contrôler l’accès aux opérations d’objet, consultez Opérations d’objet dans les stratégies de point d’accès. Pour plus d’informations sur la configuration de stratégies de point d’accès, consultez Configuration des politiques IAM pour l’utilisation des points d’accès.
Point d'accès pour les opérations relatives aux buckets d'annuaires
Les opérations de point d'accès pour les compartiments d'annuaire sont des opérations d'API S3 qui opèrent sur le type de accesspoint ressource. Par exemple, CreateAccessPoint, DeleteAccessPoint et GetAccessPointPolicy. Les actions de politique S3 pour les opérations de point d’accès ne peuvent être utilisées que dans les politiques basées sur l’identité IAM, et non dans les politiques de compartiment ou les stratégies de point d’accès. Les points d'accès pour les opérations de compartiments de répertoire nécessitent que l'Resourceélément soit l'ARN du point d'accès dans l'exemple de format suivant.
"Resource": "arn:aws:s3:us-west-2:123456789012:accesspoint/example-access-point--usw2-az1--xa-s3"
La politique basée sur l'identité IAM suivante accorde l's3express:GetAccessPointPolicyautorisation d'effectuer l'opération d'GetAccessPointPolicyAPI sur le point d'accès nommé. example-access-point--usw2-az1--xa-s3
La politique basée sur l'identité IAM suivante accorde l's3express:CreateAccessPointautorisation de créer des points d'accès pour les buckets d'annuaire.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Grant CreateAccessPoint.", "Principal": "*", "Action": "s3express:CreateSession", "s3express:CreateAccessPoint""Effect": "Allow", "Resource": "*" } ] }
La politique basée sur l'identité IAM suivante accorde l's3express:PutAccessPointScopeautorisation de créer une étendue de point d'accès pour les points d'accès pour les compartiments d'annuaire.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Grant PutAccessPointScope", "Principal": "*", "Action": "s3express:CreateSession", "s3express:CreateAccessPoint", "S3Express:PutAccessPointScope""Effect": "Allow", "Resource": "*", } ] }
Lorsque vous utilisez des points d'accès pour les compartiments de répertoire afin de contrôler l'accès aux opérations des compartiments, voir Opérations relatives aux compartiments dans les politiques relatives aux points d'accès aux compartiments d'annuaire ; pour contrôler l'accès aux opérations sur les objets, voirOpérations sur les objets dans les politiques relatives aux points d'accès aux compartiments d'annuaire. Pour plus d'informations sur la configuration des points d'accès pour les politiques de compartiments d'annuaire, consultezConfiguration des politiques IAM pour l’utilisation de points d’accès pour les compartiments de répertoires.
Opérations de point d’accès Object Lambda
Amazon S3 Object Lambda vous donne la possibilité d’ajouter votre propre code aux requêtes Amazon S3 GET, LIST et HEAD afin de modifier et de traiter les données lorsqu’elles sont renvoyées vers une application. Vous pouvez effectuer des demandes via un point d’accès Object Lambda, ce qui fonctionne de la même manière que les demandes via d’autres points d’accès. Pour de plus amples informations, veuillez consulter Transformation d’objets avec S3 Object Lambda.
Pour plus d’informations sur la configuration de politiques pour les opérations de point d’accès Object Lambda, consultez Configuration des politiques IAM pour les points d’accès Object Lambda.
Opérations de point d’accès multi-régions
Les points d’accès multi-régions Amazon S3 fournissent un point de terminaison global que les applications peuvent utiliser pour traiter les demandes provenant de compartiments S3 situés dans plusieurs Région AWS. Vous pouvez utiliser des points d’accès multi-régions pour créer des applications multi-régions avec la même architecture que celle utilisée dans une seule région, puis exécuter ces applications partout dans le monde. Pour de plus amples informations, veuillez consulter Gestion du trafic multirégional avec des points d’accès multirégionaux.
Pour plus d’informations sur la configuration de stratégies pour les opérations de points d’accès multi-régions, consultez Exemples de politique de point d'accès multi-régions.
Opérations relatives aux tâches par lots
Les opérations relatives aux tâches par lots (opérations par lot) sont des opérations d’API S3 qui agissent sur le type de ressource job. Par exemple : DescribeJob et CreateJob. Les actions de politique S3 pour les opérations relatives aux tâches par lots ne peuvent être utilisées que dans les politiques basées sur l’identité IAM, et non dans les politiques de compartiment. En outre, les opérations relatives aux tâches par lots nécessitent que l’élément Resource des politiques basées sur l’identité IAM soit l’ARN de l’élément job dans l’exemple de format suivant.
"Resource": "arn:aws:s3:*:123456789012:job/*"
La politique basée sur l'identité IAM suivante accorde l's3:DescribeJobautorisation d'effectuer l'opération d'DescribeJobAPI sur le job S3 Batch Operations nommé. example-job
Opérations de configuration S3 Storage Lens
Pour plus d’informations sur les opérations de configuration S3 Storage Lens, consultez Définition d’autorisations Amazon S3 Storage Lens.
Opérations de compte
Les opérations de compte sont des opérations d’API S3 qui agissent au niveau du compte. Par exemple, GetPublicAccessBlock (pour le compte). Le compte n’est pas un type de ressource défini par Amazon S3. Les actions de politique S3 pour les opérations de compte ne peuvent être utilisées que dans les politiques basées sur l’identité IAM, et non dans les politiques de compartiment. En outre, les opérations de compte nécessitent que l’élément Resource des politiques basées sur l’identité IAM soit "*".
La politique basée sur l’identité IAM suivante accorde l’autorisation s3:GetAccountPublicAccessBlock d’effectuer l’opération d’API GetPublicAccessBlock au niveau du compte et de récupérer les paramètres de blocage de l’accès public au niveau du compte.
Exemples de politiques pour Amazon S3
-
Pour voir des exemples de politiques Amazon S3 basées sur l’identité, consultez Politiques basées sur l’identité pour Amazon S3.
-
Pour afficher des exemples de politiques basées sur les ressources Amazon S3, consultez Politiques de compartiment pour Amazon S3 et Configuration des politiques IAM pour l’utilisation des points d’accès.
Ressources de politique pour Amazon S3
Prend en charge les ressources de politique : oui
Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel principal peut effectuer des actions sur quelles ressources et dans quelles conditions.
L’élément de politique JSON Resource indique le ou les objets auxquels l’action s’applique. Il est recommandé de définir une ressource à l’aide de son Amazon Resource Name (ARN). Pour les actions qui ne prennent pas en charge les autorisations au niveau des ressources, utilisez un caractère générique (*) pour indiquer que l'instruction s'applique à toutes les ressources.
"Resource": "*"
Certaines actions d’API Amazon S3 prennent en charge plusieurs ressources. Par exemple, sachant que s3:GetObject accède à et à example-resource-1, un principal doit disposer des autorisations d’accès à ces deux ressources. Pour spécifier plusieurs ressources dans une seule instruction, séparez-les ARNs par des virgules, comme indiqué dans l'exemple suivant. example-resource-2
"Resource": [ "example-resource-1", "example-resource-2"
Dans Amazon S3, les ressources sont les compartiments, les objets, les points d’accès ou les tâches. Dans une politique, utilisez l’Amazon Resource Name (ARN) du compartiment, de l’objet, du point d’accès ou de la tâche pour identifier la ressource.
Pour consulter la liste complète des types de ressources Amazon S3 et de leurs caractéristiques ARNs, consultez la section Ressources définies par Amazon S3 dans le Service Authorization Reference. Pour savoir les actions avec lesquelles vous pouvez spécifier l’ARN de chaque ressource, consultez Actions définies par Amazon S3.
Pour plus d’informations sur les autorisations relatives aux opérations d’API S3 par type de ressource S3, consultez Autorisations requises pour les opérations d’API Amazon S3.
Caractères génériques dans la ressource ARNs
Vous pouvez utiliser des caractères génériques dans l’ARN d’une ressource. Vous pouvez utiliser des caractères génériques (* et ?) dans n’importe quel segment d’ARN (parties séparées par des signes deux-points). Un astérisque (*) représente n’importe quelle combinaison de zéro ou de plusieurs caractères, et un point d’interrogation (?) représente un seul caractère quelconque. Vous pouvez utiliser plusieurs caractères * ou ? dans chaque segment. Toutefois, un caractère générique ne peut pas couvrir des segments.
-
L’ARN suivant utilise le caractère générique
*dans la partierelative-IDde l’ARN pour identifier tous les objets du compartiment.amzn-s3-demo-bucketarn:aws:s3:::amzn-s3-demo-bucket/* -
L’ARN suivant utilise
*pour indiquer tous les compartiments et tous les objets Amazon S3.arn:aws:s3:::* -
L’ARN suivant utilise les deux caractères génériques,
*et?, dans la partierelative-ID. Cet ARN identifie tous les objets des compartiments, par exemple,amzn-s3-demo-example1bucket,amzn-s3-demo-example2bucket, etc.amzn-s3-demo-example3bucketarn:aws:s3:::amzn-s3-demo-example?bucket/*
Variables de politique pour les ressources ARNs
Vous pouvez utiliser des variables de politique dans Amazon S3 ARNs. Lors de l’évaluation de la politique, ces variables prédéfinies sont remplacées par leurs valeurs correspondantes. Supposons que vous organisiez votre compartiment comme un ensemble de dossiers, avec un dossier pour chacun de vos utilisateurs. Le nom de dossier est le même que le nom d’utilisateur. Pour octroyer aux utilisateurs des autorisations à leurs dossiers, vous pouvez spécifier une variable de stratégie dans l’ARN de la ressource :
arn:aws:s3:::bucket_name/developers/${aws:username}/
Lors de l’exécution, quand la politique est évaluée, la variable ${aws:username} dans l’ARN de la ressource est remplacée par le nom de l’utilisateur effectuant la demande.
Exemples de politiques pour Amazon S3
-
Pour voir des exemples de politiques Amazon S3 basées sur l’identité, consultez Politiques basées sur l’identité pour Amazon S3.
-
Pour afficher des exemples de politiques basées sur les ressources Amazon S3, consultez Politiques de compartiment pour Amazon S3 et Configuration des politiques IAM pour l’utilisation des points d’accès.
Clés de condition de politique pour Amazon S3
Prend en charge les clés de condition de politique spécifiques au service : oui
Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel principal peut effectuer des actions sur quelles ressources et dans quelles conditions.
L'Conditionélément indique à quel moment les instructions sont exécutées en fonction de critères définis. Vous pouvez créer des expressions conditionnelles qui utilisent des opérateurs de condition, tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande. Pour voir toutes les clés de condition AWS globales, voir les clés de contexte de condition AWS globales dans le guide de l'utilisateur IAM.
Chaque clé de condition Amazon S3 est mappée à l’en-tête de demande du même nom autorisé par l’API sur lequel la condition peut être définie. Les clés de condition spécifiques à Amazon S3 dictent le comportement des en-têtes de demande du même nom. Par exemple, la clé de condition s3:VersionId utilisée pour octroyer l’autorisation conditionnelle pour s3:GetObjectVersion définit le comportement du paramètre de requête versionId que vous définissez dans une demande GET Object.
Pour afficher la liste des clés de condition Amazon S3, consultez Clés de condition pour Amazon S3 dans la Référence de l’autorisation de service. Pour savoir avec quelles actions et ressources vous pouvez utiliser une clé de condition, consultez Actions définies par Amazon S3.
Exemple : Restreindre les chargements aux objets avec une classe de stockage spécifique
Supposons que le compte A, représenté par l’ID de compte , possède un compartiment. L’administrateur du compte A souhaite restreindre 123456789012un utilisateur du compte A, afin que Dave ne puisse charger des objets dans le compartiment que si l’objet est stocké dans la classe de stockage DaveSTANDARD_IA. Pour restreindre les chargements d’objets vers une classe de stockage spécifique, l’administrateur de compte A peut utiliser la clé de condition s3:x-amz-storage-class, comme illustré dans l’exemple de politique de compartiment suivant.
Dans l’exemple, le bloc Condition spécifie la condition StringEquals qui est appliquée à la paire clé-valeur spécifiée, "s3:x-amz-acl":["public-read"]. Un jeu de clés prédéfinis peut être utilisé pour exprimer une condition. L’exemple utilise la clé de condition s3:x-amz-acl. Cette condition exige que l’utilisateur inclue l’en-tête x-amz-acl avec la valeur public-read dans chaque demande PutObject.
Exemples de politiques pour Amazon S3
-
Pour voir des exemples de politiques Amazon S3 basées sur l’identité, consultez Politiques basées sur l’identité pour Amazon S3.
-
Pour afficher des exemples de politiques basées sur les ressources Amazon S3, consultez Politiques de compartiment pour Amazon S3 et Configuration des politiques IAM pour l’utilisation des points d’accès.
ACLs dans Amazon S3
Supports ACLs : Oui
Dans Amazon S3, les listes de contrôle d'accès (ACLs) contrôlent les Comptes AWS personnes autorisées à accéder à une ressource. ACLs sont similaires aux politiques basées sur les ressources, bien qu'elles n'utilisent pas le format de document de politique JSON.
Important
La majorité des cas d'utilisation modernes d'Amazon S3 ne nécessitent plus l'utilisation de ACLs.
Pour plus d'informations sur l'utilisation ACLs pour contrôler l'accès dans Amazon S3, consultezGérer l'accès avec ACLs.
ABAC avec Amazon S3
Prend en charge ABAC (identifications dans les politiques) : partiellement
Le contrôle d'accès basé sur les attributs (ABAC) est une stratégie d'autorisation qui définit les autorisations en fonction d'attributs appelés balises. Vous pouvez associer des balises aux entités et aux AWS ressources IAM, puis concevoir des politiques ABAC pour autoriser les opérations lorsque la balise du principal correspond à la balise de la ressource.
Pour contrôler l’accès basé sur des étiquettes, vous devez fournir les informations d’étiquette dans l’élément de condition d’une politique utilisant les clés de condition aws:ResourceTag/, key-nameaws:RequestTag/ ou key-nameaws:TagKeys.
Si un service prend en charge les trois clés de condition pour tous les types de ressources, alors la valeur pour ce service est Oui. Si un service prend en charge les trois clés de condition pour certains types de ressources uniquement, la valeur est Partielle.
Pour plus d’informations sur ABAC, consultez Définition d’autorisations avec l’autorisation ABAC dans le Guide de l’utilisateur IAM. Pour accéder à un didacticiel décrivant les étapes de configuration de l’ABAC, consultez Utilisation du contrôle d’accès par attributs (ABAC) dans le Guide de l’utilisateur IAM.
Pour plus d'informations sur les ressources qui prennent en charge l'ABAC dans Amazon S3, consultez la section Utilisation de balises pour le contrôle d'accès basé sur les attributs (ABAC).
Pour obtenir des exemples de politiques basées sur l’identité permettant de limiter l’accès aux tâches des opérations par lot S3 en fonction des balises, consultez Contrôle des autorisations pour les opérations par lot à l’aide de balises de tâche.
ABAC et balises d’objet
Dans les politiques ABAC, les objets utilisent des balises s3: plutôt que des balises aws:. Pour contrôler l’accès aux objets avec des balises d’objet, vous devez fournir les informations de balise dans l’élément Condition d’une politique avec les balises suivantes :
-
s3:ExistingObjectTag/tag-key -
s3:RequestObjectTagKeys -
s3:RequestObjectTag/tag-key
Pour plus d’informations sur l’utilisation de balises d’objet pour contrôler l’accès, y compris des exemples de politiques d’autorisation, consultez Stratégies de balisage et de contrôle d’accès.
Utilisation d’informations d’identification temporaires avec Amazon S3
Prend en charge les informations d’identification temporaires : oui
Les informations d'identification temporaires fournissent un accès à court terme aux AWS ressources et sont automatiquement créées lorsque vous utilisez la fédération ou que vous changez de rôle. AWS recommande de générer dynamiquement des informations d'identification temporaires au lieu d'utiliser des clés d'accès à long terme. Pour plus d'informations, consultez la section Informations d'identification de sécurité temporaires dans IAM et Services AWS compatibles avec IAM dans le Guide de l'utilisateur IAM.
Transmission des sessions d’accès pour Amazon S3
Prend en charge les sessions d’accès direct (FAS) : oui
Les sessions d'accès direct (FAS) utilisent les autorisations du principal appelant et Service AWS, combinées Service AWS à la demande d'envoi de demandes aux services en aval. Pour plus de détails sur une politique lors de la formulation de demandes FAS, consultez Transmission des sessions d’accès.
Le FAS est utilisé par Amazon S3 pour effectuer des appels AWS KMS afin de déchiffrer un objet lorsque SSE-KMS a été utilisé pour le chiffrer. Pour de plus amples informations, veuillez consulter Utilisation du chiffrement côté serveur à l'aide de AWS KMS clés (SSE-KMS).
Les autorisations d’accès S3 utilisent également FAS. Après avoir créé une autorisation d’accès à vos données S3 pour une identité particulière, le bénéficiaire demande un identifiant temporaire aux autorisations d’accès S3. S3 Access Grants obtient un identifiant temporaire pour le demandeur AWS STS et le transmet au demandeur. Pour de plus amples informations, veuillez consulter Demande d’un accès aux données Amazon S3 via les autorisations d’accès S3.
Rôles de service pour Amazon S3
Prend en charge les rôles de service : oui
Un rôle de service est un rôle IAM qu’un service endosse pour accomplir des actions en votre nom. Un administrateur IAM peut créer, modifier et supprimer un rôle de service à partir d’IAM. Pour plus d’informations, consultez Création d’un rôle pour la délégation d’autorisations à un Service AWS dans le Guide de l’utilisateur IAM.
Avertissement
La modification des autorisations d’un rôle de service peut altérer la fonctionnalité d’Amazon S3. Ne modifiez des rôles de service que quand Amazon S3 vous le conseille.
Rôles liés à un service pour Amazon S3
Prend en charge les rôles liés à un service : partiellement
Un rôle lié à un service est un type de rôle de service lié à un. Service AWS Le service peut endosser le rôle afin d’effectuer une action en votre nom. Les rôles liés à un service apparaissent dans votre Compte AWS répertoire et appartiennent au service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service.
Amazon S3 prend en charge les rôles liés au service pour Amazon S3 Storage Lens. Pour plus d’informations sur la création ou la gestion des rôles liés à un service Amazon S3, consultez Utilisation des rôles liés à un service pour Amazon S3 Storage Lens.
Service Amazon S3 en tant que principal
| Nom du service dans la politique | Fonctionnalité de S3 | En savoir plus |
|---|---|---|
|
|
Réplication S3 |
Présentation de la configuration de la réplication en direct |
|
|
Notifications d’événements S3 |
|
|
|
Inventaire S3 |
|
|
|
Autorisations d’accès S3 |
|
|
|
Opérations par lot S3 |
|
|
|
Journalisation des accès au serveur S3 |
Activation de la journalisation des accès au serveur Amazon S3 |
|
|
S3 Storage Lens |
Afficher les métriques Amazon S3 Storage Lens à l’aide d’une exportation de données |