Syarat dan konsep untuk AWS RAM - AWS Resource Access Manager

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

Syarat dan konsep untuk AWS RAM

Konsep berikut membantu menjelaskan bagaimana Anda dapat menggunakan AWS Resource Access Manager (AWS RAM) untuk berbagi sumber daya Anda.

Berbagi sumber daya

Anda berbagi sumber daya menggunakan AWS RAM dengan membuat pembagian sumber daya. Pembagian sumber daya memiliki tiga elemen berikut:

  • Daftar satu atau lebih AWS sumber daya untuk dibagikan.

  • Daftar satu atau lebih kepala sekolah kepada siapa akses ke sumber daya diberikan.

  • Izin terkelola untuk setiap jenis sumber daya yang Anda sertakan dalam pembagian. Setiap izin terkelola berlaku untuk semua sumber daya jenis itu dalam pembagian sumber daya tersebut.

Setelah Anda menggunakan AWS RAM untuk membuat pembagian sumber daya, prinsipal yang ditentukan dalam pembagian sumber daya dapat diberikan akses ke sumber daya berbagi.

  • Jika Anda mengaktifkan AWS RAM berbagi dengan AWS Organizations, dan prinsipal yang Anda bagikan berada di organisasi yang sama dengan akun berbagi, prinsipal tersebut dapat menerima akses segera setelah administrator akun mereka memberi mereka izin untuk menggunakan sumber daya menggunakan kebijakan izin (IAM). AWS Identity and Access Management

  • Jika Anda tidak mengaktifkan AWS RAM berbagi dengan Organizations, Anda masih dapat berbagi sumber daya dengan individu Akun AWS yang ada di organisasi Anda. Administrator di akun konsumsi menerima undangan untuk bergabung dengan pembagian sumber daya, dan mereka harus menerima undangan sebelum kepala sekolah yang ditentukan dalam pembagian sumber daya dapat mengakses sumber daya bersama.

  • Anda juga dapat berbagi dengan akun di luar organisasi Anda, jika jenis sumber daya mendukungnya. Administrator di akun konsumsi menerima undangan untuk bergabung dengan pembagian sumber daya, dan mereka harus menerima undangan sebelum kepala sekolah yang ditentukan dalam pembagian sumber daya dapat mengakses sumber daya bersama. Untuk informasi tentang jenis sumber daya yang mendukung jenis berbagi ini, lihat Sumber daya yang dapat dibagikan AWS dan lihat kolom Dapat berbagi dengan akun di luar organisasinya.

Berbagi akun

Akun berbagi berisi sumber daya yang dibagikan dan di mana AWS RAM administrator membuat pembagian AWS sumber daya dengan menggunakan AWS RAM.

AWS RAM Administrator adalah prinsipal IAM yang memiliki izin untuk membuat dan mengonfigurasi pembagian sumber daya di file. Akun AWS Karena AWS RAM berfungsi dengan melampirkan kebijakan berbasis sumber daya ke sumber daya dalam pembagian sumber daya, AWS RAM administrator juga harus memiliki izin untuk memanggil PutResourcePolicy operasi Layanan AWS untuk setiap jenis sumber daya yang disertakan dalam pembagian sumber daya.

Prinsip konsumsi

Akun konsumsi adalah tempat Akun AWS sumber daya dibagikan. Pembagian sumber daya dapat menentukan seluruh akun sebagai prinsipal, atau untuk beberapa jenis sumber daya, peran individu, atau pengguna dalam akun. Untuk informasi tentang jenis sumber daya yang mendukung jenis berbagi ini, lihat Sumber daya yang dapat dibagikan AWS dan lihat kolom Dapat berbagi dengan peran & pengguna IAM.

AWS RAM juga mendukung prinsip layanan sebagai konsumen pembagian sumber daya. Untuk informasi tentang jenis sumber daya yang mendukung jenis berbagi ini, lihat Sumber daya yang dapat dibagikan AWS dan lihat kolom Dapat berbagi dengan prinsipal layanan.

Prinsipal di akun konsumsi hanya dapat melakukan tindakan yang diizinkan oleh kedua izin berikut:

  • Izin terkelola yang dilampirkan ke pembagian sumber daya. Ini menentukan izin maksimum yang dapat diberikan kepada prinsipal di akun konsumsi.

  • Kebijakan berbasis identitas IAM yang dilampirkan pada peran individu atau pengguna oleh administrator IAM di akun konsumsi. Kebijakan tersebut harus memberikan Allow akses ke tindakan yang ditentukan dan ke Nama Sumber Daya Amazon (ARN) sumber daya di akun berbagi.

