AWS Identity and Access Management (IAM) pour S3 Express One Zone - Amazon Simple Storage Service

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.

AWS Identity and Access Management (IAM) pour S3 Express One Zone

AWS Identity and Access Management (IAM) est un outil Service AWS qui aide les administrateurs à contrôler en toute sécurité l'accès aux AWS ressources. Les administrateurs IAM contrôlent qui peut être authentifié (connecté) et autorisé (disposer d’autorisations) à utiliser des ressources Amazon S3 dans S3 Express One Zone. Vous pouvez utiliser IAM sans frais supplémentaires.

Par défaut, les utilisateurs ne disposent pas d’autorisations pour les compartiments de répertoires et les opérations S3 Express One Zone. Pour accorder des autorisations d’accès pour les compartiments de répertoires, vous pouvez utiliser IAM pour créer des utilisateurs, des groupes ou des rôles, et attacher des autorisations à ces identités. Pour plus d’informations sur IAM, consultez Bonnes pratiques de sécurité dans IAM dans le Guide de l’utilisateur IAM.

Pour fournir l’accès, vous pouvez ajouter des autorisations à vos utilisateurs, groupes ou rôles via les méthodes suivantes :

Par défaut, les compartiments de répertoires sont privés et sont accessibles uniquement par les utilisateurs auxquels l’accès a été explicitement accordé. La limite de contrôle d’accès pour les compartiments de répertoires est définie uniquement au niveau compartiment. En revanche, la limite de contrôle d’accès pour les compartiments à usage général peut être définie au niveau des compartiments, du préfixe ou de la balise d’objet. Cette différence signifie que les compartiments de répertoires sont la seule ressource que vous pouvez inclure dans les politiques de compartiment ou les politiques d’identité IAM pour accéder à S3 Express One Zone.

Avec S3 Express One Zone, outre l’autorisation IAM, vous authentifiez et autorisez les demandes par le biais d’un nouveau mécanisme basé sur les sessions et géré par l’opération d’API CreateSession. Vous pouvez utiliser CreateSession pour demander des informations d’identification temporaires afin de bénéficier d’un accès à faible latence à votre compartiment. Ces informations d’identification temporaires sont limitées à un compartiment de répertoires spécifique.

Pour travailler avecCreateSession, nous vous recommandons d'utiliser la dernière version des AWS SDK ou d'utiliser le AWS Command Line Interface (AWS CLI). Les AWS SDK pris en charge et le gestionnaire AWS CLI gèrent l'établissement, le rafraîchissement et la résiliation des sessions en votre nom.

Vous utilisez des jetons de session avec uniquement des opérations zonales (niveau objet) (à l’exception de CopyObject et HeadBucket) pour répartir la latence associée à l’autorisation sur un certain nombre de demandes dans une session. Pour les opérations d’API de point de terminaison régional (opérations de niveau compartiment), vous utilisez l’autorisation IAM, qui n’implique pas la gestion d’une session. Pour plus d’informations, consultez AWS Identity and Access Management (IAM) pour S3 Express One Zone et Autorisation CreateSession.

Pour plus d’informations sur IAM pour S3 Express One Zone, consultez les rubriques suivantes.

Principaux

Lorsque vous créez une politique basée sur les ressources pour accorder l’accès à vos compartiments, vous devez utiliser l’élément Principal pour spécifier la personne ou l’application qui peut effectuer une demande d’action ou d’opération sur cette ressource. Pour des politiques de compartiment de répertoires, vous pouvez utiliser les principaux suivants :

  • Un AWS compte

  • Un utilisateur IAM

  • Un rôle IAM

  • Un utilisateur fédéré

Pour plus d’informations, consultez Principal dans le Guide de l’utilisateur IAM.

Ressources

Les Amazon Resource Names (ARN) pour les compartiments de répertoire contiennent l'espace de s3express noms Région AWS, l'ID de AWS compte et le nom du compartiment de répertoire, qui inclut l'ID de zone de disponibilité. Pour accéder à votre compartiment de répertoires et y effectuer des actions, vous devez utiliser le format d’ARN suivant :

arn:aws:s3express:region:account-id:bucket/base-bucket-name--azid--x-s3

Pour plus d’informations sur les ARN, consultez Amazon Resource Names (ARNs) dans le Guide de l’utilisateur IAM. Pour plus d’informations sur les ressources, consultez Éléments de politique JSON IAM : Resource dans le Guide de l’utilisateur IAM.

Actions pour S3 Express One Zone

Dans une politique basée sur l’identité IAM ou sur les ressources, vous définissez quelles actions S3 sont autorisées ou refusées. Les actions S3 Express One Zone correspondent à des opérations d’API spécifiques. S3 Express One Zone possède un espace de noms IAM unique distinct de l’espace de noms standard pour Amazon S3. Cet espace de noms est s3express.

