Configuration des subventions d'accès Amazon S3 avec IAM Identity Center - AWS IAM Identity Center

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.

Configuration des subventions d'accès Amazon S3 avec IAM Identity Center

Amazon S3 Access Grants offre la flexibilité nécessaire pour accorder un contrôle d'accès précis basé sur l'identité aux sites S3. Vous pouvez utiliser Amazon S3 Access Grants pour accorder l'accès au compartiment Amazon S3 directement aux utilisateurs et aux groupes de votre entreprise. Suivez ces étapes pour activer S3 Access Grants avec IAM Identity Center et obtenir une propagation d'identité fiable.

Prérequis

Avant de commencer ce didacticiel, vous devez configurer les éléments suivants :

Configuration des autorisations d'accès S3 pour une propagation d'identité fiable via IAM Identity Center

Si vous possédez déjà une Access Grants instance Amazon S3 avec un emplacement enregistré, procédez comme suit :
  1. Associez votre instance IAM Identity Center.

  2. Créez une subvention.

Si vous n'avez pas Access Grants encore créé d'Amazon S3, procédez comme suit :
  1. Création d'une Access Grants instance S3 : vous pouvez créer une Access Grants instance S3 par Région AWS. Lorsque vous créez l'Access Grantsinstance S3, assurez-vous de cocher la case Ajouter une instance IAM Identity Center et de fournir l'ARN de votre instance IAM Identity Center. Sélectionnez Suivant.

    L'image suivante montre la page Créer une Access Grants instance S3 dans la Access Grants console Amazon S3 :

    Créez une page d'Access Grantsinstance S3 dans la console S3 Access Grants.
  2. Enregistrer un emplacement : après avoir créé et créé une Access Grants instance Amazon S3 Région AWS dans un compte, vous enregistrez un emplacement S3 dans cette instance. Un Access Grants emplacement S3 associe la région S3 par défaut (S3://), un compartiment ou un préfixe à un rôle IAM. S3 Access Grants assume ce rôle Amazon S3 pour vendre des informations d'identification temporaires au bénéficiaire qui accède à cet emplacement particulier. Vous devez d'abord enregistrer au moins un emplacement dans votre Access Grants instance S3 avant de pouvoir créer une autorisation d'accès.

    Pour l'étendue de localisations3://, spécifiez, qui inclut tous vos compartiments de cette région. Il s'agit de l'étendue de localisation recommandée pour la plupart des cas d'utilisation. Si vous avez un cas d'utilisation de gestion avancée des accès, vous pouvez définir l'étendue de localisation en fonction d'un compartiment s3://bucket ou d'un préfixe spécifique au sein d'un compartiments3://bucket/prefix-with-path. Pour plus d'informations, consultez Enregistrer un emplacement dans le guide de l'utilisateur d'Amazon Simple Storage Service.

    Note

    Assurez-vous que les emplacements S3 des AWS Glue tables auxquelles vous souhaitez accorder l'accès sont inclus dans ce chemin.

    La procédure vous oblige à configurer un rôle IAM pour l'emplacement. Ce rôle doit inclure les autorisations d'accès à la zone de localisation. Vous pouvez utiliser l'assistant de console S3 pour créer le rôle. Vous devez spécifier l'ARN de votre Access Grants instance S3 dans les politiques relatives à ce rôle IAM. La valeur par défaut de l'ARN de votre Access Grants instance S3 estarn:aws:s3:Your-Region:Your-AWS-Account-ID:access-grants/default.

    L'exemple de politique d'autorisation suivant donne à Amazon S3 des autorisations pour le rôle IAM que vous avez créé. Et l'exemple de politique de confiance qui suit permet au principal du Access Grants service S3 d'assumer le rôle IAM.

    1. Stratégie d'autorisation

      Pour utiliser ces politiques, remplacez celles de italicized placeholder text l'exemple de politique par vos propres informations. Pour obtenir des instructions supplémentaires, voir Créer une politique ou Modifier une politique.

      JSON
      { "Version": "2012-10-17", "Statement": [ { "Sid": "ObjectLevelReadPermissions", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectAcl", "s3:GetObjectVersionAcl", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "Your-AWS-Account-ID" }, "ArnEquals": { "s3:AccessGrantsInstanceArn": [ "Your-Custom-Access-Grants-Location-ARN" ] } } }, { "Sid": "ObjectLevelWritePermissions", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectVersionAcl", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "Your-AWS-Account-ID" }, "ArnEquals": { "s3:AccessGrantsInstanceArn": [ "Your-Custom-Access-Grants-Location-ARN" ] } } }, { "Sid": "BucketLevelReadPermissions", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "Your-AWS-Account-ID" }, "ArnEquals": { "s3:AccessGrantsInstanceArn": [ "Your-Custom-Access-Grants-Location-ARN" ] } } }, "//Optionally add the following section if you use SSE-KMS encryption", { "Sid": "KMSPermissions", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "*" ] } ] }
    2. Politique d’approbation

      Dans la politique de confiance du rôle IAM, accordez au service d’autorisations d’accès S3 (access-grants.s3.amazonaws.com) l’accès au rôle IAM que vous avez créé. Pour ce faire, vous pouvez créer un fichier JSON contenant les instructions suivantes. Pour ajouter la politique d’approbation à votre compte, consultez Création d’un rôle à l’aide de politiques d’approbation personnalisées.

      JSON
      { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1234567891011", "Effect": "Allow", "Principal": { "Service": "access-grants.s3.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:SourceAccount": "Your-AWS-Account-ID", "aws:SourceArn": "Your-Custom-Access-Grants-Location-ARN" } } }, "//For an IAM Identity Center use case, add:", { "Sid": "Stmt1234567891012", "Effect": "Allow", "Principal": { "Service": "access-grants.s3.amazonaws.com" }, "Action": "sts:SetContext", "Condition": { "StringEquals": { "aws:SourceAccount": "Your-AWS-Account-ID", "aws:SourceArn": "Your-Custom-Access-Grants-Location-ARN" }, "ForAllValues:ArnEquals": { "sts:RequestContextProviders": "arn:aws:iam::aws:contextProvider/IdentityCenter" } } } ] }

Création d'une subvention d'accès Amazon S3

Si vous possédez une Access Grants instance Amazon S3 avec un emplacement enregistré et que vous y avez associé votre instance IAM Identity Center, vous pouvez créer une subvention. Sur la page Create Grant de la console S3, effectuez les opérations suivantes :

Créer un octroi
  1. Sélectionnez l'emplacement créé à l'étape précédente. Vous pouvez réduire la portée de la subvention en ajoutant un sous-préfixe. Le sous-préfixe peut être un bucketbucket/prefix, ou un objet du compartiment. Pour plus d'informations, consultez la section Sous-préfixe dans le guide de l'utilisateur d'Amazon Simple Storage Service.

  2. Sous Autorisations et accès, sélectionnez Lire et/ou Écrire en fonction de vos besoins.

  3. Dans le type Granter, choisissez Directory Identity form IAM Identity Center.

  4. Indiquez l'ID d'utilisateur ou de groupe IAM Identity Center. Vous trouverez l'utilisateur et le groupe IDs dans les sections Utilisateur et Groupe de la console IAM Identity Center. Sélectionnez Suivant.

  5. Sur la page Révision et finition, passez en revue les paramètres du S3, Access Grant puis sélectionnez Create Grant.

    L'image suivante montre la page Create Grant dans la Access Grants console Amazon S3 :

    Créez une page de subvention dans la console Amazon S3 Access Grants.