AWS RAM mendukung tipe utama IAM berikut sebagai konsumen pembagian sumber daya:

  • Lain Akun AWS - Pembagian sumber daya membuat sumber daya yang disertakan dalam akun berbagi tersedia untuk akun konsumen.

  • Peran IAM individu atau pengguna di akun lain — Beberapa jenis sumber daya mendukung berbagi langsung dengan peran IAM individu atau pengguna. Tentukan tipe utama ini dengan ARN-nya.

    • Peran IAMarn:aws:iam::123456789012:role/rolename

    • Pengguna IAM - arn:aws:iam::123456789012:user/username

  • Prinsipal layanan — Bagikan sumber daya dengan AWS layanan untuk memberikan akses layanan ke pembagian sumber daya. Pembagian utama layanan memungkinkan AWS layanan untuk mengambil tindakan atas nama Anda untuk meringankan beban operasional.

    Untuk berbagi dengan kepala layanan, pilih untuk mengizinkan berbagi dengan siapa pun, dan kemudian, di bawah Pilih jenis utama, pilih Prinsipal layanan dari daftar tarik-turun. Tentukan nama kepala layanan dalam format berikut:

    • service-id.amazonaws.com

    Untuk mengurangi risiko wakil yang bingung, kebijakan sumber daya menunjukkan ID akun pemilik sumber daya di kunci aws:SourceAccount kondisi.

  • Akun dalam organisasi — Jika akun berbagi dikelola oleh AWS Organizations, maka pembagian sumber daya dapat menentukan ID organisasi untuk dibagikan dengan semua akun di organisasi. Pembagian sumber daya dapat menentukan ID unit organisasi (OU) untuk dibagikan dengan semua akun di OU tersebut. Akun berbagi hanya dapat berbagi dengan organisasinya sendiri atau OU IDs dalam organisasinya sendiri. Tentukan akun dalam suatu organisasi oleh ARN organisasi atau OU.

    • Semua akun dalam suatu organisasi — Berikut ini adalah contoh ARN dari sebuah organisasi di: AWS Organizations

      arn:aws:organizations::123456789012:organization/o-<orgid>

    • Semua akun dalam unit organisasi - Berikut ini adalah contoh ARN dari ID OU:

      arn:aws:organizations::123456789012:organization/o-<orgid>/ou-<rootid>-<ouid>

    penting

    Ketika Anda berbagi dengan organisasi atau OU, dan cakupan itu mencakup akun yang memiliki pembagian sumber daya, semua kepala sekolah di akun berbagi secara otomatis mendapatkan akses ke sumber daya dalam pembagian. Akses yang diberikan ditentukan oleh izin terkelola yang terkait dengan pembagian. Ini karena kebijakan berbasis sumber daya yang AWS RAM melekat pada setiap sumber daya dalam penggunaan berbagi. "Principal": "*" Untuk informasi selengkapnya, lihat Implikasi penggunaan "Principal": "*" dalam kebijakan berbasis sumber daya.

    Prinsipal di akun konsumsi lainnya tidak segera mendapatkan akses ke sumber daya saham. Administrator akun lain harus terlebih dahulu melampirkan kebijakan izin berbasis identitas ke kepala sekolah yang sesuai. Kebijakan tersebut harus memberikan Allow akses ke sumber ARNs daya individu dalam pembagian sumber daya. Izin dalam kebijakan tersebut tidak dapat melebihi yang ditentukan dalam izin terkelola yang terkait dengan pembagian sumber daya.

Kebijakan berbasis sumber daya

Kebijakan berbasis sumber daya adalah dokumen teks JSON yang menerapkan bahasa kebijakan IAM. Tidak seperti kebijakan berbasis identitas yang Anda lampirkan ke prinsipal, seperti peran IAM atau pengguna, Anda melampirkan kebijakan berbasis sumber daya ke sumber daya. AWS RAM kebijakan berbasis sumber daya penulis atas nama Anda berdasarkan informasi yang Anda berikan untuk pembagian sumber daya Anda. Anda harus menentukan elemen Principal kebijakan yang menentukan siapa yang dapat mengakses sumber daya. Untuk informasi selengkapnya, lihat Kebijakan berbasis identitas dan kebijakan berbasis sumber daya di Panduan Pengguna IAM.

