Menyiapkan peran layanan untuk AWS Clean Rooms - AWS Clean Rooms

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyiapkan peran layanan untuk AWS Clean Rooms

Bagian berikut menjelaskan peran yang diperlukan untuk melakukan setiap tugas.

Buat pengguna administrator

Untuk menggunakannya AWS Clean Rooms, Anda perlu membuat pengguna administrator untuk diri sendiri dan menambahkan pengguna administrator ke grup administrator.

Untuk membuat pengguna administrator, pilih salah satu opsi berikut.

Pilih salah satu cara untuk mengelola administrator Anda Untuk Oleh Anda juga bisa
Di Pusat Identitas IAM

(Direkomendasikan)

Gunakan kredensi jangka pendek untuk mengakses. AWS

Ini sejalan dengan praktik terbaik keamanan. Untuk informasi tentang praktik terbaik, lihat Praktik terbaik keamanan di IAM di Panduan Pengguna IAM.

Mengikuti petunjuk di Memulai di Panduan AWS IAM Identity Center Pengguna. Konfigurasikan akses terprogram dengan Mengonfigurasi AWS CLI yang akan digunakan AWS IAM Identity Center dalam AWS Command Line Interface Panduan Pengguna.
Di IAM

(Tidak direkomendasikan)

Gunakan kredensi jangka panjang untuk mengakses. AWS Mengikuti petunjuk di Buat pengguna IAM untuk akses darurat di Panduan Pengguna IAM. Konfigurasikan akses terprogram dengan Mengelola kunci akses untuk pengguna IAM di Panduan Pengguna IAM.

Buat peran IAM untuk anggota kolaborasi

Anggota adalah AWS pelanggan yang merupakan peserta dalam kolaborasi.

Untuk membuat peran IAM untuk anggota kolaborasi
  1. Ikuti Membuat peran untuk mendelegasikan izin ke prosedur pengguna IAM di Panduan Pengguna.AWS Identity and Access Management

  2. Untuk langkah Buat kebijakan, pilih tab JSON di editor Kebijakan, lalu tambahkan kebijakan tergantung pada kemampuan yang diberikan kepada anggota kolaborasi.

    AWS Clean Rooms menawarkan kebijakan terkelola berikut berdasarkan kasus penggunaan umum.

    Jika Anda ingin... Kemudian gunakan...
    Lihat sumber daya dan metadata AWS kebijakan terkelola: AWSCleanRoomsReadOnlyAccess
    Kueri AWS kebijakan terkelola: AWSCleanRoomsFullAccess
    Kueri dan jalankan pekerjaan AWS kebijakan terkelola: AWSCleanRoomsFullAccess
    Kueri dan terima hasil AWS kebijakan terkelola: AWSCleanRoomsFullAccess
    Kelola sumber daya kolaborasi tetapi jangan kueri AWS kebijakan terkelola: AWSCleanRoomsFullAccessNoQuerying

    Untuk informasi tentang berbagai kebijakan terkelola yang ditawarkan oleh AWS Clean Rooms, lihatAWS kebijakan terkelola untuk AWS Clean Rooms,

Membuat peran layanan untuk membaca data dari Amazon S3

AWS Clean Rooms menggunakan peran layanan untuk membaca data dari Amazon S3.

Ada dua cara untuk membuat peran layanan ini.

  • Jika Anda memiliki izin IAM yang diperlukan untuk membuat peran layanan, gunakan AWS Clean Rooms konsol untuk membuat peran layanan.

  • Jika Anda tidak memilikiiam:CreateRole, iam:CreatePolicy dan iam:AttachRolePolicy izin atau ingin membuat peran IAM secara manual, lakukan salah satu hal berikut:

    • Gunakan prosedur berikut untuk membuat peran layanan menggunakan kebijakan kepercayaan khusus.

    • Minta administrator Anda untuk membuat peran layanan menggunakan prosedur berikut.

catatan

