Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Akses sumber daya lintas akun di IAM
Untuk beberapa AWS layanan, Anda dapat memberikan akses lintas akun ke sumber daya menggunakan IAM. Untuk melakukan ini, Anda dapat melampirkan kebijakan sumber daya langsung ke sumber daya yang ingin Anda bagikan, atau menggunakan peran sebagai proxy.
Untuk berbagi sumber daya secara langsung, sumber daya yang ingin Anda bagikan harus mendukung kebijakan berbasis sumber daya. Tidak seperti kebijakan berbasis identitas untuk peran, kebijakan berbasis sumber daya menentukan siapa (kepala sekolah mana) yang dapat mengakses sumber daya tersebut.
Gunakan peran sebagai proxy saat Anda ingin mengakses sumber daya di akun lain yang tidak mendukung kebijakan berbasis sumber daya.
Untuk detail tentang perbedaan antara jenis kebijakan ini, lihatIdentity-based kebijakan dan kebijakan berbasis sumber daya.
catatan
Peran IAM dan kebijakan berbasis sumber daya mendelegasikan akses ke seluruh akun hanya dengan satu partisi. Misalnya, Anda memiliki akun di AS Barat (N. California) di aws partisi standar. Anda juga memiliki akun di China di aws-cn partisi. Anda tidak dapat menggunakan kebijakan berbasis sumber daya di akun Anda di China untuk mengizinkan akses bagi pengguna di akun standar AWS Anda.
Cross-account akses menggunakan peran
Tidak semua AWS layanan mendukung kebijakan berbasis sumber daya. Untuk layanan ini, Anda dapat menggunakan peran IAM lintas akun untuk memusatkan manajemen izin saat menyediakan akses lintas akun ke beberapa layanan. Peran IAM lintas akun adalah peran IAM yang mencakup kebijakan kepercayaan yang memungkinkan kepala sekolah IAM di AWS akun lain untuk mengambil peran tersebut. Sederhananya, Anda dapat membuat peran dalam satu AWS akun yang mendelegasikan izin tertentu ke AWS akun lain.
Untuk informasi tentang melampirkan kebijakan ke identitas IAM, lihat Kelola kebijakan IAM.
catatan
Ketika kepala sekolah beralih ke peran untuk sementara menggunakan izin peran, mereka menyerahkan izin aslinya dan mengambil izin yang ditetapkan untuk peran yang telah mereka ambil.
Mari kita lihat keseluruhan proses yang berlaku untuk perangkat lunak Mitra APN yang perlu mengakses akun pelanggan.
-
Pelanggan membuat peran IAM di akun mereka sendiri dengan kebijakan yang memungkinkan akses sumber daya Amazon S3 yang dibutuhkan mitra APN. Dalam contoh ini, nama peran adalah
APNPartner. -
Kemudian, pelanggan menentukan bahwa peran dapat diasumsikan oleh AWS akun mitra dengan memberikan Akun AWS ID Mitra APN dalam kebijakan kepercayaan untuk
APNPartnerperan tersebut. -
Pelanggan memberikan Nama Sumber Daya Amazon (ARN) dari peran tersebut kepada mitra APN. ARN adalah nama peran yang sepenuhnya memenuhi syarat.
arn:aws:iam::Customer-Account-ID:role/APNPartnercatatan
Sebaiknya gunakan ID eksternal dalam situasi multi-penyewa. Lihat perinciannya di Akses ke Akun AWS dimiliki oleh pihak ketiga.
-
Ketika perangkat lunak Mitra APN perlu mengakses akun pelanggan, perangkat lunak memanggil AssumeRole API AWS Security Token Service dengan ARN peran di akun pelanggan. STS mengembalikan AWS kredensi sementara yang memungkinkan perangkat lunak melakukan pekerjaannya.
Untuk contoh lain pemberian akses lintas akun menggunakan peran, lihatAkses untuk pengguna IAM di yang lain Akun AWS yang Anda miliki. Anda juga dapat mengikutiTutorial IAM: Delegasikan akses di seluruh AWS akun yang menggunakan peran IAM.
Cross-account akses menggunakan kebijakan berbasis sumber daya
Ketika akun mengakses sumber daya melalui akun lain menggunakan kebijakan berbasis sumber daya, prinsipal masih bekerja di akun tepercaya dan tidak harus menyerahkan izin mereka untuk menerima izin peran. Dengan kata lain, kepala sekolah terus memiliki akses ke sumber daya di akun tepercaya sambil memiliki akses ke sumber daya di akun yang dipercaya. Ini berguna untuk tugas seperti menyalin informasi ke atau dari sumber daya yang dibagikan di akun lain.
Prinsipal yang dapat Anda tentukan dalam kebijakan berbasis sumber daya termasuk akun, pengguna IAM, prinsipal pengguna federasi, prinsipal AWS STS federasi SAML, prinsipal federasi OIDC, peran IAM, sesi peran yang diasumsikan, atau layanan. AWS Untuk informasi selengkapnya, lihat Menentukan prinsipal.
Untuk mempelajari apakah kepala sekolah di akun di luar zona kepercayaan Anda (organisasi atau akun tepercaya) memiliki akses untuk mengambil peran Anda, lihat Mengi dentifikasi sumber daya yang dibagikan dengan entitas eksternal.
Daftar berikut mencakup beberapa AWS layanan yang mendukung kebijakan berbasis sumber daya. Untuk daftar lengkap peningkatan jumlah AWS layanan yang mendukung melampirkan kebijakan izin ke sumber daya alih-alih prinsipal, lihat AWS layanan yang bekerja dengan IAM dan cari layanan yang memiliki Ya di kolom Berbasis Sumber Daya.
-
Bucket Amazon S3 — Kebijakan dilampirkan ke bucket, tetapi kebijakan mengontrol akses ke bucket dan objek di dalamnya. Untuk informasi selengkapnya, lihat Kebijakan Bucket untuk Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon. Dalam beberapa kasus, yang terbaik mungkin adalah menggunakan peran untuk akses lintas akun ke Amazon S3 Untuk informasi selengkapnya, lihat contoh panduan di Panduan Pengguna Layanan Peny impanan Sederhana Amazon.
-
Topik Amazon Simple Notification Service (Amazon SNS) — Untuk informasi selengkapnya, lihat Contoh kasus untuk kontrol akses Amazon SNS di Panduan Pengembang Layanan Pem beritahuan Sederhana Amazon.
-
Antrian Amazon Simple Queue Service (Amazon SQS) — Untuk informasi selengkapnya, lihat Lampiran: Bahasa Kebijakan Akses di Panduan Pengembang Layanan Antrian Sederhana Amazon.
Resource-based Kebijakan untuk mendelegasikan AWS izin
Jika sumber daya memberikan izin kepada prinsipal di akun Anda, maka Anda dapat mendelegasikan izin tersebut kepada identitas IAM tertentu. Identitas adalah pengguna, kelompok pengguna, atau peran dalam akun Anda. Anda mendelegasikan izin dengan melampirkan kebijakan ke identitas. Anda dapat memberikan izin maksimum yang diizinkan oleh akun pemilik sumber daya.
penting
Dalam akses lintas akun, prinsipal membutuhkan kebijakan identitas dan kebijakan berbasis sumber daya. Allow
Asumsikan bahwa kebijakan berbasis sumber daya memberi semua prinsipal di akun Anda akses administratif penuh ke sumber daya. Kemudian Anda dapat mendelegasikan akses penuh, akses baca-saja, atau akses parsional lainnya ke kepala sekolah di akun Anda. AWS Alternatifnya, jika kebijakan berbasis sumber daya hanya memberikan izin daftar, maka Anda hanya dapat mendelegasikan akses daftar. Jika Anda mencoba untuk mendelegasikan lebih banyak izin dari yang dimiliki akun Anda, prinsipal Anda masih hanya akan memiliki akses daftar.
Untuk informasi selengkapnya tentang bagaimana keputusan ini dibuat, lihat Men entukan apakah permintaan diizinkan atau ditolak dalam akun.
catatan
Peran IAM dan kebijakan berbasis sumber daya mendelegasikan akses ke seluruh akun hanya dengan satu partisi. Misalnya, Anda tidak dapat menambahkan akses lintas akun antara akun dalam partisi aws standar dan akun dalam partisi aws-cn.
Sebagai contoh, anggaplah bahwa Anda mengelola AccountA dan AccountB. Di AccountA, Anda memiliki bucket Amazon S3 bernamaBucketA.
-
Anda melampirkan kebijakan berbasis sumber daya
BucketAyang memungkinkan semua kepala sekolah di AccounTB akses penuh ke objek di bucket Anda. Mereka dapat membuat, membaca, atau menghapus objek apa pun dalam bucket tersebut.AccountA memberi AccountB akses penuh ke BucketA dengan menamai accountB sebagai prinsipal dalam kebijakan berbasis sumber daya. Akibatnya, AccountB diberi wewenang untuk melakukan tindakan apa pun pada BucketA, dan administrator AccountB dapat mendelegasikan akses ke penggunanya di AccountB.
Pengguna root AccountB memiliki semua izin yang diberikan ke akun. Oleh karena itu, pengguna root memiliki akses penuh ke BucketA.
-
Di AccountB, lampirkan kebijakan ke pengguna IAM bernama User2. Kebijakan itu memungkinkan pengguna akses read-only ke objek di BucketA. Itu berarti bahwa User2 dapat melihat objek, tetapi tidak membuat, mengedit, atau menghapusnya.
Tingkat akses maksimum yang dapat didelegasikan AccountB adalah tingkat akses yang diberikan ke akun. Dalam hal ini, kebijakan berbasis sumber daya memberikan akses penuh ke AccountB, tetapi User2 hanya diberikan akses baca-saja.
Administrator AccountB tidak memberikan akses ke User1. Secara default, pengguna tidak memiliki izin apa pun kecuali yang diberikan secara eksplisit, sehingga User1 tidak memiliki akses ke BucketA.
IAM mengevaluasi izin prinsipal pada saat prinsipal mengajukan permintaan. Jika Anda menggunakan wildcard (*) untuk memberi pengguna akses penuh ke sumber daya Anda, kepala sekolah dapat mengakses sumber daya apa pun yang dapat diakses AWS akun Anda. Hal ini berlaku bahkan untuk sumber daya yang Anda tambahkan atau Anda memiliki akses kepadanya setelah membuat kebijakan pengguna.
Dalam contoh sebelumnya, jika accountB telah melampirkan kebijakan ke Pengguna2 yang mengizinkan akses penuh ke semua sumber daya di semua akun, Pengguna2 akan secara otomatis memiliki akses ke sumber daya apa pun yang dapat diakses AccountB. Ini termasuk akses BucketA dan akses ke sumber daya lain yang diberikan oleh kebijakan berbasis sumber daya di AccountA.
Untuk informasi selengkapnya tentang penggunaan peran yang kompleks, seperti memberikan akses ke aplikasi dan layanan, lihatSkenario umum untuk peran IAM.
penting
Berikan akses hanya kepada entitas yang Anda percayai, dan berikan tingkat akses minimum yang diperlukan. Setiap kali entitas tepercaya adalah AWS akun lain, prinsipal IAM apa pun dapat diberikan akses ke sumber daya Anda. Akun tepercaya AWS hanya dapat mendelegasikan akses sejauh telah diberikan akses; akun tepercaya tidak dapat mendelegasikan lebih banyak akses daripada yang diberikan akun itu sendiri.
Untuk informasi tentang izin, kebijakan, dan bahasa kebijakan izin yang Anda gunakan untuk menyusun kebijakan, lihat Manajemen akses untuk AWS sumber daya.