Configurer les rôles de service pour AWS Clean Rooms - AWS Clean Rooms

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.

Configurer les rôles de service pour AWS Clean Rooms

Les sections suivantes décrivent les rôles nécessaires à l'exécution de chaque tâche.

Création d'un utilisateur administrateur

Pour l'utiliser AWS Clean Rooms, vous devez vous créer un utilisateur administrateur et l'ajouter à un groupe d'administrateurs.

Afin de créer un utilisateur administrateur, choisissez l'une des options suivantes :

Choisissez un moyen de gérer votre administrateur Pour Par Vous pouvez également
Dans IAM Identity Center

(Recommandé)

Utiliser des identifiants à court terme pour accéder à AWS.

Telles sont les meilleures pratiques en matière de sécurité. Pour plus d'informations sur les bonnes pratiques, veuillez consulter Security best practices in IAM (français non garanti) dans le Guide de l'utilisateur IAM.

Suivre les instructions de la section Mise en route dans le AWS IAM Identity Center Guide de l'utilisateur. Configurez l'accès par programmation en configurant le AWS CLI à utiliser AWS IAM Identity Center dans le guide de l'AWS Command Line Interface utilisateur.
Dans IAM

(Non recommandé)

Utiliser des identifiants à long terme pour accéder à AWS. Suivez les instructions de la section Créer un utilisateur IAM pour un accès d'urgence dans le guide de l'utilisateur IAM. Configurez l'accès programmatique en gérant les clés d'accès pour les utilisateurs IAM dans le guide de l'utilisateur IAM.

Création d'un rôle IAM pour un membre de la collaboration

Un membre est un AWS client participant à une collaboration.

Pour créer un rôle IAM pour un membre de la collaboration
  1. Suivez la procédure Création d'un rôle pour déléguer des autorisations à un utilisateur IAM dans le Guide de l'AWS Identity and Access Management utilisateur.

  2. Pour l'étape Créer une politique, sélectionnez l'onglet JSON dans l'éditeur de politiques, puis ajoutez des politiques en fonction des capacités accordées au membre de la collaboration.

    AWS Clean Rooms propose les politiques gérées suivantes basées sur des cas d'utilisation courants.

    Si vous voulez... Ensuite, utilisez...
    Afficher les ressources et les métadonnées AWS politique gérée : AWSCleanRoomsReadOnlyAccess
    Requête AWS politique gérée : AWSCleanRoomsFullAccess
    Interroger et exécuter des tâches AWS politique gérée : AWSCleanRoomsFullAccess
    Interrogez et recevez des résultats AWS politique gérée : AWSCleanRoomsFullAccess
    Gérez les ressources de collaboration sans poser de questions AWS politique gérée : AWSCleanRoomsFullAccessNoQuerying

    Pour plus d'informations sur les différentes politiques gérées proposées par AWS Clean RoomsAWS politiques gérées pour AWS Clean Rooms, voir

Créez un rôle de service pour lire les données d'Amazon S3

AWS Clean Rooms utilise un rôle de service pour lire les données d'Amazon S3.

Il existe deux manières de créer ce rôle de service.

  • Si vous disposez des autorisations IAM nécessaires pour créer un rôle de service, utilisez la AWS Clean Rooms console pour créer un rôle de service.

  • Si vous ne disposez iam:CreateRole pas iam:CreatePolicy d'iam:AttachRolePolicyautorisations ou si vous souhaitez créer les rôles IAM manuellement, effectuez l'une des opérations suivantes :

    • Utilisez la procédure suivante pour créer un rôle de service à l'aide de politiques de confiance personnalisées.

    • Demandez à votre administrateur de créer le rôle de service en suivant la procédure suivante.

Note

Vous ou votre administrateur IAM devez suivre cette procédure uniquement si vous ne disposez pas des autorisations nécessaires pour créer un rôle de service à l'aide de la AWS Clean Rooms console.