Anda atau administrator IAM Anda harus mengikuti prosedur ini hanya jika Anda tidak memiliki izin yang diperlukan untuk membuat peran layanan menggunakan konsol. AWS Clean Rooms

Untuk membuat peran layanan untuk membaca data dari Amazon S3 menggunakan kebijakan kepercayaan khusus
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Jika Anda ingin membantu memastikan bahwa peran tersebut hanya digunakan dalam konteks keanggotaan kolaborasi tertentu, Anda dapat mencatat kebijakan kepercayaan lebih lanjut. Untuk informasi selengkapnya, lihat Pencegahan "confused deputy" lintas layanan.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyForCleanRoomsService", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. Gunakan kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Kebijakan contoh berikut mendukung izin yang diperlukan untuk membaca AWS Glue metadata dan data Amazon S3 yang sesuai. Namun, Anda mungkin perlu mengubah kebijakan ini tergantung pada cara Anda mengatur data Amazon S3 Anda. Misalnya, jika Anda telah menyiapkan kunci KMS khusus untuk data Amazon S3, Anda mungkin perlu mengubah kebijakan ini dengan izin AWS Key Management Service tambahan AWS KMS().

    AWS Glue Sumber daya Anda dan sumber daya Amazon S3 yang mendasarinya harus Wilayah AWS sama dengan kolaborasi. AWS Clean Rooms

    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" ] } } } ] }
    catatan

    Kebijakan ini mereferensikan dua hal yang berbeda Akun AWS IDs untuk mendukung AWS Clean Rooms kolaborasi dimana metadata katalog data dan penyimpanan data aktual dikelola oleh berbagai pihak:

    • 111122223333 - Ini adalah akun yang memiliki sumber daya Katalog AWS Glue Data (database, tabel, dan katalog). Pernyataan pertama memberikan izin untuk mengakses skema tabel, informasi partisi, dan metadata dari katalog akun ini. AWS Glue

    • 444455556666 - Ini adalah akun yang memiliki bucket Amazon S3 yang berisi file data aktual. Izin Amazon S3 (pernyataan 3 dan 4) dibatasi untuk bucket yang dimiliki oleh akun ini melalui kondisi tersebut. s3:ResourceAccount

    Konfigurasi ini mendukung arsitektur data perusahaan umum di mana satu tim mengelola katalog data dan definisi skema sementara tim lain memiliki infrastruktur penyimpanan data yang mendasarinya. s3:ResourceAccountKondisi ini memberikan lapisan keamanan tambahan dengan memastikan operasi Amazon S3 hanya berfungsi pada bucket yang dimiliki oleh akun yang ditunjuk.

  4. Ganti masing-masing placeholder dengan informasi Anda sendiri.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.

Membuat peran layanan untuk membaca data dari Amazon Athena

AWS Clean Rooms menggunakan peran layanan untuk membaca data dari Amazon Athena.

Untuk membuat peran layanan untuk membaca data dari Athena menggunakan kebijakan kepercayaan khusus
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Jika Anda ingin membantu memastikan bahwa peran tersebut hanya digunakan dalam konteks keanggotaan kolaborasi tertentu, Anda dapat mencatat kebijakan kepercayaan lebih lanjut. Untuk informasi selengkapnya, lihat Pencegahan "confused deputy" lintas layanan.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyForCleanRoomsService", "Effect": "Allow", "Principal": { "Service": "cleanrooms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  3. Gunakan kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Kebijakan contoh berikut mendukung izin yang diperlukan untuk membaca AWS Glue metadata dan data Athena yang terkait. Namun, Anda mungkin perlu mengubah kebijakan ini tergantung pada cara Anda mengatur data Amazon S3 Anda. Misalnya, jika Anda telah menyiapkan kunci KMS khusus untuk data Amazon S3, Anda mungkin perlu mengubah kebijakan ini dengan izin tambahan. AWS KMS

    AWS Glue Sumber daya Anda dan sumber daya Athena yang mendasarinya harus Wilayah AWS sama dengan kolaborasi. 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. Ganti masing-masing placeholder dengan informasi Anda sendiri.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.