Lorsque vous accordez l’autorisation s3express:CreateSession, cela permet à l’opération d’API CreateSession de récupérer les jetons de session lors de l’accès aux opérations d’API de point de terminaison zonal (ou de niveau objet). Ces jetons de session renvoient des informations d’identification qui sont utilisées pour accorder l’accès à toutes les autres opérations d’API de point de terminaison zonal. Par conséquent, il n’est pas nécessaire d’accorder des autorisations d’accès aux opérations d’API zonales en utilisant des politiques IAM. Au lieu de cela, le jeton de session permet l’accès.

Pour plus d’informations sur les opérations d’API de points de terminaison zonaux et régionaux, consultez Mise en réseau pour S3 Express One Zone. Pour en savoir plus sur l’opération d’API CreateSession, consultez CreateSession dans la Référence d’API Amazon Simple Storage Service.

Vous pouvez indiquer les actions suivantes dans l'élément Action d'une déclaration de politique IAM. Utilisez des politiques pour accorder des autorisations permettant d'effectuer une opération dans AWS. Lorsque vous utilisez une action dans une politique, vous autorisez ou refusez généralement l’accès à l’opération d’API du même nom. Toutefois, dans certains cas, une seule action contrôle l’accès à plusieurs opérations d’API. L’accès aux actions de niveau compartiment peut être accordé uniquement dans des politiques basées sur l’identité IAM (utilisateur ou rôle) et non pas dans des politiques de compartiment.

Actions et clés de condition pour S3 Express One Zone
Action API Description Niveau d'accès Clés de condition

s3express:CreateBucket

CreateBucket

Accorde l’autorisation de créer un nouveau compartiment.

Écrire

s3express:authType

s3express:LocationName

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:CreateSession CreateSession

Accorde l’autorisation de créer un jeton de session, qui est utilisé pour accorder l’accès à toutes les opérations d’API zonales (niveau objet), telles que PutObject, GetObject, etc.

Écrire

s3express:authType

s3express:SessionMode

s3express:ResourceAccount

s3express:signatureversion

s3express:signatureAge

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:DeleteBucket DeleteBucket

Accorde l’autorisation de supprimer le compartiment nommé dans l’URI.

Écrire

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:DeleteBucketPolicy DeleteBucketPolicy

Accorde l’autorisation de supprimer la politique sur un compartiment spécifié.

Gestion des autorisations

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:GetBucketPolicy GetBucketPolicy

Accorde l’autorisation de renvoyer la politique du compartiment spécifié.

Lecture

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:ListAllMyDirectoryBuckets ListDirectoryBuckets

Accorde l’autorisation de répertorier tous les compartiments de répertoires appartenant à l’expéditeur authentifié de la demande.

Liste

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

s3express:PutBucketPolicy PutBucketPolicy

Accorde l’autorisation d’ajouter ou de remplacer une politique de compartiment sur un compartiment.

Gestion des autorisations

s3express:authType

s3express:ResourceAccount

s3express:signatureversion

s3express:TlsVersion

s3express:x-amz-content-sha256

Clés de condition pour S3 Express One Zone

S3 Express One Zone définit les clés de condition suivantes que vous pouvez utiliser dans l’élément Condition d’une politique IAM. Vous pouvez utiliser ces clés pour affiner les conditions d'application de la déclaration de politique.

Clé de condition Description Type
s3express:authType

Filtre l’accès en fonction de la méthode d’authentification. Pour limiter les requêtes entrantes afin d'utiliser d'une méthode d'authentification spécifique, vous pouvez utiliser cette clé de condition facultative. Par exemple, vous pouvez utiliser cette clé de condition pour autoriser uniquement l'en-tête HTTPAuthorization pour l'authentification de la demande.

Valeurs valides : REST-HEADER, REST-QUERY-STRING

Chaîne
s3express:LocationName

Filtre l’accès à l’opération d’API CreateBucket en fonction d’un ID de zone de disponibilité (ID d’AZ) spécifique, par exemple, usw2-az1.

Exemple de valeur : usw2-az1

Chaîne
s3express:ResourceAccount

Filtre l'accès en fonction de l' Compte AWS identifiant du propriétaire de la ressource.

Pour restreindre l'accès des utilisateurs, des rôles ou des applications aux compartiments de répertoire appartenant à un Compte AWS ID spécifique, vous pouvez utiliser la clé de s3express:ResourceAccount condition aws:ResourceAccount ou. Vous pouvez utiliser cette clé de condition dans les politiques d'identité AWS Identity and Access Management (IAM) ou dans les politiques de point de terminaison du cloud privé virtuel (VPC). Par exemple, vous pouvez utiliser cette clé de condition pour empêcher les clients de votre VPC d'accéder à des buckets dont vous n'êtes pas le propriétaire.

