Opsi konfigurasi dan persyaratan untuk mengambil sampel data sensitif dengan temuan - Amazon Macie

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

Opsi konfigurasi dan persyaratan untuk mengambil sampel data sensitif dengan temuan

Anda dapat mengonfigurasi dan menggunakan Amazon Macie secara opsional untuk mengambil dan mengungkapkan sampel data sensitif yang dilaporkan Macie dalam temuan individual. Jika Anda mengambil dan mengungkapkan sampel data sensitif untuk temuan, Macie menggunakan data dalam hasil penemuan data sensitif terkait untuk menemukan kejadian data sensitif di objek Amazon Simple Storage Service (Amazon S3) yang terpengaruh. Macie kemudian mengekstrak sampel kejadian tersebut dari objek yang terpengaruh. Macie mengenkripsi data yang diekstrak dengan kunci AWS Key Management Service (AWS KMS) yang Anda tentukan, menyimpan sementara data terenkripsi dalam cache, dan mengembalikan data dalam hasil Anda untuk temuan. Segera setelah ekstraksi dan enkripsi, Macie secara permanen menghapus data dari cache kecuali retensi tambahan sementara diperlukan untuk menyelesaikan masalah operasional.

Macie tidak menggunakan peran terkait layanan Macie untuk akun Anda untuk menemukan, mengambil, mengenkripsi, atau mengungkapkan sampel data sensitif untuk objek S3 yang terpengaruh. Sebagai gantinya, Macie menggunakan pengaturan dan sumber daya yang Anda konfigurasikan untuk akun Anda. Saat Anda mengonfigurasi pengaturan di Macie, Anda menentukan cara mengakses objek S3 yang terpengaruh. Anda juga menentukan mana yang AWS KMS key akan digunakan untuk mengenkripsi sampel. Anda dapat mengonfigurasi pengaturan di semua Wilayah AWS tempat Macie saat ini tersedia kecuali Wilayah Asia Pasifik (Osaka) dan Israel (Tel Aviv).

Untuk mengakses objek S3 yang terpengaruh dan mengambil sampel data sensitif darinya, Anda memiliki dua opsi. Anda dapat mengonfigurasi Macie untuk menggunakan kredensil pengguna AWS Identity and Access Management (IAM) atau mengambil peran IAM:

  • Gunakan kredensil pengguna IAM — Dengan opsi ini, setiap pengguna akun Anda menggunakan identitas IAM masing-masing untuk mencari, mengambil, mengenkripsi, dan mengungkapkan sampel. Ini berarti bahwa pengguna dapat mengambil dan mengungkapkan sampel data sensitif untuk temuan jika mereka diizinkan untuk mengakses sumber daya dan data yang diperlukan, dan melakukan tindakan yang diperlukan.

  • Asumsikan peran IAM - Dengan opsi ini, Anda membuat peran IAM yang mendelegasikan akses ke Macie. Anda juga memastikan bahwa kebijakan kepercayaan dan izin untuk peran tersebut memenuhi semua persyaratan bagi Macie untuk mengambil peran tersebut. Macie kemudian mengambil peran ketika pengguna akun Anda memilih untuk mencari, mengambil, mengenkripsi, dan mengungkapkan sampel data sensitif untuk sebuah temuan.

Anda dapat menggunakan konfigurasi dengan semua jenis akun Macie—akun administrator Macie yang didelegasikan untuk organisasi, akun anggota Macie di organisasi, atau akun Macie mandiri.

Topik berikut menjelaskan opsi, persyaratan, dan pertimbangan yang dapat membantu Anda menentukan cara mengonfigurasi pengaturan dan sumber daya untuk akun Anda. Ini termasuk kebijakan kepercayaan dan izin untuk dilampirkan ke peran IAM. Untuk rekomendasi tambahan dan contoh kebijakan yang mungkin Anda gunakan untuk mengambil dan mengungkapkan sampel data sensitif, lihat Cara menggunakan Amazon Macie untuk melihat pratinjau data sensitif di bucket S3 postingan blog di Blog Keamanan. AWS

Menentukan metode akses mana yang akan digunakan

Saat menentukan konfigurasi mana yang terbaik untuk AWS lingkungan Anda, pertimbangan utama adalah apakah lingkungan Anda menyertakan beberapa akun Amazon Macie yang dikelola secara terpusat sebagai organisasi. Jika Anda adalah administrator Macie yang didelegasikan untuk organisasi, mengonfigurasi Macie untuk mengambil peran IAM dapat merampingkan pengambilan sampel data sensitif dari objek S3 yang terpengaruh untuk akun di organisasi Anda. Dengan pendekatan ini, Anda membuat peran IAM di akun administrator Anda. Anda juga membuat peran IAM di setiap akun anggota yang berlaku. Peran di akun administrator Anda mendelegasikan akses ke Macie. Peran dalam akun anggota mendelegasikan akses lintas akun ke peran di akun administrator Anda. Jika diterapkan, Anda kemudian dapat menggunakan rantai peran untuk mengakses objek S3 yang terpengaruh untuk akun anggota Anda.