Kebijakan berbasis sumber daya yang dihasilkan oleh AWS RAM dievaluasi bersama dengan semua jenis kebijakan IAM lainnya. Ini termasuk kebijakan berbasis identitas IAM yang dilampirkan pada prinsipal yang mencoba mengakses sumber daya, dan kebijakan kontrol layanan () SCPs untuk itu mungkin berlaku untuk. AWS Organizations Akun AWS Kebijakan berbasis sumber daya yang dihasilkan dengan AWS RAM berpartisipasi dalam logika evaluasi kebijakan yang sama seperti semua kebijakan IAM lainnya. Untuk detail lengkap tentang evaluasi kebijakan dan cara menentukan izin yang dihasilkan, lihat Logika evaluasi kebijakan di Panduan Pengguna IAM.

AWS RAM memberikan pengalaman berbagi sumber daya yang sederhana dan aman dengan menyediakan kebijakan berbasis sumber daya easy-to-use abstraksi.

Untuk jenis sumber daya yang mendukung kebijakan berbasis sumber daya, AWS RAM secara otomatis membuat dan mengelola kebijakan berbasis sumber daya untuk Anda. Untuk sumber daya tertentu, AWS RAM buat kebijakan berbasis sumber daya dengan menggabungkan informasi dari semua pembagian sumber daya yang mencakup sumber daya tersebut. Misalnya, pertimbangkan saluran Amazon SageMaker AI yang Anda bagikan dengan menggunakan AWS RAM dan sertakan dalam dua pembagian sumber daya yang berbeda. Anda dapat menggunakan satu pembagian sumber daya untuk menyediakan akses hanya-baca ke seluruh organisasi Anda. Anda kemudian dapat menggunakan pembagian sumber daya lainnya untuk hanya memberikan izin eksekusi SageMaker AI ke satu akun. AWS RAM secara otomatis menggabungkan dua set izin yang berbeda ke dalam kebijakan sumber daya tunggal dengan beberapa pernyataan. Kemudian melampirkan kebijakan berbasis sumber daya gabungan ke sumber daya pipa. Anda dapat melihat kebijakan sumber daya dasar ini dengan memanggil GetResourcePolicyoperasi. Layanan AWS kemudian gunakan kebijakan berbasis sumber daya tersebut untuk memberi wewenang kepada prinsipal mana pun yang mencoba melakukan tindakan pada sumber daya bersama.

Meskipun Anda dapat secara manual membuat kebijakan berbasis sumber daya dan melampirkannya ke sumber daya Anda dengan meneleponPutResourcePolicy, kami sarankan Anda menggunakannya AWS RAM karena memberikan keuntungan berikut:

  • Dapat ditemukan untuk konsumen berbagi — Jika Anda berbagi sumber daya dengan menggunakan AWS RAM, pengguna dapat melihat semua sumber daya yang dibagikan dengan mereka secara langsung di konsol layanan yang memiliki sumber daya dan operasi API seolah-olah sumber daya tersebut langsung ada di akun pengguna. Misalnya, jika Anda berbagi AWS CodeBuild proyek dengan akun lain, pengguna di akun konsumer dapat melihat proyek di CodeBuild konsol dan hasil operasi CodeBuild API yang dilakukan. Sumber daya yang dibagikan dengan melampirkan kebijakan berbasis sumber daya secara langsung tidak terlihat seperti ini. Sebaliknya, Anda harus menemukan dan secara eksplisit merujuk ke sumber daya oleh ARN-nya.

  • Pengelolaan untuk pemilik saham — Jika Anda berbagi sumber daya dengan menggunakan AWS RAM, pemilik sumber daya di akun berbagi dapat melihat secara terpusat akun lain mana yang memiliki akses ke sumber daya mereka. Jika Anda berbagi sumber daya menggunakan kebijakan berbasis sumber daya, Anda dapat melihat akun pengguna hanya dengan memeriksa kebijakan untuk sumber daya individual di konsol layanan atau API yang relevan.

  • Efisiensi — Jika Anda berbagi sumber daya dengan menggunakan AWS RAM, Anda dapat berbagi banyak sumber daya dan mengelolanya sebagai satu unit. Sumber daya yang dibagikan hanya dengan menggunakan kebijakan berbasis sumber daya memerlukan kebijakan individual yang dilampirkan ke setiap sumber daya yang Anda bagikan.

  • Kesederhanaan — Dengan AWS RAM, Anda tidak perlu memahami bahasa kebijakan IAM berbasis JSON. AWS RAM memberikan izin ready-to-use AWS terkelola yang dapat Anda pilih untuk dilampirkan ke pembagian sumber daya Anda.