Exemple de valeur : 111122223333

Chaîne
s3express:SessionMode

Filtre l’accès en fonction de l’autorisation demandée par l’opération d’API CreateSession. Par défaut, la session est ReadWrite. Vous pouvez utiliser cette clé de condition pour limiter l’accès à ReadOnly ou pour refuser explicitement l’accès ReadWrite. Pour plus d'informations, consultez Exemples de politiques de compartiment de répertoires pour S3 Express One Zone et CreateSession dans la référence de l'API Amazon Simple Storage Service.

Valeurs valides : ReadWrite, ReadOnly

Chaîne
s3express:signatureAge

Filtre l’accès en fonction de l’âge en millisecondes de la signature de la demande. Cette condition fonctionne uniquement pour les URL présignées.

Dans AWS la version 4 de signature, la clé de signature est valide jusqu'à sept jours. Par conséquent, les signatures ne restent valides que pendant sept jours. Pour plus d’informations, consultez Introduction à la signature des demandes dans la Référence d’API Amazon Simple Storage Service. Vous pouvez utiliser cette condition pour limiter davantage la durée de la signature.

Exemple de valeur : 600000

Numérique
s3express:signatureversion

Identifie la version de AWS Signature que vous souhaitez prendre en charge pour les demandes authentifiées. Pour les demandes authentifiées, S3 Express One Zone prend en charge Signature Version 4.

Valeur valide : "AWS4-HMAC-SHA256" (identifie la version 4 de la signature)

Chaîne
s3express:TlsVersion

Filtre l’accès en fonction de la version TLS utilisée par le client.

Vous pouvez utiliser la clé de s3:TlsVersion condition pour écrire des politiques IAM, de point de terminaison de cloud privé virtuel (VPCE) ou de bucket qui limitent l'accès des utilisateurs ou des applications aux compartiments d'annuaire en fonction de la version TLS utilisée par le client. Vous pouvez utiliser cette clé de condition pour écrire des politiques qui nécessitent une version TLS minimale.

Exemple de valeur : 1.3

Numérique
s3express:x-amz-content-sha256

Filtre l’accès en fonction du contenu non signé dans votre compartiment.

Vous pouvez utiliser cette clé de condition pour interdire les contenus non signés dans votre compartiment.

Lorsque vous utilisez Signature Version 4, pour les demandes qui utilisent l’en-tête Authorization, vous ajoutez l’en-tête x-amz-content-sha256 dans le calcul de signature, puis définissez sa valeur sur la charge utile du hachage.

Vous pouvez utiliser cette clé de condition dans votre politique de compartiment pour refuser tous les chargements où les charges utiles ne sont pas signées. Par exemple :

Valeur valide : UNSIGNED-PAYLOAD

Chaîne

Comment les opérations d’API sont autorisées et authentifiées

Le tableau suivant répertorie les informations d’autorisation et d’authentification pour les opérations d’API S3 Express One Zone. Pour chaque opération d’API, le tableau indique le nom de l’opération d’API, l’action IAM, le type de point de terminaison (régional ou zonal) et le mécanisme d’autorisation (IAM ou basé sur une session). Ce tableau indique également les endroits où l’accès intercompte est pris en charge. L’accès aux actions de niveau compartiment peut être accordé uniquement dans des politiques basées sur l’identité IAM (utilisateur ou rôle), et non pas dans des politiques de compartiment.

API Type de point de terminaison Action IAM Accès intercomptes
CreateBucket Régional s3express:CreateBucket Non
DeleteBucket Régional s3express:DeleteBucket Non
ListDirectoryBuckets Régional s3express:ListAllMyDirectoryBuckets Non
PutBucketPolicy Régional s3express:PutBucketPolicy Non
GetBucketPolicy Régional s3express:GetBucketPolicy Non
DeleteBucketPolicy Régional s3express:DeleteBucketPolicy Non
CreateSession Zonal s3express:CreateSession Oui
CopyObject Zonal s3express:CreateSession Oui
DeleteObject Zonal s3express:CreateSession Oui
DeleteObjects Zonal s3express:CreateSession Oui
HeadObject Zonal s3express:CreateSession Oui
PutObject Zonal s3express:CreateSession Oui
GetObjectAttributes Zonal s3express:CreateSession Oui
ListObjectsV2 Zonal s3express:CreateSession Oui
HeadBucket Zonal s3express:CreateSession Oui
CreateMultipartUpload Zonal s3express:CreateSession Oui
UploadPart Zonal s3express:CreateSession Oui
UploadPartCopy Zonal s3express:CreateSession Oui
CompleteMultipartUpload Zonal s3express:CreateSession Oui
AbortMultipartUpload Zonal s3express:CreateSession Oui
ListParts Zonal s3express:CreateSession Oui
ListMultipartUploads Zonal s3express:CreateSession Oui