Juga pertimbangkan siapa yang memiliki akses langsung ke temuan individu secara default. Untuk mengambil dan mengungkapkan sampel data sensitif untuk temuan, pengguna harus terlebih dahulu memiliki akses ke temuan:

  • Pekerjaan penemuan data sensitif — Hanya akun yang menciptakan pekerjaan yang dapat mengakses temuan yang dihasilkan oleh pekerjaan tersebut. Jika Anda memiliki akun administrator Macie, Anda dapat mengonfigurasi pekerjaan untuk menganalisis objek di bucket S3 untuk akun apa pun di organisasi Anda. Oleh karena itu, pekerjaan Anda dapat menghasilkan temuan untuk objek dalam ember yang dimiliki akun anggota Anda. Jika Anda memiliki akun anggota atau akun Macie mandiri, Anda dapat mengonfigurasi pekerjaan untuk menganalisis objek hanya dalam ember yang dimiliki akun Anda.

  • Penemuan data sensitif otomatis — Hanya akun administrator Macie yang dapat mengakses temuan yang dihasilkan penemuan otomatis untuk akun di organisasi mereka. Akun anggota tidak dapat mengakses temuan ini. Jika Anda memiliki akun Macie mandiri, Anda dapat mengakses temuan yang dihasilkan penemuan otomatis hanya untuk akun Anda sendiri.

Jika Anda berencana untuk mengakses objek S3 yang terpengaruh dengan menggunakan peran IAM, pertimbangkan juga hal berikut:

  • Untuk menemukan kemunculan data sensitif dalam suatu objek, hasil penemuan data sensitif yang sesuai untuk temuan harus disimpan dalam objek S3 yang ditandatangani Macie dengan Kode Otentikasi Pesan berbasis Hash (HMAC). AWS KMS key Macie harus dapat memverifikasi integritas dan keaslian hasil penemuan data sensitif. Jika tidak, Macie tidak mengambil peran IAM untuk mengambil sampel data sensitif. Ini adalah pagar pembatas tambahan untuk membatasi akses ke data dalam objek S3 untuk akun.

  • Untuk mengambil sampel data sensitif dari objek yang dienkripsi dengan pelanggan yang dikelolaAWS KMS key, peran IAM harus diizinkan untuk mendekripsi data dengan kunci. Lebih khusus lagi, kebijakan kunci harus memungkinkan peran untuk melakukan kms:Decrypt tindakan. Untuk jenis enkripsi sisi server lainnya, tidak ada izin atau sumber daya tambahan yang diperlukan untuk mendekripsi objek yang terpengaruh. Untuk informasi selengkapnya, lihat Mendekripsi objek S3 yang terpengaruh.

  • Untuk mengambil sampel data sensitif dari objek untuk akun lain, saat ini Anda harus menjadi administrator Macie yang didelegasikan untuk akun yang berlaku. Wilayah AWS Selain itu:

    • Macie saat ini harus diaktifkan untuk akun anggota di Wilayah yang berlaku.

    • Akun anggota harus memiliki peran IAM yang mendelegasikan akses lintas akun ke peran IAM di akun administrator Macie Anda. Nama peran harus sama di akun administrator Macie Anda dan akun anggota.

    • Kebijakan kepercayaan untuk peran IAM di akun anggota harus menyertakan kondisi yang menentukan ID eksternal yang benar untuk konfigurasi Anda. ID ini adalah string alfanumerik unik yang dihasilkan Macie secara otomatis setelah Anda mengonfigurasi pengaturan untuk akun administrator Macie Anda. Untuk informasi tentang penggunaan ID eksternal dalam kebijakan kepercayaan, lihat Cara menggunakan ID eksternal saat memberikan akses ke AWS sumber daya Anda kepada pihak ketiga dalam Panduan AWS Identity and Access Management Pengguna.

    • Jika peran IAM di akun anggota memenuhi semua persyaratan Macie, akun anggota tidak perlu mengonfigurasi dan mengaktifkan pengaturan Macie agar Anda dapat mengambil sampel data sensitif dari objek untuk akun mereka. Macie hanya menggunakan pengaturan dan peran IAM di akun administrator Macie Anda dan peran IAM di akun anggota.

      Tip

      Jika akun Anda adalah bagian dari organisasi besar, pertimbangkan untuk menggunakan AWS CloudFormation templat dan tumpukan yang disetel ke penyediaan dan kelola peran IAM untuk akun anggota di organisasi Anda. Untuk informasi tentang membuat dan menggunakan templat dan kumpulan tumpukan, lihat Panduan AWS CloudFormation Pengguna.

      Untuk meninjau dan mengunduh CloudFormation templat yang dapat berfungsi sebagai titik awal, Anda dapat menggunakan konsol Amazon Macie. Di panel navigasi di konsol, di bawah Pengaturan, pilih Reveal samples. Pilih Edit, lalu pilih Lihat izin dan CloudFormation templat peran anggota.

Topik selanjutnya di bagian ini memberikan rincian dan pertimbangan tambahan untuk setiap jenis konfigurasi. Untuk peran IAM, ini termasuk kebijakan kepercayaan dan izin untuk dilampirkan ke peran. Jika Anda tidak yakin jenis konfigurasi mana yang terbaik untuk lingkungan Anda, mintalah bantuan AWS administrator Anda.

Menggunakan kredensi pengguna IAM untuk mengakses objek S3 yang terpengaruh