Siapkan izin Lake Formation

Jika Anda meminta sumber daya yang dilindungi dengan izin Lake Formation, peran layanan harus memiliki izin akses Pilih dan Jelaskan pada izin table/view dan Jelaskan pada AWS Glue database tempat tampilan disimpan.

Untuk informasi selengkapnya, lihat:

Buat peran layanan untuk membaca data dari Snowflake

AWS Clean Rooms menggunakan peran layanan untuk mengambil kredensil Anda untuk Snowflake untuk membaca data Anda dari sumber ini.

Ada dua cara untuk membuat peran layanan ini:

  • Jika Anda memiliki izin IAM yang diperlukan untuk membuat peran layanan, gunakan AWS Clean Rooms konsol untuk membuat peran layanan.

  • Jika Anda tidak memilikiiam:CreateRole, iam:CreatePolicy dan iam:AttachRolePolicy izin atau ingin membuat peran IAM secara manual, lakukan salah satu hal berikut:

    • Gunakan prosedur berikut untuk membuat peran layanan menggunakan kebijakan kepercayaan khusus.

    • Minta administrator Anda untuk membuat peran layanan menggunakan prosedur berikut.

catatan

Anda atau administrator IAM Anda harus mengikuti prosedur ini hanya jika Anda tidak memiliki izin yang diperlukan untuk membuat peran layanan menggunakan konsol. AWS Clean Rooms

Untuk membuat peran layanan untuk membaca data dari Snowflake menggunakan kebijakan kepercayaan khusus
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Jika Anda ingin membantu memastikan bahwa peran tersebut hanya digunakan dalam konteks keanggotaan kolaborasi tertentu, Anda dapat mencatat kebijakan kepercayaan lebih lanjut. Untuk informasi selengkapnya, lihat Pencegahan "confused deputy" lintas layanan.

    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" ] } } } ] }
    catatan

    Kebijakan kepercayaan ini mereferensikan dua hal yang berbeda Akun AWS IDs untuk mendukung AWS Clean Rooms kolaborasi di mana tanggung jawab eksekusi kueri didistribusikan ke berbagai pihak:

    • 111122223333 - Ini adalah akun yang berisi keanggotaan yang berpartisipasi dalam kolaborasi. Keanggotaan ini dapat memiliki tabel data, aturan analisis, atau sumber kolaborasi lainnya yang memerlukan akses peran.

    • 444455556666 - Ini adalah akun yang berisi keanggotaan yang bertanggung jawab untuk menjalankan query (“query runner”). Keanggotaan ini mengeksekusi kueri yang dilindungi dan perlu mengambil peran ini untuk mengakses sumber daya komputasi dan data yang diperlukan.

    Konfigurasi ini memungkinkan skenario di mana satu pihak menyediakan templat data atau analisis sementara pihak lain menjalankan kueri yang sebenarnya. Kedua peran memerlukan izin yang berbeda tetapi saling melengkapi melalui peran eksekusi yang sama. aws:SourceArnKondisi ini memastikan bahwa hanya AWS Clean Rooms operasi yang berasal dari dua keanggotaan spesifik ini yang dapat mengambil peran, menjaga keamanan sambil mendukung pelaksanaan pekerjaan terdistribusi dan alur kerja manajemen hasil.

  3. Gunakan salah satu kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    Kebijakan izin untuk rahasia yang dienkripsi dengan kunci KMS milik pelanggan

    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" } } } ] }
    catatan

    Kebijakan ini mereferensikan dua hal yang berbeda Akun AWS IDs untuk mendukung skenario manajemen rahasia lintas akun:

    • 111122223333 - Ini adalah akun yang memiliki dan menyimpan rahasia di. Pernyataan pertama memberikan izin untuk mengambil nilai rahasia dari akun ini.

    • 444455556666 - Ini adalah akun yang memiliki kunci yang digunakan untuk mengenkripsi rahasia. AWS KMS Pernyataan kedua memberikan izin untuk mendekripsi rahasia menggunakan AWS KMS kunci dari akun ini.

    Konfigurasi ini umum di lingkungan perusahaan di mana:

    • Rahasia dikelola secara terpusat dalam satu akun (Akun 1)

    • Kunci enkripsi dikelola oleh akun keamanan atau layanan bersama terpisah (Akun 2)

    • Kebijakan AWS KMS utama di Akun 2 juga harus mengizinkan layanan di Akun 1 untuk menggunakan kunci untuk encryption/decryption operasi

    kms:EncryptionContext:SecretARNKondisi ini memastikan bahwa AWS KMS kunci hanya dapat digunakan untuk mendekripsi rahasia khusus ini, memberikan lapisan keamanan tambahan untuk akses lintas akun.

    Kebijakan izin untuk rahasia yang dienkripsi dengan Kunci yang dikelola AWS

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Action": "secretsmanager:GetSecretValue", "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secretIdentifier", "Effect": "Allow" } ] }
  4. Ganti masing-masing placeholder dengan informasi Anda sendiri.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.

