設定下列項目的服務角色 AWS Clean Rooms - AWS Clean Rooms

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定下列項目的服務角色 AWS Clean Rooms

建立管理員使用者

若要使用 AWS Clean Rooms,您必須為自己建立管理員使用者,並將管理員使用者新增至管理員群組。

若要建立管理員使用者,請選擇下列其中一個選項。

選擇一種管理管理員的方式 By 您也可以
在 IAM Identity Center

(建議)

使用短期憑證存取 AWS。

這與安全性最佳實務一致。有關最佳實務的資訊,請參閱 IAM 使用者指南中的 IAM 安全最佳實務

請遵循 AWS IAM Identity Center 使用者指南入門中的說明。 AWS IAM Identity Center在《使用AWS Command Line Interface 者指南》中設定 AWS CLI 要使用的,以設定程式設計方式存取。
在 IAM 中

(不建議使用)

使用長期憑證存取 AWS。 請遵循 IAM 使用者指南建立您的第一個 IAM 管理員使用者和使用者群組的說明。 請參閱 IAM 使用者指南中的管理 IAM 使用者的存取金鑰,設定程式設計存取。

為協作成員建立 IAM 角色

成員是指身為協同作業參與者的 AWS 客戶。

若要為協作成員建立 IAM 角色
  1. 遵循使用者指南中的建立角色,將許可委派給 IAM AWS Identity and Access Management 使用者序。

  2. 在 [建立原則] 步驟中,選取 [原則編輯器] 中的 [JSON] 索引標籤,然後根據授與協同作業成員的權能新增原則。

    AWS Clean Rooms 根據一般使用案例提供下列受管理的策略:

    如需有關由所提供之不同受管理策略的資訊 AWS Clean Rooms,請參閱 AWS 受管理的政策 AWS Clean Rooms

建立服務角色以讀取資料

AWS Clean Rooms 使用服務角色來讀取資料。

建立此服務角色的方法有兩種:

如果... 然後
您擁有建立服務角色所需的 IAM 許可 使用主 AWS Clean Rooms 控台建立服務角色。

您沒iam:CreateRoleiam:CreatePolicyiam:AttachRolePolicy

您想要手動建立 IAM 角色

執行以下任意一項:
  • 請使用下列程序來建立服務角色。

  • 請您的系統管理員使用下列程序建立服務角色。

若要建立服務角色以讀取資料
注意

如果您沒有使用 AWS Clean Rooms 主控台建立服務角色的必要權限,您或您的 IAM 管理員才應遵循此程序。

  1. 請遵循「使用AWS Identity and Access Management 者指南」中的「使用自訂信任原則 (主控台) 建立角色」程序。

  2. 根據使用自訂信任原則 (主控台) 建立角色程序,使用下列自訂信任原則

    注意

    如果您要確保角色只能在特定協同合作成員資格的前後關聯中使用,則可以進一步縮小信任原則的範圍。如需詳細資訊,請參閱 預防跨服務混淆代理人

    { "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyForCleanRoomsService", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. 根據使用自訂信任原則 (主控台) 建立角色程序,使用下列權限原則。

    注意

    下列範例政策支援讀取 AWS Glue 中繼資料及其對應 Amazon S3 資料所需的許可。但是,您可能需要修改此政策,具體取決於您設定 S3 資料的方式。例如,如果您已為 S3 資料設定自訂 KMS 金鑰,則可能需要使用其他 AWS KMS 許可修改此政策。

    您的 AWS Glue 資源和基礎 Amazon S3 資源必須與協同 AWS Clean Rooms 合 AWS 區域 作相同。

    { "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:aws-region:accountId:database/database", "arn:aws:glue:aws-region:accountId:table/table", "arn:aws:glue:aws-region:accountId: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":[ "s3BucketOwnerAccountId" ] } } }, { "Sid": "NecessaryS3ObjectPermissions", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3::bucket/prefix/*" ], "Condition":{ "StringEquals":{ "s3:ResourceAccount":[ "s3BucketOwnerAccountId" ] } } } ] }
  4. 以您自己的資訊取代每個預留位置

  5. 繼續遵循使用自訂信任原則建立角色 (主控台) 程序來建立角色。

建立服務角色以接收結果

注意

如果您是只能收到結果的成員(在控制台中,您的會員能力僅為接收結果),請按照此步驟操作。

如果您是可以查詢和接收結果的成員(在控制台中,您的會員能力既是查詢接收結果),則可以跳過此過程。

對於只能收到結果的協作成員,請 AWS Clean Rooms 使用服務角色將協作中查詢資料的結果寫入指定的 Amazon S3 儲存貯體。

建立此服務角色的方法有兩種:

如果... 然後
您擁有建立服務角色所需的 IAM 許可 使用主 AWS Clean Rooms 控台建立服務角色。

您沒iam:CreateRoleiam:CreatePolicyiam:AttachRolePolicy

您想要手動建立 IAM 角色

執行以下任意一項:
  • 請使用下列程序來建立服務角色。

  • 請您的系統管理員使用下列程序建立服務角色。

若要建立服務角色以接收結果
注意

如果您沒有使用 AWS Clean Rooms 主控台建立服務角色的必要權限,您或您的 IAM 管理員才應遵循此程序。

  1. 請遵循「使用AWS Identity and Access Management 者指南」中的「使用自訂信任原則 (主控台) 建立角色」程序。

  2. 根據使用自訂信任原則 (主控台) 建立角色程序,使用下列自訂信任原則

    { "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. 根據使用自訂信任原則 (主控台) 建立角色程序,使用下列權限原則。

    注意

    下列範例政策支援讀取 AWS Glue 中繼資料及其對應 Amazon S3 資料所需的許可。但是,您可能需要修改此政策,具體取決於您設定 S3 資料的方式。

    您的 AWS Glue 資源和基礎 Amazon S3 資源必須與協同 AWS Clean Rooms 合 AWS 區域 作相同。

    { "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. 用您自己的信息替換每個佔位符

    • 區域 — 的名稱 AWS 區域。例如 us-east-1

    • A1b2C3D4-5678-90 AB-例子 — 可以查詢的成員的會員 ID。您可以在協同作業的 [詳細資料] 索引標籤上找到成員資格 ID。這樣 AWS Clean Rooms 可確保只有當此成員在此協同合作中執行分析時,才會擔任該角色。

    • ARN: AWS: 無塵室:美國東部-1:5555555555: 會員/A1b2C3D4-5678-90B-例子 — 可以查詢的成員的單一會員 ARN. 您可以在協同作業的 [詳細資料] 索引標籤上找到成員資格 ARN。這樣可以確保 AWS Clean Rooms 只有在此成員在此協同合作中執行分析時才會擔任該角色。

    • 名稱 — S3 儲存貯體的 Amazon 資源名稱 (ARN)。您可以在 Amazon S3 儲存貯體的「屬性」索引標籤上找到 Amazon 資源名稱 (ARN)

    • accountId — S3 儲存貯體所在的 AWS 帳戶 識別碼。

      名稱/選項_key_前置碼 — S3 中結果目標的 Amazon 資源名稱 (ARN)。您可以在 Amazon S3 儲存貯體的「屬性」索引標籤上找到 Amazon 資源名稱 (ARN)

  5. 繼續遵循使用自訂信任原則建立角色 (主控台) 程序來建立角色。