Jika Anda mengonfigurasi Amazon Macie untuk mengambil sampel data sensitif dengan menggunakan kredensil pengguna IAM, setiap pengguna akun Macie Anda menggunakan identitas IAM mereka untuk mencari, mengambil, mengenkripsi, dan mengungkapkan sampel untuk temuan individual. Ini berarti bahwa pengguna dapat mengambil dan mengungkapkan sampel data sensitif untuk temuan jika identitas IAM mereka diizinkan untuk mengakses sumber daya dan data yang diperlukan, dan melakukan tindakan yang diperlukan. Semua tindakan yang diperlukan masuk AWS CloudTrail.

Untuk mengambil dan mengungkapkan sampel data sensitif untuk temuan tertentu, pengguna harus diizinkan mengakses data dan sumber daya berikut: temuan, hasil penemuan data sensitif yang sesuai, bucket S3 yang terpengaruh, dan objek S3 yang terpengaruh. Mereka juga harus diizinkan untuk menggunakan AWS KMS key yang digunakan untuk mengenkripsi objek yang terpengaruh, jika berlaku, dan AWS KMS key yang Anda konfigurasi Macie untuk digunakan untuk mengenkripsi sampel data sensitif. Jika ada kebijakan IAM, kebijakan sumber daya, atau setelan izin lainnya yang menolak akses yang diperlukan, pengguna tidak akan dapat mengambil dan mengungkapkan sampel untuk temuan tersebut.

Untuk mengatur jenis konfigurasi ini, selesaikan tugas umum berikut:

  1. Verifikasi bahwa Anda mengonfigurasi repositori untuk hasil penemuan data sensitif Anda.

  2. AWS KMS keyKonfigurasikan yang akan digunakan untuk enkripsi sampel data sensitif.

  3. Verifikasi izin Anda untuk mengonfigurasi pengaturan di Macie.

  4. Konfigurasikan dan aktifkan pengaturan di Macie.

Untuk informasi tentang melakukan tugas-tugas ini, lihatMengonfigurasi Amazon Macie untuk mengambil dan mengungkapkan sampel data sensitif dengan temuan.

Dengan asumsi peran IAM untuk mengakses objek S3 yang terpengaruh

Untuk mengonfigurasi Amazon Macie untuk mengambil sampel data sensitif dengan mengasumsikan peran IAM, mulailah dengan membuat peran IAM yang mendelegasikan akses ke Macie. Pastikan kebijakan kepercayaan dan izin untuk peran tersebut memenuhi semua persyaratan bagi Macie untuk mengambil peran tersebut. Ketika pengguna akun Macie Anda kemudian memilih untuk mengambil dan mengungkapkan sampel data sensitif untuk temuan, Macie mengasumsikan peran untuk mengambil sampel dari objek S3 yang terpengaruh. Macie mengasumsikan peran hanya ketika pengguna memilih untuk mengambil dan mengungkapkan sampel untuk temuan. Untuk mengambil peran, Macie menggunakan AssumeRoleoperasi AWS Security Token Service (AWS STS) API. Semua tindakan yang diperlukan masuk AWS CloudTrail.

Untuk mengambil dan mengungkapkan sampel data sensitif untuk temuan tertentu, pengguna harus diizinkan mengakses temuan, hasil penemuan data sensitif yang sesuai, dan AWS KMS key yang Anda konfigurasi Macie untuk digunakan untuk mengenkripsi sampel data sensitif. Peran IAM harus memungkinkan Macie mengakses bucket S3 yang terpengaruh dan objek S3 yang terpengaruh. Peran juga harus diizinkan untuk menggunakan AWS KMS key yang digunakan untuk mengenkripsi objek yang terpengaruh, jika berlaku. Jika ada kebijakan IAM, kebijakan sumber daya, atau setelan izin lainnya yang menolak akses yang diperlukan, pengguna tidak akan dapat mengambil dan mengungkapkan sampel untuk temuan tersebut.