Dengan menggunakan AWS RAM, Anda bahkan dapat membagikan beberapa jenis sumber daya yang belum mendukung kebijakan berbasis sumber daya. Untuk jenis sumber daya tersebut, AWS RAM secara otomatis membuat kebijakan berbasis sumber daya sebagai representasi dari izin yang sebenarnya. Pengguna dapat melihat representasi ini dengan memanggil GetResourcePolicy. Ini termasuk jenis sumber daya berikut:

  • Amazon Aurora - kluster DB

  • Amazon EC2 — reservasi kapasitas dan host khusus

  • AWS License Manager - Konfigurasi lisensi

  • AWS Outposts — Tabel rute gateway lokal, pos terdepan, dan situs

  • Amazon Route 53 - Aturan penerusan

  • Amazon Virtual Private Cloud — IPv4 Alamat milik pelanggan, daftar awalan, subnet, target cermin lalu lintas, gateway transit, dan domain multicast gateway transit

Contoh kebijakan berbasis sumber daya yang AWS RAM dihasilkan

Jika Anda membagikan sumber daya EC2 gambar Image Builder dengan akun individual AWS RAM , buat kebijakan yang terlihat seperti contoh berikut dan lampirkan ke sumber daya gambar apa pun yang disertakan dalam pembagian sumber daya.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::123456789012:root"}, "Action": [ "imagebuilder:GetImage", "imagebuilder:ListImages", ], "Resource": "arn:aws:imagebuilder:us-east-1:123456789012:image/testimage/1.0.0/44" } ] }

Jika Anda berbagi sumber daya EC2 gambar Image Builder dengan peran IAM atau pengguna lain Akun AWS, buat AWS RAM kebijakan yang terlihat seperti contoh berikut dan lampirkan ke sumber daya gambar apa pun yang disertakan dalam pembagian sumber daya.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MySampleRole" }, "Action": [ "imagebuilder:GetImage", "imagebuilder:ListImages", ], "Resource": "arn:aws:imagebuilder:us-east-1:123456789012:image/testimage/1.0.0/44" } ] }

Jika Anda membagikan sumber daya gambar Image Builder dengan semua akun di organisasi atau dengan akun OU, buat AWS RAM kebijakan yang terlihat seperti contoh berikut dan lampirkan ke sumber daya gambar apa pun yang disertakan dalam pembagian sumber daya. EC2

catatan

Kebijakan ini menggunakan "Principal": "*" dan kemudian menggunakan "Condition" elemen untuk membatasi izin identitas yang cocok dengan yang ditentukan. PrincipalOrgID Untuk informasi selengkapnya, lihat Implikasi penggunaan "Principal": "*" dalam kebijakan berbasis sumber daya.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "imagebuilder:GetImage", "imagebuilder:ListImages", ], "Resource": "arn:aws:imagebuilder:us-east-1:123456789012:image/testimage/1.0.0/44" "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-123456789" } } } ] }

Implikasi penggunaan "Principal": "*" dalam kebijakan berbasis sumber daya

Saat Anda memasukkan "Principal": "*" dalam kebijakan berbasis sumber daya, kebijakan tersebut memberikan akses ke semua prinsip IAM di akun yang berisi sumber daya, tunduk pada batasan apa pun yang diberlakukan oleh elemen, jika ada. Condition DenyPernyataan eksplisit dalam kebijakan apa pun yang berlaku untuk prinsipal panggilan akan mengesampingkan izin yang diberikan oleh kebijakan ini. Namun, implisit Deny (artinya kurangnya eksplisitAllow) dalam kebijakan identitas yang berlaku, kebijakan batas izin, atau kebijakan sesi tidak mengakibatkan kepada prinsipal yang diberikan akses Deny ke tindakan oleh kebijakan berbasis sumber daya tersebut.

Jika perilaku ini tidak diinginkan untuk skenario Anda, maka Anda dapat membatasi perilaku ini dengan menambahkan Deny pernyataan eksplisit ke kebijakan identitas, batas izin, atau kebijakan sesi yang memengaruhi peran dan pengguna yang relevan.

Izin terkelola