Buat peran layanan untuk membaca kode dari bucket S3 (peran template PySpark analisis)

AWS Clean Rooms menggunakan peran layanan untuk membaca kode dari bucket S3 yang ditentukan anggota kolaborasi saat menggunakan templat PySpark analisis.

Untuk membuat peran layanan untuk membaca kode dari bucket S3
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    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" ] } } } ] }
    catatan

    Kebijakan kepercayaan ini mereferensikan dua hal berbeda Akun AWS IDs untuk mendukung skenario AWS Clean Rooms kolaborasi multi-pihak:

    • 111122223333 - Ini adalah akun yang berisi keanggotaan yang bertanggung jawab untuk menjalankan kueri (“pelari pekerjaan”). Keanggotaan ini menjalankan pekerjaan analisis dan perlu mengambil peran ini untuk mengakses sumber daya yang diperlukan.

    • 444455556666 - Ini adalah akun yang memiliki template analisis dan keanggotaan terkait (“pemilik template analisis”). Keanggotaan ini mendefinisikan kueri apa yang dapat dijalankan dan juga perlu mengambil peran ini untuk mengelola dan menjalankan analisis.

    Konfigurasi ini khas dalam AWS Clean Rooms kolaborasi di mana banyak pihak berpartisipasi dalam kolaborasi yang sama, masing-masing dengan milik mereka sendiri Akun AWS dan keanggotaan. Baik pelaksana kueri dan pemilik templat analisis memerlukan akses ke sumber daya bersama. aws:SourceArnKondisi ini memastikan bahwa hanya AWS Clean Rooms operasi yang berasal dari dua keanggotaan spesifik ini yang dapat mengambil peran, memberikan kontrol akses yang tepat untuk kolaborasi multi-pihak.

  3. Gunakan kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Contoh kebijakan berikut mendukung izin yang diperlukan untuk membaca kode Anda dari Amazon S3. Namun, Anda mungkin perlu mengubah kebijakan ini tergantung pada cara Anda menyiapkan data S3.

    Sumber daya Amazon S3 Anda harus Wilayah AWS sama dengan kolaborasi. AWS Clean Rooms

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": ["arn:aws:s3:::s3Path"], "Condition":{ "StringEquals":{ "s3:ResourceAccount":[ "s3BucketOwnerAccountId" ] } } } ] }
  4. Ganti masing-masing placeholder dengan informasi Anda sendiri:

    • s3Path— Lokasi bucket S3 kode Anda.

    • s3BucketOwnerAccountId— Akun AWS ID pemilik bucket S3.

    • region- Nama Wilayah AWS. Misalnya, us-east-1.

    • jobRunnerAccountId— Akun AWS ID anggota yang dapat menjalankan kueri dan pekerjaan.

    • jobRunnerMembershipIdID Keanggotaan anggota yang dapat meminta dan menjalankan pekerjaan. ID Keanggotaan dapat ditemukan di tab Detail kolaborasi. Ini memastikan bahwa AWS Clean Rooms mengasumsikan peran hanya ketika anggota ini menjalankan analisis dalam kolaborasi ini.

    • analysisTemplateAccountId— Akun AWS ID dari template analisis.

    • analysisTemplateOwnerMembershipIdID Keanggotaan anggota yang memiliki templat analisis. ID Keanggotaan dapat ditemukan di tab Detail kolaborasi.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.