Untuk mengatur jenis konfigurasi ini, selesaikan tugas-tugas umum berikut. Jika Anda memiliki akun anggota di suatu organisasi, bekerjalah dengan administrator Macie Anda untuk menentukan apakah dan cara mengonfigurasi pengaturan dan sumber daya untuk akun Anda.

  1. Tentukan yang berikut ini:

    • Nama peran IAM yang Anda ingin Macie untuk mengambil alih. Jika akun Anda adalah bagian dari organisasi, nama ini harus sama untuk akun administrator Macie yang didelegasikan dan setiap akun anggota yang berlaku di organisasi. Jika tidak, administrator Macie tidak akan dapat mengakses objek S3 yang terpengaruh untuk akun anggota yang berlaku.

    • Nama kebijakan izin IAM untuk dilampirkan ke peran IAM. Jika akun Anda adalah bagian dari organisasi, kami sarankan Anda menggunakan nama kebijakan yang sama untuk setiap akun anggota yang berlaku di organisasi. Ini dapat merampingkan penyediaan dan pengelolaan peran dalam akun anggota.

  2. Verifikasi bahwa Anda mengonfigurasi repositori untuk hasil penemuan data sensitif Anda.

  3. AWS KMS keyKonfigurasikan yang akan digunakan untuk enkripsi sampel data sensitif.

  4. Verifikasi izin Anda untuk membuat peran IAM dan mengonfigurasi pengaturan di Macie.

  5. Jika Anda adalah administrator Macie yang didelegasikan untuk suatu organisasi atau Anda memiliki akun Macie mandiri:

    1. Buat dan konfigurasikan peran IAM untuk akun Anda. Pastikan kebijakan kepercayaan dan izin untuk peran tersebut memenuhi semua persyaratan bagi Macie untuk mengambil peran tersebut. Untuk detail tentang persyaratan ini, lihat topik berikutnya.

    2. Konfigurasikan dan aktifkan pengaturan di Macie. Macie kemudian menghasilkan ID eksternal untuk konfigurasi. Jika Anda administrator Macie untuk suatu organisasi, perhatikan ID ini. Kebijakan kepercayaan untuk peran IAM di setiap akun anggota Anda yang berlaku harus menentukan ID ini.

  6. Jika Anda memiliki akun anggota di suatu organisasi:

    1. Minta administrator Macie Anda untuk ID eksternal untuk menentukan dalam kebijakan kepercayaan untuk peran IAM di akun Anda. Juga verifikasi nama peran IAM dan kebijakan izin yang akan dibuat.

    2. Buat dan konfigurasikan peran IAM untuk akun Anda. Pastikan kebijakan kepercayaan dan izin untuk peran tersebut memenuhi semua persyaratan bagi administrator Macie Anda untuk mengambil peran tersebut. Untuk detail tentang persyaratan ini, lihat topik berikutnya.

    3. (Opsional) Jika Anda ingin mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda sendiri, konfigurasikan dan aktifkan pengaturan di Macie. Jika Anda ingin Macie mengambil peran IAM untuk mengambil sampel, mulailah dengan membuat dan mengonfigurasi peran IAM tambahan di akun Anda. Pastikan kebijakan kepercayaan dan izin untuk peran tambahan ini memenuhi semua persyaratan bagi Macie untuk mengambil peran tersebut. Kemudian konfigurasikan pengaturan di Macie dan tentukan nama peran tambahan ini. Untuk detail tentang persyaratan kebijakan untuk peran tersebut, lihat topik berikutnya.

Untuk informasi tentang melakukan tugas-tugas ini, lihatMengonfigurasi Amazon Macie untuk mengambil dan mengungkapkan sampel data sensitif dengan temuan.

Mengkonfigurasi peran IAM untuk mengakses objek S3 yang terpengaruh

Untuk mengakses objek S3 yang terpengaruh dengan menggunakan peran IAM, mulailah dengan membuat dan mengonfigurasi peran yang mendelegasikan akses ke Amazon Macie. Pastikan kebijakan kepercayaan dan izin untuk peran tersebut memenuhi semua persyaratan bagi Macie untuk mengambil peran tersebut. Bagaimana Anda melakukan ini tergantung pada jenis akun Macie yang Anda miliki.

Bagian berikut memberikan rincian tentang kebijakan kepercayaan dan izin untuk dilampirkan ke peran IAM untuk setiap jenis akun Macie. Pilih bagian untuk jenis akun yang Anda miliki.

catatan

Jika Anda memiliki akun anggota di organisasi, Anda mungkin perlu membuat dan mengonfigurasi dua peran IAM untuk akun Anda:

  • Untuk memungkinkan administrator Macie mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda, buat dan konfigurasikan peran yang dapat diasumsikan oleh akun administrator Anda. Untuk detail ini, pilih bagian akun anggota Macie.

  • Untuk mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda sendiri, buat dan konfigurasikan peran yang dapat diasumsikan oleh Macie. Untuk detail ini, pilih bagian akun Standalone Macie.

Sebelum Anda membuat dan mengonfigurasi peran IAM, bekerjalah dengan administrator Macie Anda untuk menentukan konfigurasi yang sesuai untuk akun Anda.

Untuk informasi mendetail tentang penggunaan IAM untuk membuat peran, lihat Membuat peran menggunakan kebijakan kepercayaan khusus di Panduan AWS Identity and Access Management Pengguna.

Jika Anda adalah administrator Macie yang didelegasikan untuk organisasi, mulailah dengan menggunakan editor kebijakan IAM untuk membuat kebijakan izin untuk peran IAM. Kebijakan tersebut harus sebagai berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] }, { "Sid": "AssumeMacieRevealRoleForCrossAccountAccess", "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Resource": "arn:aws:iam::*:role/IAMRoleName" } ] }

Di mana IAM RoleName adalah nama peran IAM untuk diasumsikan oleh Macie saat mengambil sampel data sensitif dari objek S3 yang terpengaruh untuk akun organisasi Anda. Ganti nilai ini dengan nama peran yang Anda buat untuk akun Anda, dan rencanakan untuk membuat akun anggota yang berlaku di organisasi Anda. Nama ini harus sama untuk akun administrator Macie Anda dan setiap akun anggota yang berlaku.

catatan

Dalam kebijakan izin sebelumnya, Resource elemen dalam pernyataan pertama menggunakan karakter wildcard (*). Hal ini memungkinkan entitas IAM terlampir untuk mengambil objek dari semua bucket S3 yang dimiliki organisasi Anda. Untuk mengizinkan akses ini hanya untuk bucket tertentu, ganti karakter wildcard dengan Amazon Resource Name (ARN) dari setiap bucket. Misalnya, untuk mengizinkan akses hanya ke objek dalam bucket bernama DOC-EXAMPLE-BUCKET, ubah elemen menjadi:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"

Anda juga dapat membatasi akses ke objek dalam bucket S3 tertentu untuk masing-masing akun. Untuk melakukannya, tentukan ARN bucket dalam Resource elemen kebijakan izin untuk peran IAM di setiap akun yang berlaku. Untuk informasi dan contoh selengkapnya, lihat elemen kebijakan IAM JSON: Sumber daya di AWS Identity and Access ManagementPanduan Pengguna.