Pour créer un rôle de service permettant de lire les données d'Amazon S3 à l'aide de politiques de confiance personnalisées
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    Si vous souhaitez garantir que le rôle n'est utilisé que dans le contexte d'une certaine adhésion à une collaboration, vous pouvez affiner davantage la politique de confiance. Pour de plus amples informations, veuillez consulter Prévention du problème de l’adjoint confus entre services.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyForCleanRoomsService", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. Utilisez la politique d'autorisation suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    L'exemple de politique suivant prend en charge les autorisations nécessaires pour lire AWS Glue les métadonnées et les données Amazon S3 correspondantes. Toutefois, il se peut que vous deviez modifier cette politique en fonction de la façon dont vous avez configuré vos données Amazon S3. Par exemple, si vous avez configuré une clé KMS personnalisée pour vos données Amazon S3, vous devrez peut-être modifier cette politique avec des autorisations supplémentaires AWS Key Management Service (AWS KMS).

    Vos AWS Glue ressources et les ressources Amazon S3 sous-jacentes doivent être identiques à Région AWS celles de la AWS Clean Rooms collaboration.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "NecessaryGluePermissions", "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:database/databaseName", "arn:aws:glue:us-east-1:111122223333:table/databaseName/tableName", "arn:aws:glue:us-east-1:111122223333:catalog" ] }, { "Effect": "Allow", "Action": [ "glue:GetSchema", "glue:GetSchemaVersion" ], "Resource": [ "*" ] }, { "Sid": "NecessaryS3BucketPermissions", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket" ], "Condition": { "StringEquals": { "s3:ResourceAccount": [ "444455556666" ] } } }, { "Sid": "NecessaryS3ObjectPermissions", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::bucket/prefix/*" ], "Condition": { "StringEquals": { "s3:ResourceAccount": [ "444455556666" ] } } } ] }
    Note

    Cette politique fait référence à deux règles différentes Compte AWS IDs pour soutenir une AWS Clean Rooms collaboration dans le cadre de laquelle les métadonnées du catalogue de données et le stockage réel des données sont gérés par différentes parties :

    • 111122223333 - Il s'agit du compte propriétaire des ressources du catalogue de AWS Glue données (bases de données, tables et catalogue). La première instruction autorise l'accès aux schémas de table, aux informations de partition et aux métadonnées du AWS Glue catalogue de ce compte.

    • 444455556666 - Il s'agit du compte propriétaire du compartiment Amazon S3 contenant les fichiers de données réels. Les autorisations Amazon S3 (instructions 3 et 4) sont limitées aux compartiments appartenant à ce compte conformément à cette s3:ResourceAccount condition.

    Cette configuration prend en charge les architectures de données d'entreprise courantes dans lesquelles une équipe gère le catalogue de données et les définitions de schéma tandis qu'une autre équipe possède l'infrastructure de stockage de données sous-jacente. Cette s3:ResourceAccount condition fournit une couche de sécurité supplémentaire en garantissant que les opérations Amazon S3 ne fonctionnent que sur les buckets appartenant au compte désigné.

  4. Remplacez chaque placeholder par vos propres informations.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.

Création d'un rôle de service pour lire les données d'Amazon Athena

AWS Clean Rooms utilise un rôle de service pour lire les données d'Amazon Athena.