Izin terkelola menentukan tindakan apa yang dapat dilakukan oleh prinsipal dalam kondisi apa pada jenis sumber daya yang didukung dalam pembagian sumber daya. Saat membuat pembagian sumber daya, Anda harus menentukan izin terkelola mana yang akan digunakan untuk setiap jenis sumber daya yang disertakan dalam pembagian sumber daya. Izin terkelola mencantumkan kumpulan actions dan kondisi yang dapat dilakukan oleh prinsipal dengan sumber daya yang digunakan bersama. AWS RAM

Anda hanya dapat melampirkan satu izin terkelola untuk setiap jenis sumber daya dalam pembagian sumber daya. Anda tidak dapat membuat pembagian sumber daya di mana beberapa sumber daya dari jenis tertentu menggunakan satu izin terkelola dan sumber daya lain dari jenis yang sama menggunakan izin terkelola yang berbeda. Untuk melakukan itu, Anda perlu membuat dua pembagian sumber daya yang berbeda dan membagi sumber daya di antara mereka, memberikan setiap set izin terkelola yang berbeda. Ada dua jenis izin terkelola:

AWS izin terkelola

AWS izin terkelola dibuat dan dikelola oleh AWS dan memberikan izin untuk skenario pelanggan umum. AWS RAM mendefinisikan setidaknya satu izin AWS terkelola untuk setiap jenis sumber daya yang didukung. Beberapa jenis sumber daya mendukung lebih dari satu izin AWS terkelola, dengan satu izin terkelola ditetapkan sebagai AWS default. Izin AWS terkelola default dikaitkan kecuali Anda menentukan sebaliknya.

Izin terkelola pelanggan

Izin terkelola pelanggan adalah izin terkelola yang Anda buat dan pertahankan dengan menentukan secara tepat tindakan mana yang dapat dilakukan dalam kondisi mana dengan sumber daya yang digunakan bersama. AWS RAM Misalnya, Anda ingin membatasi akses baca untuk kumpulan Amazon VPC IP Address Manager (IPAM), yang membantu Anda mengelola alamat IP Anda dalam skala besar. Anda dapat membuat izin terkelola pelanggan bagi pengembang Anda untuk menetapkan alamat IP, tetapi tidak melihat rentang alamat IP yang ditetapkan akun pengembang lain. Anda dapat mengikuti praktik terbaik dengan hak istimewa paling sedikit, hanya memberikan izin yang diperlukan untuk melakukan tugas pada sumber daya bersama.

Anda menentukan izin Anda sendiri untuk jenis sumber daya dalam berbagi sumber daya dengan opsi untuk menambahkan kondisi seperti Kunci Konteks Global dan kunci khusus layanan untuk menentukan kondisi di mana prinsipal memiliki akses ke sumber daya. Izin ini dapat digunakan dalam satu atau lebih AWS RAM saham. Izin terkelola pelanggan bersifat spesifik Wilayah.

AWS RAM mengambil izin terkelola sebagai masukan untuk membuat kebijakan berbasis sumber daya untuk sumber daya yang Anda bagikan.

Versi izin terkelola

Setiap perubahan pada izin terkelola direpresentasikan sebagai versi baru dari izin terkelola tersebut. Versi baru adalah default untuk semua pembagian sumber daya baru. Setiap izin terkelola selalu memiliki satu versi yang ditetapkan sebagai versi default. Saat Anda atau AWS membuat versi izin terkelola baru, Anda harus secara eksplisit memperbarui izin terkelola untuk setiap pembagian sumber daya yang ada. Anda dapat mengevaluasi perubahan sebelum menerapkannya ke bagian sumber daya Anda di langkah ini. Semua pembagian sumber daya baru akan secara otomatis menggunakan versi baru dari izin terkelola untuk jenis sumber daya yang sesuai.

AWS versi izin terkelola

AWS menangani semua perubahan pada izin AWS terkelola. Perubahan tersebut mengatasi fungsionalitas baru atau menghapus kekurangan yang ditemukan. Anda hanya dapat menerapkan versi izin terkelola default ke pembagian sumber daya Anda.

Versi izin yang dikelola pelanggan

Anda menangani semua perubahan pada izin yang dikelola pelanggan. Anda dapat membuat versi default baru, menetapkan versi yang lebih lama sebagai default, atau menghapus versi yang tidak lagi terkait dengan pembagian sumber daya apa pun. Setiap izin yang dikelola pelanggan dapat memiliki hingga lima versi.

Saat membuat atau memperbarui pembagian sumber daya, Anda hanya dapat melampirkan versi default dari izin terkelola yang ditentukan. Untuk informasi selengkapnya, lihat Memperbarui izin AWS terkelola ke versi yang lebih baru.