Setelah Anda membuat kebijakan izin untuk peran IAM, buat dan konfigurasikan peran tersebut. Jika Anda melakukannya dengan menggunakan konsol IAM, pilih Kebijakan kepercayaan khusus sebagai jenis entitas tepercaya untuk peran tersebut. Untuk kebijakan kepercayaan yang mendefinisikan entitas tepercaya untuk peran tersebut, tentukan hal berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieReveal", "Effect": "Allow", "Principal": { "Service": "reveal-samples.macie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountID" } } } ] }

Dimana AccountID adalah ID akun untuk Anda. Akun AWS Ganti nilai ini dengan ID akun 12 digit Anda.

Dalam kebijakan kepercayaan sebelumnya:

  • PrincipalElemen menentukan prinsip layanan yang digunakan Macie saat mengambil sampel data sensitif dari objek S3 yang terpengaruh,. reveal-samples.macie.amazonaws.com

  • ActionElemen menentukan tindakan yang diizinkan untuk dilakukan oleh prinsipal layanan, AssumeRolepengoperasian AWS Security Token Service (AWS STS) API.

  • ConditionElemen mendefinisikan kondisi yang menggunakan aws: SourceAccount global condition context key. Kondisi ini menentukan akun mana yang dapat melakukan tindakan yang ditentukan. Dalam hal ini, memungkinkan Macie untuk mengambil peran hanya untuk akun yang ditentukan (accountID). Kondisi ini membantu mencegah Macie digunakan sebagai wakil yang bingung selama transaksi denganAWS STS.

Setelah Anda menentukan kebijakan kepercayaan untuk peran IAM, lampirkan kebijakan izin ke peran tersebut. Ini harus menjadi kebijakan izin yang Anda buat sebelum Anda mulai membuat peran. Kemudian selesaikan langkah-langkah yang tersisa di IAM untuk menyelesaikan pembuatan dan konfigurasi peran. Setelah selesai, konfigurasikan dan aktifkan pengaturan di Macie.

Jika Anda memiliki akun anggota Macie dan Anda ingin mengizinkan administrator Macie untuk mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda, mulailah dengan meminta administrator Macie Anda untuk informasi berikut:

  • Nama peran IAM untuk dibuat. Nama harus sama untuk akun Anda dan akun administrator Macie untuk organisasi Anda.

  • Nama kebijakan izin IAM untuk dilampirkan ke peran.

  • ID eksternal yang akan ditentukan dalam kebijakan kepercayaan untuk peran tersebut. ID ini harus berupa ID eksternal yang dihasilkan Macie untuk konfigurasi administrator Macie Anda.

Setelah Anda menerima informasi ini, gunakan editor kebijakan IAM untuk membuat kebijakan izin untuk peran tersebut. Kebijakan tersebut harus sebagai berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] } ] }