Buat peran layanan untuk menulis hasil PySpark pekerjaan

AWS Clean Rooms menggunakan peran layanan untuk menulis hasil PySpark pekerjaan ke bucket S3 tertentu.

Untuk membuat peran layanan untuk menulis hasil PySpark pekerjaan
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    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" ] } } } ] }
    catatan

    Kebijakan kepercayaan ini mereferensikan dua hal yang berbeda Akun AWS IDs untuk mendukung AWS Clean Rooms kolaborasi dengan peran operasional yang berbeda:

    • 111122223333 - Ini adalah akun yang berisi keanggotaan yang bertanggung jawab untuk menjalankan pekerjaan analisis (“pelari pekerjaan”). Keanggotaan ini mengeksekusi beban kerja komputasi dan perlu mengambil peran ini untuk mengakses sumber daya pemrosesan.

    • 444455556666 - Ini adalah akun yang berisi keanggotaan dengan tanggung jawab penerima hasil (RR). Keanggotaan ini berwenang untuk menerima dan mengakses output pekerjaan analisis, dan membutuhkan akses peran untuk menulis hasil ke lokasi yang ditentukan.

    Konfigurasi ini memungkinkan AWS Clean Rooms skenario di mana satu pihak menjalankan analisis komputasi sementara pihak lain menerima dan mengelola hasilnya. Kedua peran memerlukan izin yang berbeda tetapi saling melengkapi melalui peran eksekusi yang sama. aws:SourceArnKondisi ini memastikan bahwa hanya AWS Clean Rooms operasi yang berasal dari dua keanggotaan spesifik ini yang dapat mengambil peran, menjaga keamanan sambil mendukung pelaksanaan pekerjaan terdistribusi dan alur kerja manajemen hasil.

  3. Gunakan kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Kebijakan contoh berikut mendukung izin yang diperlukan untuk menulis ke Amazon S3. Namun, Anda mungkin perlu mengubah kebijakan ini tergantung pada cara Anda mengatur S3.

    Sumber daya Amazon S3 Anda harus Wilayah AWS sama dengan kolaborasi. AWS Clean Rooms

    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. Ganti masing-masing placeholder dengan informasi Anda sendiri:

    • region- Nama Wilayah AWS. Misalnya, us-east-1.

    • jobRunnerAccountId— Akun AWS ID tempat bucket S3 berada.

    • jobRunnerMembershipIdID Keanggotaan anggota yang dapat meminta dan menjalankan pekerjaan. ID Keanggotaan dapat ditemukan di tab Detail kolaborasi. Ini memastikan bahwa AWS Clean Rooms mengasumsikan peran hanya ketika anggota ini menjalankan analisis dalam kolaborasi ini.

    • rrAccountId— Akun AWS ID tempat bucket S3 berada.

    • rrMembershipIdID Keanggotaan anggota yang dapat menerima hasil. ID Keanggotaan dapat ditemukan di tab Detail kolaborasi. Ini memastikan bahwa AWS Clean Rooms mengasumsikan peran hanya ketika anggota ini menjalankan analisis dalam kolaborasi ini.

    • bucket— Nama dan lokasi bucket S3.

    • optionalPrefix- Awalan opsional jika Anda ingin menyimpan hasil Anda di bawah awalan S3 tertentu.

    • s3BucketOwnerAccountId— Akun AWS ID pemilik bucket S3.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.