Pour créer un rôle de service permettant de lire les données d'Athena à l'aide de politiques de confiance personnalisées
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    Si vous souhaitez garantir que le rôle n'est utilisé que dans le contexte d'une certaine adhésion à une collaboration, vous pouvez affiner davantage la politique de confiance. Pour de plus amples informations, veuillez consulter Prévention du problème de l’adjoint confus entre services.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyForCleanRoomsService", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. Utilisez la politique d'autorisation suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    L'exemple de politique suivant prend en charge les autorisations nécessaires pour lire AWS Glue les métadonnées et les données Athena correspondantes. Toutefois, il se peut que vous deviez modifier cette politique en fonction de la façon dont vous avez configuré vos données Amazon S3. Par exemple, si vous avez déjà configuré une clé KMS personnalisée pour vos données Amazon S3, vous devrez peut-être modifier cette politique avec des AWS KMS autorisations supplémentaires.

    Vos AWS Glue ressources et les ressources Athena sous-jacentes doivent être identiques à Région AWS celles de la collaboration. AWS Clean Rooms

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:GetDataCatalog", "athena:GetWorkGroup", "athena:GetTableMetadata", "athena:GetQueryExecution", "athena:GetQueryResults", "athena:StartQueryExecution" ], "Resource": [ "arn:aws:athena:us-east-1:111122223333:workgroup/workgroup", "arn:aws:athena:us-east-1:111122223333:datacatalog/AwsDataCatalog" ] }, { "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:GetTable", "glue:GetPartitions" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:catalog", "arn:aws:glue:us-east-1:111122223333:database/database name", "arn:aws:glue:us-east-1:111122223333:table/database name/table name" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetBucketLocation", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:PutObject", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::bucket", "arn:aws:s3:::bucket/*" ] }, { "Effect": "Allow", "Action": "lakeformation:GetDataAccess", "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/*" } ] }
  4. Remplacez chaque placeholder par vos propres informations.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.

Configurer les autorisations de Lake Formation

Si vous interrogez des ressources protégées par des autorisations Lake Formation, le rôle de service doit disposer des autorisations d'accès Select and Describe sur les autorisations d'accès table/view et Describe sur la AWS Glue base de données dans laquelle la vue est stockée.

Pour plus d'informations, consultez :

Créez un rôle de service pour lire les données de Snowflake

AWS Clean Rooms utilise un rôle de service pour récupérer vos informations d'identification afin que Snowflake puisse lire vos données à partir de cette source.

Il existe deux manières de créer ce rôle de service :

  • Si vous disposez des autorisations IAM nécessaires pour créer un rôle de service, utilisez la AWS Clean Rooms console pour créer un rôle de service.

  • Si vous ne disposez iam:CreateRole pas iam:CreatePolicy d'iam:AttachRolePolicyautorisations ou si vous souhaitez créer les rôles IAM manuellement, effectuez l'une des opérations suivantes :

    • Utilisez la procédure suivante pour créer un rôle de service à l'aide de politiques de confiance personnalisées.

    • Demandez à votre administrateur de créer le rôle de service en suivant la procédure suivante.

Note

Vous ou votre administrateur IAM devez suivre cette procédure uniquement si vous ne disposez pas des autorisations nécessaires pour créer un rôle de service à l'aide de la AWS Clean Rooms console.

Pour créer un rôle de service permettant de lire les données de Snowflake à l'aide de politiques de confiance personnalisées
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    Si vous souhaitez garantir que le rôle n'est utilisé que dans le contexte d'une certaine adhésion à une collaboration, vous pouvez affiner davantage la politique de confiance. Pour de plus amples informations, veuillez consulter Prévention du problème de l’adjoint confus entre services.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIfSourceArnMatches", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ForAnyValue:ArnEquals": { "aws:SourceArn": [ "arn:aws:cleanrooms:us-east-1:111122223333:membership/membershipId", "arn:aws:cleanrooms:us-east-1:444455556666:membership/queryRunnerMembershipId" ] } } } ] }
    Note

    Cette politique de confiance fait référence à deux règles différentes Compte AWS IDs pour soutenir une AWS Clean Rooms collaboration dans le cadre de laquelle les responsabilités d'exécution des requêtes sont réparties entre plusieurs parties :

    • 111122223333 - Il s'agit du compte qui contient un membre participant à la collaboration. Cette adhésion peut posséder des tables de données, des règles d'analyse ou d'autres ressources de collaboration nécessitant un accès aux rôles.

    • 444455556666 - Il s'agit du compte qui contient le membre responsable de l'exécution des requêtes (le « lanceur de requêtes »). Cette adhésion exécute des requêtes protégées et doit assumer ce rôle pour accéder aux ressources de calcul et de données nécessaires.

    Cette configuration permet des scénarios dans lesquels une partie fournit des données ou des modèles d'analyse tandis qu'une autre partie exécute les requêtes réelles. Les deux rôles nécessitent des autorisations différentes mais complémentaires via le même rôle d'exécution. Cette aws:SourceArn condition garantit que seules les AWS Clean Rooms opérations issues de ces deux adhésions spécifiques peuvent assumer le rôle, préservant ainsi la sécurité tout en soutenant l'exécution distribuée des tâches et le flux de travail de gestion des résultats.

  3. Utilisez l'une des politiques d'autorisation suivantes conformément à la procédure Création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Politique d'autorisation pour les secrets chiffrés à l'aide d'une clé KMS appartenant au client

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Action": "secretsmanager:GetSecretValue", "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier", "Effect": "Allow" }, { "Sid": "AllowDecryptViaSecretsManagerForKey", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-1:444455556666:key/keyIdentifier", "Effect": "Allow", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-1.amazonaws.com", "kms:EncryptionContext:SecretARN": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier" } } } ] }
    Note

    Cette politique fait référence à deux règles différentes Compte AWS IDs pour prendre en charge un scénario de gestion des secrets entre comptes :

    • 111122223333 - Il s'agit du compte qui possède et dans lequel le secret est stocké. La première instruction donne l'autorisation de récupérer la valeur secrète de ce compte.

    • 444455556666 - Il s'agit du compte qui possède la AWS KMS clé utilisée pour chiffrer le secret. La deuxième instruction autorise le déchiffrement du secret à l'aide de la AWS KMS clé de ce compte.

    Cette configuration est courante dans les environnements d'entreprise où :

    • Les secrets sont gérés de manière centralisée dans un seul compte (compte 1)

    • Les clés de chiffrement sont gérées par un compte de sécurité ou de services partagés distinct (compte 2)

    • La politique AWS KMS clé du compte 2 doit également autoriser le service du compte 1 à utiliser la clé pour les encryption/decryption opérations.

    Cette kms:EncryptionContext:SecretARN condition garantit que la AWS KMS clé ne peut être utilisée que pour déchiffrer ce secret spécifique, fournissant ainsi une couche de sécurité supplémentaire pour l'accès entre comptes.

    Politique d'autorisation pour les secrets chiffrés à l'aide d'un Clé gérée par AWS

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Action": "secretsmanager:GetSecretValue", "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier", "Effect": "Allow" } ] }
  4. Remplacez chaque placeholder par vos propres informations.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.

Création d'un rôle de service pour lire le code d'un compartiment S3 (rôle de modèle d'PySpark analyse)

AWS Clean Rooms utilise un rôle de service pour lire le code du compartiment S3 spécifié par un membre de la collaboration lors de l'utilisation d'un modèle d' PySpark analyse.

Pour créer un rôle de service permettant de lire le code d'un compartiment S3
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ForAnyValue:ArnEquals": { "aws:SourceArn": [ "arn:aws:cleanrooms:us-east-1:111122223333:membership/jobRunnerMembershipId", "arn:aws:cleanrooms:us-east-1:444455556666:membership/analysisTemplateOwnerMembershipId" ] } } } ] }
    Note

    Cette politique de confiance fait référence à deux options différentes Compte AWS IDs pour soutenir un scénario de AWS Clean Rooms collaboration multipartite :

    • 111122223333 - Il s'agit du compte qui contient le membre responsable de l'exécution des requêtes (le « job runner »). Cette adhésion exécute les tâches d'analyse et doit assumer ce rôle pour accéder aux ressources nécessaires.

    • 444455556666 - Il s'agit du compte propriétaire du modèle d'analyse et de ses membres associés (le « propriétaire du modèle d'analyse »). Cette appartenance définit les requêtes qui peuvent être exécutées et doit également assumer ce rôle pour gérer et exécuter l'analyse.

    Cette configuration est typique des AWS Clean Rooms collaborations où plusieurs parties participent à la même collaboration, chacune ayant ses propres Compte AWS membres. L'exécuteur de requêtes et le propriétaire du modèle d'analyse doivent tous deux accéder à des ressources partagées. Cette aws:SourceArn condition garantit que seules les AWS Clean Rooms opérations provenant de ces deux adhésions spécifiques peuvent assumer le rôle, fournissant ainsi un contrôle d'accès précis pour la collaboration multipartite.

  3. Utilisez la politique d'autorisation suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    L'exemple de politique suivant prend en charge les autorisations nécessaires pour lire votre code depuis Amazon S3. Toutefois, il se peut que vous deviez modifier cette politique en fonction de la façon dont vous avez configuré vos données S3.

    Vos ressources Amazon S3 doivent être identiques à Région AWS celles de la AWS Clean Rooms collaboration.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": ["arn:aws:s3:::s3Path"], "Condition":{ "StringEquals":{ "s3:ResourceAccount":[ "s3BucketOwnerAccountId" ] } } } ] }
  4. Remplacez chacune placeholder par vos propres informations :

    • s3Path— L'emplacement de votre code dans le compartiment S3.

    • s3BucketOwnerAccountId— L' Compte AWS ID du propriétaire du compartiment S3.

    • region : Le nom de Région AWS. Par exemple, us-east-1.

    • jobRunnerAccountId— L' Compte AWS ID du membre autorisé à exécuter des requêtes et à exécuter des tâches.

    • jobRunnerMembershipId— L'ID de membre du membre qui peut interroger et exécuter des tâches. L'identifiant de membre se trouve dans l'onglet Détails de la collaboration. Cela garantit qu'il AWS Clean Rooms n'assume le rôle que lorsque ce membre exécute l'analyse dans le cadre de cette collaboration.

    • analysisTemplateAccountId— L' Compte AWS ID du modèle d'analyse.

    • analysisTemplateOwnerMembershipId— L'ID de membre du membre propriétaire du modèle d'analyse. L'identifiant de membre se trouve dans l'onglet Détails de la collaboration.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.

Création d'un rôle de service pour écrire les résultats d'une PySpark tâche

AWS Clean Rooms utilise un rôle de service pour écrire les résultats d'une PySpark tâche dans un compartiment S3 spécifié.

Pour créer un rôle de service afin d'écrire les résultats d'une PySpark tâche
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ForAnyValue:ArnEquals": { "aws:SourceArn": [ "arn:aws:cleanrooms:us-east-1:111122223333:membership/jobRunnerMembershipId", "arn:aws:cleanrooms:us-east-1:444455556666:membership/rrMembershipId" ] } } } ] }
    Note

    Cette politique de confiance fait référence Compte AWS IDs à deux règles différentes pour soutenir une AWS Clean Rooms collaboration avec des rôles opérationnels distincts :

    • 111122223333 - Il s'agit du compte qui contient l'adhésion responsable de l'exécution des tâches d'analyse (le « job runner »). Cette adhésion exécute les charges de travail de calcul et doit assumer ce rôle pour accéder aux ressources de traitement.

    • 444455556666 - Il s'agit du compte qui contient l'adhésion avec les responsabilités du destinataire des résultats (RR). Cet abonnement est autorisé à recevoir et à accéder aux résultats des tâches d'analyse, et a besoin d'un accès aux rôles pour écrire les résultats dans des emplacements désignés.

    Cette configuration permet AWS Clean Rooms des scénarios dans lesquels une partie exécute l'analyse informatique tandis qu'une autre partie reçoit et gère les résultats. Les deux rôles nécessitent des autorisations différentes mais complémentaires via le même rôle d'exécution. Cette aws:SourceArn condition garantit que seules les AWS Clean Rooms opérations issues de ces deux adhésions spécifiques peuvent assumer le rôle, préservant ainsi la sécurité tout en soutenant l'exécution distribuée des tâches et le flux de travail de gestion des résultats.

  3. Utilisez la politique d'autorisation suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    L'exemple de politique suivant prend en charge les autorisations nécessaires pour écrire sur Amazon S3. Toutefois, il se peut que vous deviez modifier cette politique en fonction de la façon dont vous avez configuré S3.

    Vos ressources Amazon S3 doivent être identiques à Région AWS celles de la AWS Clean Rooms collaboration.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::bucket/optionalPrefix/*", "Condition":{ "StringEquals":{ "s3:ResourceAccount":[ "s3BucketOwnerAccountId" ] } } }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": "arn:aws:s3:::bucket", "Condition":{ "StringEquals":{ "s3:ResourceAccount":[ "s3BucketOwnerAccountId" ] } } } ] }
  4. Remplacez chacune placeholder par vos propres informations :

    • region : Le nom de Région AWS. Par exemple, us-east-1.

    • jobRunnerAccountId— L' Compte AWS ID dans lequel se trouve le compartiment S3.

    • jobRunnerMembershipId— L'ID de membre du membre qui peut interroger et exécuter des tâches. L'identifiant de membre se trouve dans l'onglet Détails de la collaboration. Cela garantit qu'il AWS Clean Rooms n'assume le rôle que lorsque ce membre exécute l'analyse dans le cadre de cette collaboration.

    • rrAccountId— L' Compte AWS ID dans lequel se trouve le compartiment S3.

    • rrMembershipId— Le numéro de membre du membre qui peut recevoir les résultats. L'identifiant de membre se trouve dans l'onglet Détails de la collaboration. Cela garantit qu'il AWS Clean Rooms n'assume le rôle que lorsque ce membre exécute l'analyse dans le cadre de cette collaboration.

    • bucket— Le nom et l'emplacement du compartiment S3.

    • optionalPrefix— Un préfixe facultatif si vous souhaitez enregistrer vos résultats sous un préfixe S3 spécifique.

    • s3BucketOwnerAccountId— L' Compte AWS ID du propriétaire du compartiment S3.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.

Créez un rôle de service pour recevoir des résultats

Note

Si vous êtes le membre qui ne peut recevoir que des résultats (dans la console, les capacités de votre membre sont uniquement de recevoir des résultats), suivez cette procédure.

Si vous êtes un membre capable à la fois d'interroger et de recevoir des résultats (dans la console, vos capacités de membre sont à la fois Query et Receive des résultats), vous pouvez ignorer cette procédure.

Pour les membres de la collaboration qui ne peuvent recevoir que des résultats, AWS Clean Rooms utilise un rôle de service pour écrire les résultats des données demandées dans la collaboration dans le compartiment S3 spécifié.

Il existe deux manières de créer ce rôle de service :

  • Si vous disposez des autorisations IAM nécessaires pour créer un rôle de service, utilisez la AWS Clean Rooms console pour créer un rôle de service.

  • Si vous ne disposez iam:CreateRole pas iam:CreatePolicy d'iam:AttachRolePolicyautorisations ou si vous souhaitez créer les rôles IAM manuellement, effectuez l'une des opérations suivantes :

    • Utilisez la procédure suivante pour créer un rôle de service à l'aide de politiques de confiance personnalisées.

    • Demandez à votre administrateur de créer le rôle de service en suivant la procédure suivante.

Note

Vous ou votre administrateur IAM devez suivre cette procédure uniquement si vous ne disposez pas des autorisations nécessaires pour créer un rôle de service à l'aide de la AWS Clean Rooms console.

Pour créer un rôle de service afin de recevoir des résultats à l'aide de politiques de confiance personnalisées
  1. Créez un rôle à l'aide de politiques de confiance personnalisées. Pour plus d'informations, consultez la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de AWS Identity and Access Management l'utilisateur.

  2. Utilisez la politique de confiance personnalisée suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIfExternalIdMatches", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "sts:ExternalId": "arn:aws:*:region:*:dbuser:*/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa*" } } }, { "Sid": "AllowIfSourceArnMatches", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ForAnyValue:ArnEquals": { "aws:SourceArn": [ "arn:aws:cleanrooms:us-east-1:555555555555:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa" ] } } } ] }
  3. Utilisez la politique d'autorisation suivante conformément à la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console).

    Note

    L'exemple de politique suivant prend en charge les autorisations nécessaires pour lire AWS Glue les métadonnées et les données Amazon S3 correspondantes. Toutefois, il se peut que vous deviez modifier cette politique en fonction de la façon dont vous avez configuré vos données S3.

    Vos AWS Glue ressources et les ressources Amazon S3 sous-jacentes doivent être identiques à Région AWS celles de la AWS Clean Rooms collaboration.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket_name" ], "Condition": { "StringEquals": { "aws:ResourceAccount":"accountId" } } }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::bucket_name/optional_key_prefix/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount":"accountId" } } } ] }
  4. Remplacez chacune placeholder par vos propres informations :

    • region : Le nom de Région AWS. Par exemple, us-east-1.

    • a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa— L'ID de membre du membre qui peut effectuer la demande. L'identifiant de membre se trouve dans l'onglet Détails de la collaboration. Cela garantit qu'il AWS Clean Rooms n'assume le rôle que lorsque ce membre exécute l'analyse dans le cadre de cette collaboration.

    • arn:aws:cleanrooms:us-east-1:555555555555:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa— L'ARN de membre unique du membre qui peut effectuer une requête. L'ARN d'adhésion se trouve dans l'onglet Détails de la collaboration. Cela garantit qu' AWS Clean Rooms il n'assume le rôle que lorsque ce membre exécute l'analyse dans le cadre de cette collaboration.

    • bucket_name— Le nom de ressource Amazon (ARN) du compartiment S3. Le nom de ressource Amazon (ARN) se trouve dans l'onglet Propriétés du compartiment dans Amazon S3.

    • accountId— L' Compte AWS ID dans lequel se trouve le compartiment S3.

      bucket_name/optional_key_prefix— Le nom de ressource Amazon (ARN) de la destination des résultats dans Amazon S3. Le nom de ressource Amazon (ARN) se trouve dans l'onglet Propriétés du compartiment dans Amazon S3.

  5. Continuez à suivre la procédure de création d'un rôle à l'aide de politiques de confiance personnalisées (console) pour créer le rôle.