Kebijakan izin sebelumnya memungkinkan entitas IAM terlampir untuk mengambil objek dari semua bucket S3 untuk akun Anda. Ini karena Resource elemen dalam kebijakan menggunakan karakter wildcard (*). Untuk mengizinkan akses ini hanya untuk bucket tertentu, ganti karakter wildcard dengan Amazon Resource Name (ARN) dari setiap bucket. Misalnya, untuk mengizinkan akses hanya ke objek dalam bucket bernama DOC-EXAMPLE-BUCKET2, ubah elemen menjadi:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET2/*"

Untuk informasi dan contoh selengkapnya, lihat elemen kebijakan IAM JSON: Sumber daya di AWS Identity and Access ManagementPanduan Pengguna.

Setelah Anda membuat kebijakan izin untuk peran IAM, buat peran tersebut. Jika Anda membuat peran menggunakan konsol IAM, pilih Kebijakan kepercayaan khusus sebagai jenis entitas tepercaya untuk peran tersebut. Untuk kebijakan kepercayaan yang mendefinisikan entitas tepercaya untuk peran tersebut, tentukan hal berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieAdminRevealRoleForCrossAccountAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::administratorAccountID:role/IAMRoleName" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "externalID", "aws:PrincipalOrgID": "${aws:ResourceOrgID}" } } } ] }

Dalam kebijakan sebelumnya, ganti nilai placeholder dengan nilai yang benar untuk lingkungan AndaAWS, di mana:

  • AdministratorAccountID adalah ID akun 12 digit untuk akun administrator Macie Anda.

  • IAM RoleName adalah nama peran IAM di akun administrator Macie Anda. Itu harus menjadi nama yang Anda terima dari administrator Macie Anda.

  • ExternalLID adalah ID eksternal yang Anda terima dari administrator Macie Anda.

Secara umum, kebijakan kepercayaan memungkinkan administrator Macie Anda untuk mengambil peran untuk mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda. PrincipalElemen menentukan ARN peran IAM di akun administrator Macie Anda. Ini adalah peran yang digunakan administrator Macie Anda untuk mengambil dan mengungkapkan sampel data sensitif untuk akun organisasi Anda. ConditionBlok mendefinisikan dua kondisi yang selanjutnya menentukan siapa yang dapat mengambil peran:

  • Kondisi pertama menentukan ID eksternal yang unik untuk konfigurasi organisasi Anda. Untuk mempelajari lebih lanjut tentang ID eksternal, lihat Cara menggunakan ID eksternal saat memberikan akses ke AWS sumber daya Anda kepada pihak ketiga dalam Panduan AWS Identity and Access Management Pengguna.

  • Kondisi kedua menggunakan kunci konteks kondisi global aws: PrincipalOrg ID. Nilai untuk kunci adalah variabel dinamis yang mewakili pengidentifikasi unik untuk organisasi di AWS Organizations (${aws:ResourceOrgID}). Kondisi ini membatasi akses hanya ke akun-akun yang merupakan bagian dari organisasi yang sama diAWS Organizations. Jika Anda bergabung dengan organisasi Anda dengan menerima undangan di Macie, hapus ketentuan ini dari kebijakan.

Setelah Anda menentukan kebijakan kepercayaan untuk peran IAM, lampirkan kebijakan izin ke peran tersebut. Ini harus menjadi kebijakan izin yang Anda buat sebelum Anda mulai membuat peran. Kemudian selesaikan langkah-langkah yang tersisa di IAM untuk menyelesaikan pembuatan dan konfigurasi peran. Jangan mengkonfigurasi dan memasukkan pengaturan untuk peran di Macie.

Jika Anda memiliki akun Macie mandiri atau akun anggota Macie dan Anda ingin mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh untuk akun Anda sendiri, mulailah dengan menggunakan editor kebijakan IAM untuk membuat kebijakan izin untuk peran IAM. Kebijakan tersebut harus sebagai berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveS3Objects", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "*" ] } ] }

Dalam kebijakan izin sebelumnya, Resource elemen menggunakan karakter wildcard (*). Hal ini memungkinkan entitas IAM terlampir untuk mengambil objek dari semua bucket S3 untuk akun Anda. Untuk mengizinkan akses ini hanya untuk bucket tertentu, ganti karakter wildcard dengan Amazon Resource Name (ARN) dari setiap bucket. Misalnya, untuk mengizinkan akses hanya ke objek dalam bucket bernama DOC-EXAMPLE-BUCKET3, ubah elemen menjadi:

"Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET3/*"

Untuk informasi dan contoh selengkapnya, lihat elemen kebijakan IAM JSON: Sumber daya di AWS Identity and Access ManagementPanduan Pengguna.

Setelah Anda membuat kebijakan izin untuk peran IAM, buat peran tersebut. Jika Anda membuat peran menggunakan konsol IAM, pilih Kebijakan kepercayaan khusus sebagai jenis entitas tepercaya untuk peran tersebut. Untuk kebijakan kepercayaan yang mendefinisikan entitas tepercaya untuk peran tersebut, tentukan hal berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMacieReveal", "Effect": "Allow", "Principal": { "Service": "reveal-samples.macie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountID" } } } ] }

Dimana AccountID adalah ID akun untuk Anda. Akun AWS Ganti nilai ini dengan ID akun 12 digit Anda.

Dalam kebijakan kepercayaan sebelumnya:

  • PrincipalElemen menentukan prinsip layanan yang digunakan Macie saat mengambil dan mengungkapkan sampel data sensitif dari objek S3 yang terpengaruh,. reveal-samples.macie.amazonaws.com

  • ActionElemen menentukan tindakan yang diizinkan untuk dilakukan oleh prinsipal layanan, AssumeRolepengoperasian AWS Security Token Service (AWS STS) API.

  • ConditionElemen mendefinisikan kondisi yang menggunakan aws: SourceAccount global condition context key. Kondisi ini menentukan akun mana yang dapat melakukan tindakan yang ditentukan. Hal ini memungkinkan Macie untuk mengambil peran hanya untuk akun tertentu (accountID). Kondisi ini membantu mencegah Macie digunakan sebagai wakil yang bingung selama transaksi denganAWS STS.

Setelah Anda menentukan kebijakan kepercayaan untuk peran IAM, lampirkan kebijakan izin ke peran tersebut. Ini harus menjadi kebijakan izin yang Anda buat sebelum Anda mulai membuat peran. Kemudian selesaikan langkah-langkah yang tersisa di IAM untuk menyelesaikan pembuatan dan konfigurasi peran. Setelah selesai, konfigurasikan dan aktifkan pengaturan di Macie.

Mendekripsi objek S3 yang terpengaruh

Amazon S3 mendukung beberapa opsi enkripsi untuk objek S3. Untuk sebagian besar opsi ini, tidak ada sumber daya tambahan atau izin yang diperlukan untuk pengguna IAM atau peran untuk mendekripsi dan mengambil sampel data sensitif dari objek yang terpengaruh. Ini adalah kasus untuk objek yang dienkripsi menggunakan enkripsi sisi server dengan kunci terkelola Amazon S3 atau terkelola. AWS AWS KMS key

Namun, jika objek S3 dienkripsi dengan pelanggan yang dikelolaAWS KMS key, izin tambahan diperlukan untuk mendekripsi dan mengambil sampel data sensitif dari objek. Lebih khusus lagi, kebijakan kunci untuk kunci KMS harus memungkinkan pengguna atau peran IAM untuk melakukan tindakan. kms:Decrypt Jika tidak, kesalahan terjadi dan Macie tidak mengambil sampel apa pun dari objek. Untuk mempelajari cara menyediakan akses ini bagi pengguna IAM, lihat Otentikasi dan kontrol akses AWS KMS di Panduan AWS Key Management ServicePengembang.

Cara menyediakan akses ini untuk peran IAM tergantung pada apakah akun yang memiliki AWS KMS key juga memiliki peran tersebut:

  • Jika akun yang sama memiliki kunci KMS dan peran, pengguna akun harus memperbarui kebijakan kunci.

  • Jika satu akun memiliki kunci KMS dan akun yang berbeda memiliki peran tersebut, pengguna akun yang memiliki kunci harus mengizinkan akses lintas akun ke kunci tersebut.

Topik ini menjelaskan cara melakukan tugas ini untuk peran IAM yang Anda buat untuk mengambil sampel data sensitif dari objek S3. Ini juga memberikan contoh untuk kedua skenario. Untuk informasi tentang mengizinkan akses ke pelanggan yang dikelola AWS KMS keys untuk skenario lain, lihat Otentikasi dan kontrol akses untuk AWS KMS di Panduan AWS Key Management Service Pengembang.

Mengizinkan akses akun yang sama ke kunci yang dikelola pelanggan

Jika akun yang sama memiliki peran AWS KMS key dan IAM, pengguna akun harus menambahkan pernyataan ke kebijakan kunci. Pernyataan tambahan harus memungkinkan peran IAM untuk mendekripsi data dengan menggunakan kunci. Untuk informasi detail tentang pembaruan kebijakan kunci, lihat Mengganti kebijakan kunci dalam Panduan Developer AWS Key Management Service.

Dalam pernyataan:

  • PrincipalElemen harus menentukan Nama Sumber Daya Amazon (ARN) dari peran IAM.

  • Array Action harus menentukan tindakan kms:Decrypt. Ini adalah satu-satunya AWS KMS tindakan yang peran IAM harus diizinkan untuk melakukan dekripsi objek yang dienkripsi dengan kunci.

Berikut ini adalah contoh pernyataan untuk ditambahkan ke kebijakan untuk kunci KMS.

{ "Sid": "Allow the Macie reveal role to use the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/IAMRoleName" }, "Action": [ "kms:Decrypt" ], "Resource": "*" }

Dalam contoh sebelumnya:

  • AWSBidang dalam Principal elemen menentukan ARN dari peran IAM dalam akun. Hal ini memungkinkan peran untuk melakukan tindakan yang ditentukan oleh pernyataan kebijakan. 123456789012 adalah contoh ID akun. Ganti nilai ini dengan ID akun untuk akun yang memiliki peran dan kunci KMS. IAM RoleName adalah nama contoh. Ganti nilai ini dengan nama peran IAM di akun.

  • ActionArray menentukan tindakan yang diizinkan untuk dilakukan oleh peran IAM menggunakan kunci KMS — mendekripsi ciphertext yang dienkripsi dengan kunci.

Tempat Anda menambahkan pernyataan ini ke kebijakan kunci bergantung pada struktur dan elemen yang saat ini berisi kebijakan. Ketika Anda menambahkan pernyataan, pastikan bahwa sintaksnya valid. Kebijakan kunci menggunakan format JSON. Ini berarti bahwa Anda juga harus menambahkan koma sebelum atau setelah pernyataan, tergantung pada tempat Anda menambahkan pernyataan ke kebijakan.

Mengizinkan akses lintas akun ke kunci yang dikelola pelanggan

Jika satu akun memiliki AWS KMS key (pemilik kunci) dan akun yang berbeda memiliki peran IAM (pemilik peran), pemilik kunci harus memberi pemilik peran akses lintas akun ke kunci tersebut. Salah satu cara untuk melakukannya adalah dengan menggunakan hibah. Hibah adalah instrumen kebijakan yang memungkinkan AWS prinsipal untuk menggunakan kunci KMS dalam operasi kriptografi jika kondisi yang ditentukan oleh hibah terpenuhi. Untuk mempelajari tentang hibah, lihat Hibah AWS KMS di Panduan AWS Key Management Service Pengembang.

Dengan pendekatan ini, pemilik kunci pertama-tama memastikan bahwa kebijakan kunci memungkinkan pemilik peran untuk membuat hibah untuk kunci tersebut. Pemilik peran kemudian membuat hibah untuk kunci tersebut. Hibah tersebut mendelegasikan izin yang relevan ke peran IAM di akun mereka. Hal ini memungkinkan peran untuk mendekripsi objek S3 yang dienkripsi dengan kunci.

Langkah 1: Perbarui kebijakan utama

Dalam kebijakan kunci, pemilik kunci harus memastikan bahwa kebijakan tersebut menyertakan pernyataan yang memungkinkan pemilik peran untuk membuat hibah untuk peran IAM di akun mereka (pemilik peran). Dalam pernyataan ini, Principal elemen harus menentukan ARN dari akun pemilik peran. Array Action harus menentukan tindakan kms:CreateGrant. Sebuah Condition blok dapat memfilter akses ke tindakan yang ditentukan. Berikut ini adalah contoh pernyataan ini dalam kebijakan untuk kunci KMS.

{ "Sid": "Allow a role in an account to create a grant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringEquals": { "kms:GranteePrincipal": "arn:aws:iam::111122223333:role/IAMRoleName" }, "ForAllValues:StringEquals": { "kms:GrantOperations": "Decrypt" } } }

Dalam contoh sebelumnya:

  • AWSBidang dalam Principal elemen menentukan ARN dari akun pemilik peran. Ini memungkinkan akun untuk melakukan tindakan yang ditentukan oleh pernyataan kebijakan. 111122223333 adalah contoh ID akun. Ganti nilai ini dengan ID akun untuk akun pemilik peran.

  • ActionArray menentukan tindakan yang diizinkan oleh pemilik peran pada kunci KMS—buat hibah untuk kunci tersebut.

  • ConditionBlok menggunakan operator kondisi dan kunci kondisi berikut untuk memfilter akses ke tindakan yang diizinkan dilakukan oleh pemilik peran pada kunci KMS:

    • kms: GranteePrincipal — Kondisi ini memungkinkan pemilik peran untuk membuat hibah hanya untuk pokok penerima hibah yang ditentukan, yang merupakan ARN dari peran IAM di akun mereka. Dalam ARN itu, 111122223333 adalah contoh ID akun. Ganti nilai ini dengan ID akun untuk akun pemilik peran. IAM RoleName adalah nama contoh. Ganti nilai ini dengan nama peran IAM di akun pemilik peran.

    • kms: GrantOperations — Kondisi ini memungkinkan pemilik peran untuk membuat hibah hanya untuk mendelegasikan izin untuk melakukan AWS KMS Decrypt tindakan (mendekripsi ciphertext yang dienkripsi dengan kunci). Ini mencegah pemilik peran membuat hibah yang mendelegasikan izin untuk melakukan tindakan lain pada kunci KMS. DecryptTindakan adalah satu-satunya AWS KMS tindakan yang harus diizinkan untuk dilakukan peran IAM untuk mendekripsi objek yang dienkripsi dengan kunci.

Di mana pemilik kunci menambahkan pernyataan ini ke kebijakan kunci tergantung pada struktur dan elemen yang saat ini terkandung dalam kebijakan tersebut. Ketika pemilik kunci menambahkan pernyataan, mereka harus memastikan bahwa sintaksnya valid. Kebijakan kunci menggunakan format JSON. Ini berarti bahwa pemilik kunci juga harus menambahkan koma sebelum atau setelah pernyataan, tergantung pada tempat mereka menambahkan pernyataan ke kebijakan. Untuk informasi detail tentang pembaruan kebijakan kunci, lihat Mengganti kebijakan kunci dalam Panduan Developer AWS Key Management Service.

Langkah 2: Buat hibah

Setelah pemilik kunci memperbarui kebijakan kunci seperlunya, pemilik peran membuat hibah untuk kunci tersebut. Hibah mendelegasikan izin yang relevan ke peran IAM di akun mereka (pemilik peran). Sebelum pemilik peran membuat hibah, mereka harus memverifikasi bahwa mereka diizinkan untuk melakukan kms:CreateGrant tindakan. Tindakan ini memungkinkan mereka untuk menambahkan hibah ke pelanggan yang sudah ada dan dikelolaAWS KMS key.

Untuk membuat hibah, pemilik peran dapat menggunakan CreateGrantpengoperasian AWS Key Management Service API. Saat pemilik peran membuat hibah, mereka harus menentukan nilai berikut untuk parameter yang diperlukan:

  • KeyId— ARN dari kunci KMS. Untuk akses lintas akun ke kunci KMS, nilai ini harus berupa ARN. Tidak bisa menggunakan kunci ID.

  • GranteePrincipal— ARN dari peran IAM dalam akun mereka. Nilai ini seharusnyaarn:aws:iam::111122223333:role/IAMRoleName, di mana 111122223333 adalah ID akun untuk akun pemilik peran dan IAM RoleName adalah nama peran.

  • Operations— Tindakan AWS KMS dekripsi ()Decrypt. Ini adalah satu-satunya AWS KMS tindakan yang peran IAM harus diizinkan untuk melakukan dekripsi objek yang dienkripsi dengan kunci KMS.

Jika pemilik peran menggunakan AWS Command Line Interface (AWS CLI), mereka dapat menjalankan perintah create-grant untuk membuat hibah. Contoh berikut menunjukkan cara melakukannya. Contoh ini diformat untuk Microsoft Windows dan menggunakan karakter kelanjutan baris caret (^) untuk meningkatkan keterbacaan.

C:\> aws kms create-grant ^ --key-id arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab ^ --grantee-principal arn:aws:iam::111122223333:role/IAMRoleName ^ --operations "Decrypt"

Di mana:

  • key-idmenentukan ARN dari kunci KMS untuk menerapkan hibah ke.

  • grantee-principalmenentukan ARN dari peran IAM yang diizinkan untuk melakukan tindakan yang ditentukan oleh hibah. Nilai ini harus sesuai dengan ARN yang ditentukan oleh kms:GranteePrincipal kondisi dalam kebijakan kunci.

  • operationsmenentukan tindakan bahwa hibah memungkinkan prinsipal yang ditentukan untuk melakukan—mendekripsi ciphertext yang dienkripsi dengan kunci.

Jika perintah berjalan dengan berhasil, Anda menerima output yang mirip dengan berikut ini.

{ "GrantToken": "<grant token>", "GrantId": "1a2b3c4d2f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2" }

Yang mana GrantToken merupakan string yang unik, non-rahasia, variabel-panjang, base64-encoded yang mewakili hibah yang diciptakan, dan GrantId adalah pengidentifikasi unik untuk hibah.