Buat peran layanan untuk menerima hasil

catatan

Jika Anda adalah anggota yang hanya dapat menerima hasil (di konsol, kemampuan anggota Anda hanya Terima hasil), ikuti prosedur ini.

Jika Anda adalah anggota yang dapat menanyakan dan menerima hasil (di konsol, Kemampuan anggota Anda adalah hasil Kueri dan Terima), Anda dapat melewati prosedur ini.

Untuk anggota kolaborasi yang hanya dapat menerima hasil, AWS Clean Rooms gunakan peran layanan untuk menulis hasil data kueri dalam kolaborasi ke bucket S3 yang ditentukan.

Ada dua cara untuk membuat peran layanan ini:

  • Jika Anda memiliki izin IAM yang diperlukan untuk membuat peran layanan, gunakan AWS Clean Rooms konsol untuk membuat peran layanan.

  • Jika Anda tidak memilikiiam:CreateRole, iam:CreatePolicy dan iam:AttachRolePolicy izin atau ingin membuat peran IAM secara manual, lakukan salah satu hal berikut:

    • Gunakan prosedur berikut untuk membuat peran layanan menggunakan kebijakan kepercayaan khusus.

    • Minta administrator Anda untuk membuat peran layanan menggunakan prosedur berikut.

catatan

Anda atau administrator IAM Anda harus mengikuti prosedur ini hanya jika Anda tidak memiliki izin yang diperlukan untuk membuat peran layanan menggunakan konsol. AWS Clean Rooms

Untuk membuat peran layanan untuk menerima hasil menggunakan kebijakan kepercayaan khusus
  1. Buat peran menggunakan kebijakan kepercayaan khusus. Untuk informasi selengkapnya, lihat prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol) di Panduan AWS Identity and Access Management Pengguna.

  2. Gunakan kebijakan kepercayaan kustom berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    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. Gunakan kebijakan izin berikut sesuai dengan prosedur Membuat peran menggunakan kebijakan kepercayaan kustom (konsol).

    catatan

    Kebijakan contoh berikut mendukung izin yang diperlukan untuk membaca AWS Glue metadata dan data Amazon S3 yang sesuai. Namun, Anda mungkin perlu mengubah kebijakan ini tergantung pada cara Anda menyiapkan data S3.

    AWS Glue Sumber daya Anda dan sumber daya Amazon S3 yang mendasarinya harus Wilayah AWS sama dengan kolaborasi. AWS Clean Rooms

    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. Ganti masing-masing placeholder dengan informasi Anda sendiri:

    • region- Nama Wilayah AWS. Misalnya, us-east-1.

    • a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaaID Keanggotaan anggota yang dapat melakukan query. ID Keanggotaan dapat ditemukan di tab Detail kolaborasi. Ini memastikan bahwa AWS Clean Rooms mengasumsikan peran hanya ketika anggota ini menjalankan analisis dalam kolaborasi ini.

    • arn:aws:cleanrooms:us-east-1:555555555555:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaaARN Keanggotaan tunggal dari anggota yang dapat menanyakan. ARN Keanggotaan dapat ditemukan di tab Detail kolaborasi. AWS Clean Rooms Ini memastikan mengasumsikan peran hanya ketika anggota ini menjalankan analisis dalam kolaborasi ini.

    • bucket_nameNama Sumber Daya Amazon (ARN) dari ember S3. Nama Sumber Daya Amazon (ARN) dapat ditemukan di tab Properties bucket di Amazon S3.

    • accountId— Akun AWS ID tempat bucket S3 berada.

      bucket_name/optional_key_prefixNama Sumber Daya Amazon (ARN) dari tujuan hasil di Amazon S3. Nama Sumber Daya Amazon (ARN) dapat ditemukan di tab Properties bucket di Amazon S3.

  5. Terus ikuti prosedur Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) untuk membuat peran.