Identity and Access Management untuk AWS Cloud9 - AWS Cloud9

AWS Cloud9 tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS Cloud9 dapat terus menggunakan layanan seperti biasa. Pelajari selengkapnya

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

Identity and Access Management untuk AWS Cloud9

AWS Identity and Access Management (IAM) adalah Layanan AWS yang membantu administrator mengontrol akses ke AWS sumber daya dengan aman. Administrator IAM mengontrol siapa yang dapat diautentikasi (masuk) dan diberi wewenang (memiliki izin) untuk menggunakan sumber daya. AWS Cloud9 IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.

Audiens

Cara Anda menggunakan AWS Identity and Access Management (IAM) berbeda berdasarkan peran Anda:

Mengautentikasi dengan identitas

Otentikasi adalah cara Anda masuk AWS menggunakan kredensi identitas Anda. Anda harus diautentikasi sebagai Pengguna root akun AWS, pengguna IAM, atau dengan mengasumsikan peran IAM.

Anda dapat masuk sebagai identitas federasi menggunakan kredensional dari sumber identitas seperti AWS IAM Identity Center (Pusat Identitas IAM), otentikasi masuk tunggal, atau kredensional. Google/Facebook Untuk informasi selengkapnya tentang masuk, lihat Cara masuk ke Panduan AWS Sign-In Pengguna Anda Akun AWS.

Untuk akses terprogram, AWS sediakan SDK dan CLI untuk menandatangani permintaan secara kriptografis. Untuk informasi selengkapnya, lihat Versi AWS Tanda Tangan 4 untuk permintaan API di Panduan Pengguna IAM.

Akun AWS pengguna root

Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang disebut pengguna Akun AWS root yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensil pengguna root, lihat Tugas yang memerlukan kredensil pengguna root di Panduan Pengguna IAM.

Identitas gabungan

Sebagai praktik terbaik, mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses Layanan AWS menggunakan kredensi sementara.

Identitas federasi adalah pengguna dari direktori perusahaan Anda, penyedia identitas web, atau AWS Directory Service yang mengakses Layanan AWS menggunakan kredensi dari sumber identitas. Identitas federasi mengambil peran yang memberikan kredensi sementara.

Untuk manajemen akses terpusat, kami sarankan AWS IAM Identity Center. Untuk informasi lebih lanjut, lihat Apa itu Pusat Identitas IAM? dalam AWS IAM Identity Center User Guide.

Pengguna dan grup IAM

Pengguna IAM adalah identitas dengan izin khusus untuk satu orang atau aplikasi. Sebaiknya gunakan kredensi sementara alih-alih pengguna IAM dengan kredensial jangka panjang. Untuk informasi selengkapnya, lihat Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensi sementara di Panduan Pengguna IAM.

Grup IAM menentukan kumpulan pengguna IAM dan membuat izin lebih mudah dikelola untuk kumpulan pengguna yang besar. Untuk informasi selengkapnya, lihat Kasus penggunaan untuk pengguna IAM di Panduan Pengguna IAM.

IAM role

Peran IAM adalah identitas dengan izin khusus yang menyediakan kredensil sementara. Anda dapat mengambil peran dengan beralih dari pengguna ke peran IAM (konsol) atau dengan memanggil operasi AWS CLI atau AWS API. Untuk informasi selengkapnya, lihat Metode untuk mengambil peran dalam Panduan Pengguna IAM.

Peran IAM berguna untuk akses pengguna gabungan, izin pengguna IAM sementara, akses lintas akun, akses lintas layanan, dan aplikasi yang berjalan di Amazon. EC2 Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM dalam Panduan Pengguna IAM.

Mengelola akses menggunakan kebijakan

Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan menentukan izin saat dikaitkan dengan identitas atau sumber daya. AWS mengevaluasi kebijakan ini ketika kepala sekolah membuat permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang dokumen kebijakan JSON, lihat Ringkasan kebijakan JSON di Panduan Pengguna IAM.

Menggunakan kebijakan, administrator menentukan siapa yang memiliki akses ke apa dengan mendefinisikan prinsipal mana yang dapat melakukan tindakan pada sumber daya apa, dan dalam kondisi apa.

Secara default, pengguna dan peran tidak memiliki izin. Administrator IAM membuat kebijakan IAM dan menambahkannya ke peran, yang kemudian dapat diasumsikan oleh pengguna. Kebijakan IAM menentukan izin terlepas dari metode yang digunakan untuk melakukan operasi.

Kebijakan berbasis identitas

Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang Anda lampirkan ke identitas (pengguna, grup, atau peran). Kebijakan ini mengontrol tindakan apa yang dapat dilakukan identitas, pada sumber daya mana, dan dalam kondisi apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan terkelola pelanggan dalam Panduan Pengguna IAM.

Kebijakan berbasis identitas dapat berupa kebijakan inline (disematkan langsung ke dalam satu identitas) atau kebijakan terkelola (kebijakan mandiri yang dilampirkan pada beberapa identitas). Untuk mempelajari cara memilih antara kebijakan terkelola dan sebaris, lihat Memilih antara kebijakan terkelola dan kebijakan sebaris di Panduan Pengguna IAM.

Kebijakan berbasis sumber daya

Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contohnya termasuk kebijakan kepercayaan peran IAM dan kebijakan bucket Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Anda harus menentukan prinsipal dalam kebijakan berbasis sumber daya.

Kebijakan berbasis sumber daya merupakan kebijakan inline yang terletak di layanan tersebut. Anda tidak dapat menggunakan kebijakan AWS terkelola dari IAM dalam kebijakan berbasis sumber daya.

Jenis-jenis kebijakan lain

AWS mendukung jenis kebijakan tambahan yang dapat menetapkan izin maksimum yang diberikan oleh jenis kebijakan yang lebih umum:

  • Batas izin — Tetapkan izin maksimum yang dapat diberikan oleh kebijakan berbasis identitas kepada entitas IAM. Untuk informasi selengkapnya, lihat Batas izin untuk entitas IAM di Panduan Pengguna IAM.

  • Kebijakan kontrol layanan (SCPs) — Tentukan izin maksimum untuk organisasi atau unit organisasi di AWS Organizations. Untuk informasi selengkapnya, lihat Kebijakan kontrol layanan di Panduan Pengguna AWS Organizations .

  • Kebijakan kontrol sumber daya (RCPs) — Tetapkan izin maksimum yang tersedia untuk sumber daya di akun Anda. Untuk informasi selengkapnya, lihat Kebijakan kontrol sumber daya (RCPs) di Panduan AWS Organizations Pengguna.

  • Kebijakan sesi — Kebijakan lanjutan diteruskan sebagai parameter saat membuat sesi sementara untuk peran atau pengguna gabungan. Untuk informasi selengkapnya, lihat Kebijakan sesi dalam Panduan Pengguna IAM.

Berbagai jenis kebijakan

Ketika beberapa jenis kebijakan berlaku pada suatu permintaan, izin yang dihasilkan lebih rumit untuk dipahami. Untuk mempelajari cara AWS menentukan apakah akan mengizinkan permintaan saat beberapa jenis kebijakan terlibat, lihat Logika evaluasi kebijakan di Panduan Pengguna IAM.

Bagaimana AWS Cloud9 bekerja dengan IAM

Sebelum Anda menggunakan IAM untuk mengelola akses AWS Cloud9, pelajari fitur IAM yang tersedia untuk digunakan. AWS Cloud9

Untuk mendapatkan tampilan tingkat tinggi tentang cara AWS Cloud9 dan AWS layanan lain bekerja dengan sebagian besar fitur IAM, lihat AWS layanan yang bekerja dengan IAM di Panduan Pengguna IAM.

Kebijakan berbasis identitas untuk AWS Cloud9

Mendukung kebijakan berbasis identitas: Ya

Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang dapat Anda lampirkan ke sebuah identitas, seperti pengguna IAM, grup pengguna IAM, atau peran IAM. Kebijakan ini mengontrol jenis tindakan yang dapat dilakukan oleh pengguna dan peran, di sumber daya mana, dan berdasarkan kondisi seperti apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan terkelola pelanggan dalam Panduan Pengguna IAM.

Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan secara spesifik apakah tindakan dan sumber daya diizinkan atau ditolak, serta kondisi yang menjadi dasar dikabulkan atau ditolaknya tindakan tersebut. Untuk mempelajari semua elemen yang dapat Anda gunakan dalam kebijakan JSON, lihat Referensi elemen kebijakan JSON IAM dalam Panduan Pengguna IAM.

Contoh kebijakan berbasis identitas untuk AWS Cloud9

Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS Cloud9

Kebijakan berbasis sumber daya dalam AWS Cloud9

Mendukung kebijakan berbasis sumber daya: Tidak

Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contoh kebijakan berbasis sumber daya adalah kebijakan kepercayaan peran IAM dan kebijakan bucket Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Untuk sumber daya tempat kebijakan dilampirkan, kebijakan menentukan tindakan apa yang dapat dilakukan oleh prinsipal tertentu pada sumber daya tersebut dan dalam kondisi apa. Anda harus menentukan prinsipal dalam kebijakan berbasis sumber daya. Prinsipal dapat mencakup akun, pengguna, peran, pengguna federasi, atau. Layanan AWS

Untuk mengaktifkan akses lintas akun, Anda dapat menentukan secara spesifik seluruh akun atau entitas IAM di akun lain sebagai prinsipal dalam kebijakan berbasis sumber daya. Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM dalam Panduan Pengguna IAM.

AWS Cloud9 tidak mendukung kebijakan berbasis sumber daya tetapi Anda masih dapat mengontrol izin sumber daya AWS Cloud9 lingkungan untuk anggota AWS Cloud9 lingkungan melalui API dan IDE. AWS Cloud9 AWS Cloud9

Tindakan kebijakan untuk AWS Cloud9

Mendukung tindakan kebijakan: Ya

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.

Elemen Action dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan. Sertakan tindakan dalam kebijakan untuk memberikan izin untuk melakukan operasi terkait.

Untuk melihat daftar AWS Cloud9 tindakan, lihat Tindakan yang ditentukan oleh AWS Cloud9 dalam Referensi Otorisasi Layanan.

Tindakan kebijakan AWS Cloud9 menggunakan awalan berikut sebelum tindakan:

account

Untuk menetapkan secara spesifik beberapa tindakan dalam satu pernyataan, pisahkan tindakan tersebut dengan koma.

"Action": [ "account:action1", "account:action2" ]

Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS Cloud9

Sumber daya kebijakan untuk AWS Cloud9

Mendukung sumber daya kebijakan: Ya

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.

Elemen kebijakan JSON Resource menentukan objek yang menjadi target penerapan tindakan. Praktik terbaiknya, tentukan sumber daya menggunakan Amazon Resource Name (ARN). Untuk tindakan yang tidak mendukung izin tingkat sumber daya, gunakan wildcard (*) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.

"Resource": "*"

Untuk melihat daftar jenis sumber daya dan jenis AWS Cloud9 sumber daya ARNs, lihat Sumber daya yang ditentukan oleh AWS Cloud9 dalam Referensi Otorisasi Layanan. Untuk mempelajari tindakan yang dapat menentukan ARN setiap sumber daya, lihat Tindakan yang ditentukan oleh AWS Cloud9.

Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS Cloud9

Kunci kondisi kebijakan untuk AWS Cloud9

Mendukung kunci kondisi kebijakan khusus layanan: Yes

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Artinya, prinsipal manakah yang dapat melakukan tindakan pada sumber daya apa, dan dengan kondisi apa.

ConditionElemen menentukan ketika pernyataan mengeksekusi berdasarkan kriteria yang ditetapkan. Anda dapat membuat ekspresi bersyarat yang menggunakan operator kondisi, misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta. Untuk melihat semua kunci kondisi AWS global, lihat kunci konteks kondisi AWS global di Panduan Pengguna IAM.

Untuk melihat daftar kunci AWS Cloud9 kondisi, lihat Kunci kondisi untuk AWS Cloud9 dalam Referensi Otorisasi Layanan. Untuk mempelajari tindakan dan sumber daya yang dapat Anda gunakan kunci kondisi, lihat Tindakan yang ditentukan oleh AWS Cloud9.

Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas, lihat. Contoh kebijakan berbasis identitas untuk AWS Cloud9

ACLs di AWS Cloud9

Mendukung ACLs: Tidak

Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.

ABAC dengan AWS Cloud9

Mendukung ABAC (tanda dalam kebijakan): Ya

Attribute-based access control (ABAC) adalah strategi otorisasi yang mendefinisikan izin berdasarkan atribut yang disebut tag. Anda dapat melampirkan tag ke entitas dan AWS sumber daya IAM, lalu merancang kebijakan ABAC untuk mengizinkan operasi saat tag prinsipal cocok dengan tag pada sumber daya.

Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di elemen kondisi dari kebijakan menggunakan kunci kondisi aws:ResourceTag/key-name, aws:RequestTag/key-name, atau aws:TagKeys.

Jika sebuah layanan mendukung ketiga kunci kondisi untuk setiap jenis sumber daya, nilainya adalah Ya untuk layanan tersebut. Jika suatu layanan mendukung ketiga kunci kondisi untuk hanya beberapa jenis sumber daya, nilainya adalah Parsial.

Untuk informasi selengkapnya tentang ABAC, lihat Tentukan izin dengan otorisasi ABAC dalam Panduan Pengguna IAM. Untuk melihat tutorial yang menguraikan langkah-langkah pengaturan ABAC, lihat Menggunakan kontrol akses berbasis atribut (ABAC) dalam Panduan Pengguna IAM.

Menggunakan kredensi sementara dengan AWS Cloud9

Mendukung kredensial sementara: Ya

Kredensi sementara menyediakan akses jangka pendek ke AWS sumber daya dan secara otomatis dibuat saat Anda menggunakan federasi atau beralih peran. AWS merekomendasikan agar Anda secara dinamis menghasilkan kredensi sementara alih-alih menggunakan kunci akses jangka panjang. Untuk informasi selengkapnya, lihat Kredensi keamanan sementara di IAM dan Layanan AWS yang berfungsi dengan IAM di Panduan Pengguna IAM.

Teruskan sesi akses untuk AWS Cloud9

Mendukung sesi akses terusan (FAS): Ya

Sesi akses teruskan (FAS) menggunakan izin pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. Untuk detail kebijakan ketika mengajukan permintaan FAS, lihat Sesi akses terusan.

Peran layanan untuk AWS Cloud9

Mendukung peran layanan: Ya

Peran layanan adalah peran IAM yang diambil oleh sebuah layanan untuk melakukan tindakan atas nama Anda. Administrator IAM dapat membuat, mengubah, dan menghapus peran layanan dari dalam IAM. Untuk informasi selengkapnya, lihat Buat sebuah peran untuk mendelegasikan izin ke Layanan AWS dalam Panduan pengguna IAM.

Awas

Mengubah izin untuk peran layanan dapat merusak AWS Cloud9 fungsionalitas. Edit peran layanan hanya jika AWS Cloud9 memberikan panduan untuk melakukannya.

Peran terkait layanan untuk AWS Cloud9

Mendukung peran terkait layanan: Ya

Peran terkait layanan adalah jenis peran layanan yang ditautkan ke. Layanan AWS Layanan tersebut dapat menjalankan peran untuk melakukan tindakan atas nama Anda. Peran terkait layanan muncul di Anda Akun AWS dan dimiliki oleh layanan. Administrator IAM dapat melihat, tetapi tidak dapat mengedit izin untuk peran terkait layanan.

Untuk detail tentang pembuatan atau manajemen peran terkait layanan, lihat Layanan AWS yang berfungsi dengan IAM. Cari layanan dalam tabel yang memiliki Yes di kolom Peran terkait layanan. Pilih tautan Ya untuk melihat dokumentasi peran terkait layanan untuk layanan tersebut.

Contoh kebijakan berbasis identitas untuk AWS Cloud9

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau mengubah sumber daya AWS Cloud9 . Untuk memberikan izin kepada pengguna untuk melakukan tindakan di sumber daya yang mereka perlukan, administrator IAM dapat membuat kebijakan IAM.

Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat Membuat kebijakan IAM (konsol) di Panduan Pengguna IAM.

Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh AWS Cloud9, termasuk format ARNs untuk setiap jenis sumber daya, lihat Kunci tindakan, sumber daya, dan kondisi AWS Cloud9 dalam Referensi Otorisasi Layanan.

Praktik terbaik kebijakan

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus AWS Cloud9 sumber daya di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:

  • Mulailah dengan kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit — Untuk mulai memberikan izin kepada pengguna dan beban kerja Anda, gunakan kebijakan AWS terkelola yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola AWS pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat Kebijakan yang dikelola AWS atau Kebijakan yang dikelola AWS untuk fungsi tugas dalam Panduan Pengguna IAM.

  • Menerapkan izin dengan hak akses paling rendah – Ketika Anda menetapkan izin dengan kebijakan IAM, hanya berikan izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai izin dengan hak akses paling rendah. Untuk informasi selengkapnya tentang cara menggunakan IAM untuk mengajukan izin, lihat Kebijakan dan izin dalam IAM dalam Panduan Pengguna IAM.

  • Gunakan kondisi dalam kebijakan IAM untuk membatasi akses lebih lanjut – Anda dapat menambahkan suatu kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Sebagai contoh, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui yang spesifik Layanan AWS, seperti AWS CloudFormation. Untuk informasi selengkapnya, lihat Elemen kebijakan JSON IAM: Kondisi dalam Panduan Pengguna IAM.

  • Gunakan IAM Access Analyzer untuk memvalidasi kebijakan IAM Anda untuk memastikan izin yang aman dan fungsional – IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa kebijakan IAM (JSON) dan praktik terbaik IAM. IAM Access Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat Validasi kebijakan dengan IAM Access Analyzer dalam Panduan Pengguna IAM.

  • Memerlukan otentikasi multi-faktor (MFA) - Jika Anda memiliki skenario yang mengharuskan pengguna IAM atau pengguna root di Anda, Akun AWS aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA ketika operasi API dipanggil, tambahkan kondisi MFA pada kebijakan Anda. Untuk informasi selengkapnya, lihat Amankan akses API dengan MFA dalam Panduan Pengguna IAM.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat Praktik terbaik keamanan di IAM dalam Panduan Pengguna IAM.

Menggunakan konsol AWS Cloud9

Untuk mengakses AWS Cloud9 konsol, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang AWS Cloud9 sumber daya di Anda Akun AWS. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana mestinya untuk entitas (pengguna atau peran) dengan kebijakan tersebut.

Anda tidak perlu mengizinkan izin konsol minimum untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai gantinya, izinkan akses hanya ke tindakan yang sesuai dengan operasi API yang coba mereka lakukan.

Untuk memastikan bahwa pengguna dan peran masih dapat menggunakan AWS Cloud9 konsol, lampirkan juga kebijakan AWS Cloud9 ConsoleAccess atau ReadOnly AWS terkelola ke entitas. Untuk informasi selengkapnya, lihat Menambah izin untuk pengguna dalam Panduan Pengguna IAM.

Mengizinkan pengguna melihat izin mereka sendiri

Contoh ini menunjukkan cara membuat kebijakan yang mengizinkan pengguna IAM melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau menggunakan API atau secara terprogram. AWS CLI AWS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Memecahkan masalah AWS Cloud9 identitas dan akses

Gunakan informasi berikut untuk membantu Anda mendiagnosis dan memperbaiki masalah umum yang mungkin Anda temui saat bekerja dengan AWS Cloud9 dan IAM.

Saya tidak berwenang untuk melakukan tindakan di AWS Cloud9

Jika Anda menerima pesan kesalahan bahwa Anda tidak memiliki otorisasi untuk melakukan tindakan, kebijakan Anda harus diperbarui agar Anda dapat melakukan tindakan tersebut.

Contoh kesalahan berikut terjadi ketika pengguna IAM mateojackson mencoba menggunakan konsol untuk melihat detail tentang suatu sumber daya my-example-widget rekaan, tetapi tidak memiliki izin awes:GetWidget rekaan.

User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: awes:GetWidget on resource: my-example-widget

Dalam hal ini, kebijakan untuk pengguna mateojackson harus diperbarui untuk mengizinkan akses ke sumber daya my-example-widget dengan menggunakan tindakan awes:GetWidget.

Jika Anda memerlukan bantuan, hubungi AWS administrator Anda. Administrator Anda adalah orang yang memberi Anda kredensial masuk.

Saya tidak berwenang untuk melakukan iam: PassRole

Jika Anda menerima kesalahan bahwa Anda tidak diizinkan melakukan tindakan iam:PassRole, kebijakan Anda harus diperbarui agar Anda dapat meneruskan peran ke AWS Cloud9.

Beberapa Layanan AWS memungkinkan Anda untuk meneruskan peran yang ada ke layanan tersebut alih-alih membuat peran layanan baru atau peran terkait layanan. Untuk melakukannya, Anda harus memiliki izin untuk meneruskan peran ke layanan.

Contoh kesalahan berikut terjadi ketika pengguna IAM bernama marymajor mencoba menggunakan konsol tersebut untuk melakukan tindakan di AWS Cloud9. Namun, tindakan tersebut memerlukan layanan untuk mendapatkan izin yang diberikan oleh peran layanan. Mary tidak memiliki izin untuk meneruskan peran tersebut pada layanan.

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

Dalam kasus ini, kebijakan Mary harus diperbarui agar dia mendapatkan izin untuk melakukan tindakan iam:PassRole tersebut.

Jika Anda memerlukan bantuan, hubungi AWS administrator Anda. Administrator Anda adalah orang yang memberi Anda kredensial masuk.

Saya ingin mengizinkan orang di luar saya Akun AWS untuk mengakses AWS Cloud9 sumber daya saya

Anda dapat membuat peran yang dapat digunakan pengguna di akun lain atau orang-orang di luar organisasi Anda untuk mengakses sumber daya Anda. Anda dapat menentukan siapa saja yang dipercaya untuk mengambil peran tersebut. Untuk layanan yang mendukung kebijakan berbasis sumber daya atau daftar kontrol akses (ACLs), Anda dapat menggunakan kebijakan tersebut untuk memberi orang akses ke sumber daya Anda.

Untuk mempelajari selengkapnya, periksa referensi berikut:

Bagaimana AWS Cloud9 bekerja dengan sumber daya dan operasi IAM

AWS Identity and Access Management digunakan untuk mengelola izin yang memungkinkan Anda untuk bekerja dengan lingkungan AWS Cloud9 pengembangan dan lainnya Layanan AWS dan sumber daya.

AWS Cloud9 sumber daya dan operasi

Pada tahun AWS Cloud9, sumber daya utama adalah lingkungan AWS Cloud9 pembangunan. Dalam kebijakan, Anda menggunakan Amazon Resource Name (ARN) untuk mengidentifikasi sumber daya yang mengikuti kebijakan tersebut. Tabel berikut mencantumkan lingkungan ARNs. Untuk informasi selengkapnya, lihat Nama Sumber Daya Amazon (ARNs) dan Ruang Nama AWS Layanan di. Referensi Umum Amazon Web Services

Jenis sumber daya Format ARN

Lingkungan

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

Setiap lingkungan yang dimiliki oleh akun yang ditentukan dalam yang ditentukan Wilayah AWS

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:*

Setiap lingkungan yang dimiliki oleh akun yang ditentukan di Wilayah yang ditentukan

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:*

Setiap AWS Cloud9 sumber daya, terlepas dari akun dan Wilayah

arn:aws:cloud9:*

Misalnya, Anda dapat menunjukkan lingkungan tertentu dalam pernyataan Anda menggunakan Nama Sumber Daya Amazon (ARN), sebagai berikut.

"Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX"

Untuk menentukan semua sumber daya, gunakan karakter wildcard (*) dalam Resource elemen.

"Resource": "*"

Untuk menentukan beberapa sumber daya dalam satu pernyataan, pisahkan Amazon Resource Names (ARNs) dengan koma.

"Resource": [ "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX", "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" ]

AWS Cloud9 menyediakan satu set operasi untuk bekerja dengan AWS Cloud9 sumber daya. Untuk daftar, lihat AWS Cloud9 referensi izin.

Memahami kepemilikan sumber daya

Akun AWS Akun memiliki sumber daya yang dibuat di akun, terlepas dari siapa yang membuat sumber daya.

Pertimbangkan kasus penggunaan dan skenario berikut:

  • Misalkan Anda menggunakan kredensi akun root Anda Akun AWS untuk membuat lingkungan AWS Cloud9 pengembangan. Meskipun memungkinkan, ini tidak direkomendasikan. Dalam hal ini, Anda Akun AWS adalah pemilik lingkungan.

  • Misalkan Anda membuat pengguna IAM di Anda Akun AWS dan Anda memberikan izin untuk membuat lingkungan bagi pengguna tersebut. Kemudian, pengguna dapat membuat lingkungan. Namun, milik Anda Akun AWS, yang menjadi milik pengguna, masih memiliki lingkungan.

  • Misalkan Anda membuat peran IAM di Anda Akun AWS dengan izin untuk membuat lingkungan. Kemudian, siapa pun yang dapat mengambil peran dapat menciptakan lingkungan. Anda Akun AWS, yang menjadi milik perannya, memiliki lingkungan.

catatan

Jika Anda menghapus akun pengguna yang merupakan pemilik ARN dari satu atau lebih AWS Cloud9 lingkungan, lingkungan ini tidak akan memiliki pemilik. Solusi untuk skenario ini adalah dengan menggunakan AWS Cloud9 SDK untuk menambahkan pengguna IAM lain dengan hak baca dan tulis menggunakan CreateEnvironmentMembership tindakan, dan tipe data. EnvironmentMember Setelah Anda menambahkan pengguna IAM ini, Anda dapat menyalin file lingkungan ke AWS Cloud9 lingkungan baru dan menjadikan pemilik ini pemilik ARN. Untuk informasi selengkapnya tentang tindakan ini, lihat CreateEnvironmentMembership, dan untuk informasi selengkapnya tentang tipe data ini, lihat EnvironmentMemberdi Panduan Referensi AWS Cloud9 API.

Mengelola akses ke sumber daya

Kebijakan izin menjelaskan siapa yang memiliki akses ke sumber daya mana.

catatan

Bagian ini membahas penggunaan IAM di AWS Cloud9. Bagian ini tidak memberikan informasi yang mendetail tentang layanan IAM. Untuk dokumentasi IAM lengkap, lihat Apa yang Dimaksud dengan IAM? dalam Panduan Pengguna IAM. Untuk informasi tentang sintaks dan deskripsi kebijakan IAM, lihat Referensi Kebijakan JSON IAM dalam Panduan Pengguna IAM.

Kebijakan yang terlampir pada identitas IAM disebut sebagai kebijakan berbasis identitas (atau kebijakan IAM). Kebijakan yang melekat pada sumber daya disebut sebagai kebijakan berbasis sumber daya. AWS Cloud9 mendukung kebijakan berbasis identitas dan berbasis sumber daya.

Setiap tindakan API berikut hanya memerlukan kebijakan IAM untuk dilampirkan ke identitas IAM yang ingin memanggil tindakan API ini:

  • CreateEnvironmentEC2

  • DescribeEnvironments

Tindakan API berikut memerlukan kebijakan berbasis sumber daya. Kebijakan IAM tidak diperlukan, tetapi AWS Cloud9 menggunakan kebijakan IAM jika dilampirkan ke identitas IAM yang ingin memanggil tindakan API ini. Kebijakan berbasis sumber daya harus diterapkan pada sumber daya yang diinginkan: AWS Cloud9

  • CreateEnvironmentMembership

  • DeleteEnvironment

  • DeleteEnvironmentMembership

  • DescribeEnvironmentMemberships

  • DescribeEnvironmentStatus

  • UpdateEnvironment

  • UpdateEnvironmentMembership

Untuk informasi selengkapnya tentang apa yang dilakukan masing-masing tindakan API ini, lihat Referensi AWS Cloud9 API.

Anda tidak dapat melampirkan kebijakan berbasis sumber daya ke sumber daya secara langsung. AWS Cloud9 Sebagai gantinya, AWS Cloud9 lampirkan kebijakan berbasis sumber daya yang sesuai ke sumber AWS Cloud9 daya saat Anda menambahkan, memodifikasi, memperbarui, atau menghapus anggota lingkungan.

Untuk memberikan izin pengguna untuk melakukan tindakan pada AWS Cloud9 sumber daya, Anda melampirkan kebijakan izin ke grup IAM tempat pengguna tersebut berada. Kami menyarankan Anda melampirkan kebijakan AWS terkelola (yang telah ditentukan sebelumnya) AWS Cloud9 bila memungkinkan. AWS kebijakan terkelola berisi kumpulan izin akses yang telah ditentukan sebelumnya untuk skenario penggunaan umum dan jenis pengguna, seperti administrasi penuh lingkungan, pengguna lingkungan, dan pengguna yang hanya memiliki akses hanya-baca ke lingkungan. Untuk daftar kebijakan AWS terkelola AWS Cloud9, lihatAWS kebijakan terkelola untuk AWS Cloud9.

Untuk skenario penggunaan yang lebih mendetail dan tipe pengguna yang unik, Anda dapat membuat dan melampirkan kebijakan terkelola pelanggan Anda sendiri. Lihat Opsi pengaturan tambahan untuk AWS Cloud9 dan Membuat kebijakan terkelola pelanggan untuk AWS Cloud9.

Untuk melampirkan kebijakan IAM (AWS dikelola atau dikelola pelanggan) ke identitas IAM, lihat Melampirkan Kebijakan IAM (Konsol) di Panduan Pengguna IAM.

Izin sesi untuk operasi API

Saat menggunakan AWS CLI atau AWS API untuk membuat sesi sementara untuk peran atau pengguna gabungan secara terprogram, Anda dapat meneruskan kebijakan sesi sebagai parameter untuk memperluas cakupan sesi peran. Ini berarti bahwa izin sesi yang efektif merupakan titik temu antara kebijakan berbasis identitas peran dan kebijakan sesi.

Saat permintaan dibuat untuk mengakses sumber daya selama sesi, jika tidak ada pernyataan Deny yang berlaku tetapi juga tidak ada pernyataan Allow yang berlaku dalam kebijakan sesi, hasil evaluasi kebijakan adalah penolakan implisit. (Untuk informasi selengkapnya, lihat Menentukan apakah permintaan diizinkan atau ditolak dalam akun di Panduan Pengguna IAM.)

Namun, untuk operasi AWS Cloud9 API yang memerlukan kebijakan berbasis sumber daya (lihat di atas), izin diberikan kepada entitas IAM yang memanggil jika ditentukan sebagai kebijakan sumber daya. Principal Izin eksplisit ini lebih diutamakan daripada penolakan implisit dari kebijakan sesi, sehingga memungkinkan sesi untuk memanggil operasi API dengan sukses. AWS Cloud9

AWS kebijakan terkelola untuk AWS Cloud9

Kebijakan AWS terkelola adalah kebijakan mandiri yang dibuat dan dikelola oleh AWS. AWS Kebijakan terkelola dirancang untuk memberikan izin bagi banyak kasus penggunaan umum sehingga Anda dapat mulai menetapkan izin kepada pengguna, grup, dan peran.

Perlu diingat bahwa kebijakan AWS terkelola mungkin tidak memberikan izin hak istimewa paling sedikit untuk kasus penggunaan spesifik Anda karena tersedia untuk digunakan semua pelanggan. AWS Kami menyarankan Anda untuk mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola pelanggan yang khusus untuk kasus penggunaan Anda.

Anda tidak dapat mengubah izin yang ditentukan dalam kebijakan AWS terkelola. Jika AWS memperbarui izin yang ditentukan dalam kebijakan AWS terkelola, pembaruan akan memengaruhi semua identitas utama (pengguna, grup, dan peran) yang dilampirkan kebijakan tersebut. AWS kemungkinan besar akan memperbarui kebijakan AWS terkelola saat baru Layanan AWS diluncurkan atau operasi API baru tersedia untuk layanan yang ada.

Untuk informasi selengkapnya, lihat Kebijakan terkelola AWS dalam Panduan Pengguna IAM.

AWS kebijakan terkelola: AWSCloud9 Administrator

Anda dapat melampirkan kebijakan AWSCloud9Administrator ke identitas IAM Anda.

Kebijakan ini memberikan administrative izin yang menyediakan akses administrator. AWS Cloud9

Detail izin

Kebijakan ini mencakup izin berikut.

  • AWS Cloud9 Semua AWS Cloud9 tindakan dalam diri mereka Akun AWS.

  • Amazon EC2 — Dapatkan informasi tentang beberapa VPC Amazon dan sumber daya subnet di dalamnya. Akun AWS

  • IAM — Dapatkan informasi tentang pengguna IAM di dalamnya Akun AWS, dan buat peran AWS Cloud9 terkait layanan sesuai kebutuhan mereka. Akun AWS

  • Systems Manager- Memungkinkan pengguna StartSession untuk memanggil untuk memulai koneksi ke instance untuk sesi Session Manager. Izin ini diperlukan untuk pengguna yang membuka lingkungan yang berkomunikasi dengan EC2 instance-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instance no-ingress EC2 dengan AWS Systems Manager

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:*", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS kebijakan terkelola: AWSCloud9 Pengguna

Anda dapat melampirkan kebijakan AWSCloud9User ke identitas IAM Anda.

Kebijakan ini memberikan user izin untuk menciptakan lingkungan AWS Cloud9 pengembangan dan mengelola lingkungan yang dimiliki.

Detail izin

Kebijakan ini mencakup izin berikut.

  • AWS Cloud9 — Buat dan dapatkan informasi tentang lingkungan mereka, dan dapatkan dan ubah pengaturan pengguna untuk lingkungan mereka.

  • Amazon EC2 — Dapatkan informasi tentang beberapa VPC Amazon dan sumber daya subnet di dalamnya. Akun AWS

  • IAM — Dapatkan informasi tentang pengguna IAM di dalamnya Akun AWS, dan buat peran AWS Cloud9 terkait layanan sesuai kebutuhan mereka. Akun AWS

  • Systems Manager- Memungkinkan pengguna StartSession untuk memanggil untuk memulai koneksi ke instance untuk sesi Session Manager. Izin ini diperlukan untuk pengguna yang membuka lingkungan yang berkomunikasi dengan EC2 instance-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instance no-ingress EC2 dengan AWS Systems Manager

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS kebijakan terkelola: AWSCloud9 EnvironmentMember

Anda dapat melampirkan kebijakan AWSCloud9EnvironmentMember ke identitas IAM Anda.

Kebijakan ini memberikan membership izin yang menyediakan kemampuan untuk bergabung dengan lingkungan AWS Cloud9 bersama.

Detail izin

Kebijakan ini mencakup izin berikut:

  • AWS Cloud9 — Dapatkan informasi tentang lingkungan mereka, dan dapatkan dan ubah pengaturan pengguna untuk lingkungan mereka.

  • IAM — Dapatkan informasi tentang pengguna IAM di dalamnya Akun AWS, dan buat peran AWS Cloud9 terkait layanan sesuai kebutuhan mereka. Akun AWS

  • Systems Manager- Memungkinkan pengguna StartSession untuk memanggil untuk memulai koneksi ke instance untuk sesi Session Manager. Izin ini diperlukan untuk pengguna yang membuka lingkungan yang berkomunikasi dengan EC2 instance-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instance no-ingress EC2 dengan AWS Systems Manager

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:GetUserSettings", "cloud9:UpdateUserSettings", "iam:GetUser", "iam:ListUsers" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS kebijakan terkelola: AWSCloud9ServiceRolePolicy

Peran terkait layanan AWSServiceRoleForAWSCloud9menggunakan kebijakan ini untuk memungkinkan AWS Cloud9 lingkungan berinteraksi dengan Amazon EC2 dan AWS CloudFormation sumber daya.

Detail izin

AWSCloud9ServiceRolePolicyMemberikan izin AWSService RoleFor AWSCloud9 yang diperlukan AWS Cloud9 untuk memungkinkan berinteraksi dengan ( Layanan AWS Amazon EC2 dan AWS CloudFormation) yang diperlukan untuk membuat dan menjalankan lingkungan pengembangan.

AWS Cloud9 mendefinisikan izin peran terkait layanan, dan hanya AWS Cloud9 dapat mengambil perannya. Izin yang ditentukan mencakup kebijakan kepercayaan dan kebijakan izin, serta bahwa kebijakan izin tidak dapat dilampirkan ke entitas IAM lainnya.

Untuk informasi selengkapnya tentang cara AWS Cloud9 menggunakan peran terkait layanan, lihat. Menggunakan peran tertaut layanan untuk AWS Cloud9

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "cloudformation:CreateStack", "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResources" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:security-group/*" ], "Condition": { "StringLike": { "aws:RequestTag/Name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*", "Condition": { "StringLike": { "ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:license-manager:*:*:license-configuration:*" ] }, { "Effect": "Allow", "Action": [ "iam:ListInstanceProfiles", "iam:GetInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole" ], "Condition": { "StringLike": { "iam:PassedToService": "ec2.amazonaws.com" } } } ] }

AWS Cloud9 pembaruan kebijakan AWS terkelola

Lihat detail tentang pembaruan kebijakan AWS terkelola AWS Cloud9 sejak layanan ini mulai melacak perubahan ini. Untuk peringatan otomatis tentang perubahan pada halaman ini, berlangganan umpan RSS di halaman Riwayat AWS Cloud9 dokumen.

Ubah Deskripsi Tanggal

Tindakan baru telah ditambahkan ke AWSCloud9Pengguna, AWSCloud9Administrator, dan AWSCloud9EnvironmentMemberkebijakan.

ssm:GetConnectionStatusTindakan telah ditambahkan ke AWSCloud9Administrator AWSCloud9 Pengguna dan AWSCloud9EnvironmentMemberkebijakan. Tindakan ini akan memberi pengguna izin untuk memeriksa status koneksi SSM. cloud9:ValidateEnvironmentNameAPI telah dihapus dari kebijakan AWSCloud9Pengguna karena sudah usang.

12 Oktober 2023

API ditambahkan ke kebijakan AWSCloud9Pengguna dan AWSCloud9Administrator.

Dua API baru telah ditambahkan ke kebijakan AWSCloud9Pengguna dan AWSCloud9Administrator, API ini adalah ec2:DescribeInstanceTypeOfferings danec2:DescribeRouteTables. Tujuan dari API ini adalah untuk memungkinkan AWS Cloud9 untuk memvalidasi bahwa subnet default mendukung jenis instance yang dipilih oleh pelanggan saat mereka membuat AWS Cloud9 lingkungan.

Agustus 02, 2023

Perbarui ke AWSCloud9ServiceRolePolicy

AWSCloud9ServiceRolePolicytelah diperbarui AWS Cloud9 untuk memungkinkan memulai dan menghentikan EC2 instans Amazon yang dikelola oleh konfigurasi lisensi License Manager.

12 Januari 2022

AWS Cloud9 mulai melacak perubahan

AWS Cloud9 mulai melacak perubahan untuk kebijakan yang AWS dikelola.

15 Maret 2021

Membuat kebijakan terkelola pelanggan untuk AWS Cloud9

Jika tidak ada kebijakan AWS terkelola yang memenuhi persyaratan kontrol akses, Anda dapat membuat dan melampirkan kebijakan yang dikelola pelanggan Anda sendiri.

Untuk membuat kebijakan terkelola pelanggan, lihat Membuat Kebijakan IAM (konsol) di Panduan Pengguna IAM.

Menentukan elemen kebijakan: efek, prinsipal, tindakan, dan sumber daya

Untuk setiap AWS Cloud9 sumber daya, layanan mendefinisikan satu set operasi API. Untuk memberikan izin untuk operasi API ini, AWS Cloud9 tentukan serangkaian tindakan yang dapat Anda tentukan dalam kebijakan.

Berikut ini adalah elemen-elemen kebijakan dasar:

  • Effect – Anda menetapkan efek, baik mengizinkan atau menolak, ketika pengguna meminta tindakan. Jika Anda tidak secara eksplisit memberikan akses ke (mengizinkan) sumber daya, akses akan ditolak secara implisit. Anda juga dapat secara eksplisit menolak akses ke sumber daya. Anda dapat melakukan ini untuk memastikan pengguna tidak dapat mengakses sumber daya, bahkan jika kebijakan yang berbeda memberikan akses.

  • Principal – Dalam kebijakan berbasis identitas (kebijakan IAM), pengguna yang kebijakannya terlampir adalah prinsipal implisit. Untuk kebijakan berbasis sumber daya, Anda menentukan pengguna, akun, layanan, atau entitas lain yang ingin Anda terima izinnya.

  • Resource— Gunakan Nama Sumber Daya Amazon (ARN) untuk mengidentifikasi sumber daya yang berlaku untuk kebijakan tersebut.

  • Action – Gunakan kata kunci tindakan untuk mengidentifikasi operasi sumber daya yang ingin Anda izinkan atau tolak. Misalnya, izin cloud9:CreateEnvironmentEC2 memberikan pengguna izin untuk melakukan operasi CreateEnvironmentEC2.

Untuk mempelajari lebih lanjut tentang sintaks dan deskripsi kebijakan IAM, lihat Referensi Kebijakan JSON IAM dalam Panduan Pengguna IAM.

Untuk tabel yang menunjukkan semua tindakan AWS Cloud9 API dan sumber daya yang diterapkan, lihatAWS Cloud9 referensi izin.

Contoh kebijakan yang dikelola pelanggan

Dalam bagian ini, Anda dapat menemukan contoh kebijakan yang memberikan izin untuk tindakan AWS Cloud9 . Anda dapat menyesuaikan contoh kebijakan IAM berikut untuk mengizinkan atau secara eksplisit menolak akses AWS Cloud9 untuk identitas IAM Anda.

Untuk membuat atau melampirkan kebijakan yang dikelola pelanggan ke identitas IAM, lihat Membuat Kebijakan IAM (Konsol) dan Melampirkan Kebijakan IAM (Konsol) di Panduan Pengguna IAM.

catatan

Contoh berikut menggunakan US East (Ohio) Region (us-east-2), Akun AWS ID fiktif (123456789012), dan ID lingkungan AWS Cloud9 pengembangan fiktif (). 81e900317347585a0601e04c8d52eaEX

Mendapatkan informasi tentang lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, memungkinkan entitas tersebut untuk mendapatkan informasi tentang lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironments", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS AWSCloud9Administrator terkelola dan. AWSCloud9User

Buat EC2 lingkungan

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan ke entitas IAM, memungkinkan entitas tersebut untuk membuat lingkungan AWS Cloud9 EC2 pengembangan di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS AWSCloud9Administrator terkelola dan. AWSCloud9User

Buat EC2 lingkungan dengan jenis EC2 instans Amazon tertentu

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan ke entitas IAM, memungkinkan entitas tersebut untuk membuat lingkungan AWS Cloud9 EC2 pengembangan di akun mereka. Namun, EC2 lingkungan hanya dapat menggunakan kelas tertentu dari jenis EC2 instans Amazon.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:InstanceType": "t3.*" } } } ] }
catatan

Jika kebijakan AWS terkelola AWSCloud9Administrator atau AWSCloud9User sudah dilampirkan ke entitas IAM, kebijakan AWS terkelola itu mengesampingkan perilaku pernyataan kebijakan IAM sebelumnya. Ini karena kebijakan yang AWS dikelola tersebut lebih permisif.

Buat EC2 lingkungan di subnet VPC Amazon tertentu

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan ke entitas IAM, memungkinkan entitas tersebut untuk membuat lingkungan AWS Cloud9 EC2 pengembangan di akun mereka. Namun, EC2 lingkungan hanya dapat menggunakan subnet VPC Amazon yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:SubnetId": [ "subnet-12345678", "subnet-23456789" ] } } } ] }
catatan

Jika kebijakan AWS terkelola AWSCloud9Administrator atau AWSCloud9User sudah dilampirkan ke entitas IAM, kebijakan AWS terkelola itu mengesampingkan perilaku pernyataan kebijakan IAM sebelumnya. Ini karena kebijakan yang AWS dikelola tersebut lebih permisif.

Buat EC2 lingkungan dengan nama lingkungan tertentu

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan pada entitas IAM, memungkinkan entitas tersebut untuk menciptakan lingkungan AWS Cloud9 EC2 pengembangan di akun mereka. Namun, EC2 lingkungan hanya dapat menggunakan nama yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringEquals": { "cloud9:EnvironmentName": "my-demo-environment" } } } ] }
catatan

Jika kebijakan AWS terkelola AWSCloud9Administrator atau AWSCloud9User sudah dilampirkan ke entitas IAM, kebijakan AWS terkelola itu mengesampingkan perilaku pernyataan kebijakan IAM sebelumnya. Ini karena kebijakan yang AWS dikelola tersebut lebih permisif.

Membuat lingkungan SSH saja

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan ke entitas IAM, memungkinkan entitas tersebut untuk membuat lingkungan pengembangan AWS Cloud9 SSH di akun mereka. Namun, entitas tidak dapat membuat lingkungan AWS Cloud9 EC2 pengembangan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentSSH", "Resource": "*" }, { "Effect": "Deny", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }

Memperbarui lingkungan atau mencegah memperbarui lingkungan

Contoh berikut pernyataan kebijakan IAM, yang dilampirkan pada entitas IAM, memungkinkan entitas tersebut untuk mengubah informasi tentang lingkungan AWS Cloud9 pengembangan apa pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironment", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut mengubah informasi tentang lingkungan dengan Nama Sumber Daya Amazon (ARN) yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Mendapatkan daftar anggota lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut mendapatkan daftar anggota untuk lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironmentMemberships", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator Selain itu, izin akses sebelumnya lebih permisif daripada izin akses setara dalam kebijakan AWS terkelola. AWSCloud9User

Berbagi lingkungan hanya dengan pengguna tertentu

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut berbagi lingkungan mana pun di akun mereka hanya dengan pengguna tertentu.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentMembership" ], "Resource": "*", "Condition": { "StringEquals": { "cloud9:UserArn": "arn:aws:iam::123456789012:user/MyDemoUser" } } } ] }
catatan

Jika kebijakan AWS terkelola AWSCloud9Administrator atau AWSCloud9User sudah dilampirkan ke entitas IAM, kebijakan yang AWS dikelola tersebut mengesampingkan perilaku pernyataan kebijakan IAM sebelumnya. Ini karena kebijakan yang AWS dikelola tersebut lebih permisif.

Mencegah berbagi lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mencegah entitas tersebut berbagi lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "cloud9:CreateEnvironmentMembership", "cloud9:UpdateEnvironmentMembership" ], "Resource": "*" } ] }

Mengubah, atau mencegah perubahan, pengaturan anggota lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut mengubah pengaturan anggota di lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut mengubah pengaturan anggota di lingkungan dengan Nama Sumber Daya Amazon (ARN) yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Menghapus, atau mencegah penghapusan, anggota lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut menghapus anggota mana pun dari lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut menghapus anggota mana pun dari lingkungan dengan Nama Sumber Daya Amazon (ARN) yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Menghapus, atau mencegah penghapusan, lingkungan

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut menghapus lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironment", "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator

Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut menghapus lingkungan dengan Nama Sumber Daya Amazon (ARN) yang ditentukan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Kebijakan IAM khusus untuk pembuatan lingkungan SSM

Ada masalah izin saat ini yang terjadi saat membuat lingkungan SSM dengan AWSCloud9Administrator atau AWSCloud9User kebijakan yang dilampirkan. Contoh berikut pernyataan kebijakan IAM, ketika dilampirkan ke entitas IAM, memungkinkan pengguna untuk melampirkan dan menggunakan kebijakan AWS AWSCloud9Administrator terkelola atau. AWSCloud9User

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "iam:ListRoles", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": "ssm:StartSession", "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] }, { "Effect": "Allow", "Action": ["iam:ListInstanceProfilesForRole", "iam:CreateRole"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"] }, { "Effect": "Allow", "Action": ["iam:AttachRolePolicy"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"], "Condition": { "StringEquals": { "iam:PolicyARN": "arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole", "Condition": { "StringEquals": { "iam:PassedToService": "ec2.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/AWSCloud9SSMInstanceProfile" ] } ] }

AWS Cloud9 referensi izin

Anda dapat menggunakan kunci kondisi AWS lebar dalam AWS Cloud9 kebijakan Anda untuk menyatakan kondisi. Untuk daftar, lihat Elemen Kebijakan IAM JSON: Persyaratan dalam Panduan Pengguna IAM.

Anda menentukan tindakan di bidang Action kebijakan. Untuk menentukan tindakan, gunakan awalan cloud9: diikuti dengan nama operasi API (misalnya, "Action": "cloud9:DescribeEnvironments"). Untuk menentukan beberapa tindakan dalam satu pernyataan, pisahkan dengan koma (misalnya, "Action": [ "cloud9:UpdateEnvironment", "cloud9:DeleteEnvironment" ]).

Menggunakan karakter wildcard

Anda menentukan ARN, dengan atau tanpa karakter wildcard (*), sebagai nilai sumber daya di bidang Resource kebijakan. Anda dapat menggunakan wildcard untuk menentukan beberapa tindakan atau sumber daya. Misalnya, cloud9:* menentukan semua AWS Cloud9 tindakan dan cloud9:Describe* menentukan semua AWS Cloud9 tindakan yang dimulai dengan. Describe

Contoh berikut mengizinkan entitas IAM untuk mendapatkan informasi tentang lingkungan dan keanggotaan lingkungan untuk lingkungan mana pun di akun mereka.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:Describe*" ], "Resource": "*" } ] }
catatan

Izin akses sebelumnya sudah termasuk dalam kebijakan AWS terkelola. AWSCloud9Administrator Selain itu, izin akses sebelumnya lebih permisif daripada izin akses yang setara dalam kebijakan terkelola. AWS AWSCloud9User

AWS Cloud9 Operasi API dan izin yang diperlukan untuk tindakan

catatan

Anda dapat menggunakan tabel di bawah ini sebagai referensi saat menyiapkan kontrol akses dan menulis kebijakan izin untuk dilampirkan ke identitas IAM (kebijakan berbasis identitas).

Public API operationsTabel mencantumkan operasi API yang dapat dipanggil oleh pelanggan yang menggunakan SDKs dan AWS Command Line Interface.

Permission-only API operationsDaftar operasi API yang tidak langsung dapat dipanggil oleh kode pelanggan atau. AWS Command Line Interface Tetapi pengguna IAM memang memerlukan izin untuk operasi ini yang dipanggil saat AWS Cloud9 tindakan dilakukan menggunakan konsol.

Operasi API publik
AWS Cloud9 operasi Izin yang diperlukan (tindakan API) Sumber Daya

CreateEnvironmentEC2

cloud9:CreateEnvironmentEC2

Diperlukan untuk menciptakan lingkungan AWS Cloud9 EC2 pengembangan.

*

CreateEnvironmentMembership

cloud9:CreateEnvironmentMembership

Diperlukan untuk menambahkan anggota ke lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironment

cloud9:DeleteEnvironment

Diperlukan untuk menghapus lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironmentMembership

cloud9:DeleteEnvironmentMembership

Diperlukan untuk menghapus anggota dari lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentMemberships

cloud9:DescribeEnvironmentMemberships

Diperlukan untuk mendapatkan daftar anggota di lingkungan.

*

DescribeEnvironments

cloud9:DescribeEnvironments

Diperlukan untuk mendapatkan informasi tentang lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentStatus

cloud9:DescribeEnvironmentStatus

Diperlukan untuk mendapatkan informasi tentang status lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironment

cloud9:UpdateEnvironment

Diperlukan untuk memperbarui pengaturan untuk lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironmentMembership

cloud9:UpdateEnvironmentMembership

Diperlukan untuk memperbarui pengaturan untuk anggota di lingkungan.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

Operasi API hanya izin
AWS Cloud9 operasi Deskripsi Dokumentasi konsol

ActivateEC2Remote

cloud9:ActivateEC2Remote

Memulai EC2 instans Amazon yang terhubung dengan AWS Cloud9 IDE Anda.

Membuka lingkungan di AWS Cloud9

CreateEnvironmentSSH

cloud9:CreateEnvironmentSSH

Menciptakan lingkungan pengembangan AWS Cloud9 SSH.

Membuat Lingkungan SSH

CreateEnvironmentToken

cloud9:CreateEnvironmentToken

Membuat token otentikasi yang memungkinkan koneksi antara AWS Cloud9 IDE dan lingkungan pengguna.

Menciptakan EC2 Lingkungan

DescribeEC2Remote

cloud9:DescribeEC2Remote

Mendapat detail tentang koneksi ke lingkungan EC2 pengembangan, termasuk host, pengguna, dan port.

Menciptakan EC2 Lingkungan

DescribeSSHRemote

cloud9:DescribeSSHRemote

Mendapat detail tentang koneksi ke lingkungan pengembangan SSH, termasuk host, pengguna, dan port.

Membuat Lingkungan SSH

GetEnvironmentConfig

cloud9:GetEnvironmentConfig

Mendapat informasi konfigurasi yang digunakan untuk menginisialisasi AWS Cloud9 IDE.

Bekerja dengan AWS Cloud9 IDE

GetEnvironmentSettings

cloud9:GetEnvironmentSettings

Mendapat pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu.

Bekerja dengan AWS Cloud9 IDE

GetMembershipSettings

cloud9:GetMembershipSettings

Mendapat pengaturan AWS Cloud9 IDE untuk anggota lingkungan tertentu.

Bekerja dengan lingkungan bersama di AWS Cloud9

GetUserPublicKey

cloud9:GetUserPublicKey

Mendapat kunci SSH publik pengguna, yang digunakan oleh AWS Cloud9 untuk terhubung ke lingkungan pengembangan SSH.

Membuat Lingkungan SSH

GetUserSettings

cloud9:GetUserSettings

Mendapat pengaturan AWS Cloud9 IDE untuk pengguna tertentu.

Bekerja dengan AWS Cloud9 IDE

ModifyTemporaryCredentialsOnEnvironmentEC2

cloud9:ModifyTemporaryCredentialsOnEnvironmentEC2

Menetapkan kredensil sementara AWS terkelola pada EC2 instans Amazon yang digunakan oleh lingkungan pengembangan AWS Cloud9 terintegrasi (IDE).

AWS kredensi sementara yang dikelola

UpdateEnvironmentSettings

cloud9:UpdateEnvironmentSettings

Memperbarui pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu.

Bekerja dengan AWS Cloud9 IDE

UpdateMembershipSettings

cloud9:UpdateMembershipSettings

Memperbarui pengaturan AWS Cloud9 IDE untuk anggota lingkungan tertentu.

Bekerja dengan lingkungan bersama di AWS Cloud9

UpdateSSHRemote

cloud9:UpdateSSHRemote

Memperbarui detail tentang koneksi ke lingkungan pengembangan SSH, termasuk host, pengguna, dan port.

Membuat Lingkungan SSH

UpdateUserSettings

cloud9:UpdateUserSettings

Memperbarui pengaturan AWS Cloud9 IDE untuk pengguna tertentu.

Bekerja dengan AWS Cloud9 IDE

GetMigrationExperiences

cloud9:GetMigrationExperiences

Memberikan izin kepada AWS Cloud9 pengguna untuk mendapatkan pengalaman migrasi dari AWS Cloud9 ke CodeCatalyst.

AWS kredensi sementara yang dikelola

Jika Anda hanya mencari daftar tindakan yang mendukung kredenal sementara yang AWS dikelola, lanjutkan ke. Tindakan yang didukung oleh kredensial sementara yang AWS dikelola

Untuk lingkungan AWS Cloud9 EC2 pengembangan, AWS Cloud9 buat kredenal AWS akses sementara tersedia untuk Anda di lingkungan. Kami menyebutnya kredensial sementara terkelola AWS . Hal ini memberikan manfaat berikut:

  • Anda tidak perlu menyimpan kredensi AWS akses permanen AWS entitas (misalnya, pengguna IAM) di mana pun di lingkungan. Hal ini mencegah kredensial tersebut diakses oleh anggota lingkungan tanpa sepengetahuan dan persetujuan Anda.

  • Anda tidak perlu mengatur, mengelola, atau melampirkan profil instance secara manual ke EC2 instans Amazon yang terhubung ke lingkungan. Profil instance adalah pendekatan lain untuk mengelola kredensil AWS akses sementara.

  • AWS Cloud9 terus memperbarui kredensialnya sementara, sehingga satu set kredensil hanya dapat digunakan untuk waktu yang terbatas. Ini adalah praktik terbaik AWS keamanan. Untuk informasi selengkapnya, lihat Membuat dan memperbarui kredensi sementara AWS terkelola.

  • AWS Cloud9 Memberikan batasan tambahan tentang bagaimana kredensialnya sementara dapat digunakan untuk mengakses AWS tindakan dan sumber daya dari lingkungan. Ini juga merupakan praktik terbaik AWS keamanan.

penting

Saat ini, jika EC2 instance lingkungan Anda diluncurkan ke subnet pribadi, Anda tidak dapat menggunakan kredensil sementara AWS terkelola untuk memungkinkan EC2 lingkungan mengakses AWS layanan atas nama AWS entitas (misalnya, pengguna IAM).

Untuk informasi selengkapnya tentang kapan Anda dapat meluncurkan EC2 instance ke subnet pribadi, lihatBuat subnet untuk AWS Cloud9.

catatan

Pertimbangkan untuk menggunakan kebijakan AWS terkelola, bukan kebijakan sebaris saat Anda menggunakan kredensil sementara AWS terkelola.

Begini cara kerja kredensi sementara AWS terkelola setiap kali EC2 lingkungan mencoba mengakses Layanan AWS atas nama AWS entitas (misalnya, pengguna IAM):

  1. AWS Cloud9 memeriksa untuk melihat apakah AWS entitas pemanggil (misalnya, pengguna IAM) memiliki izin untuk mengambil tindakan yang diminta untuk sumber daya yang diminta di. AWS Jika izin tidak ada atau ditolak secara eksplisit, permintaan gagal.

  2. AWS Cloud9 memeriksa kredensil sementara AWS terkelola untuk melihat apakah izinnya mengizinkan tindakan yang diminta untuk sumber daya yang diminta masuk. AWS Jika izin tidak ada atau ditolak secara eksplisit, permintaan gagal. Untuk daftar izin yang AWS mengelola dukungan kredensial sementara, lihat. Tindakan yang didukung oleh kredensial sementara yang AWS dikelola

  • Jika AWS entitas dan kredenal sementara AWS terkelola mengizinkan tindakan yang diminta untuk sumber daya yang diminta, permintaan akan berhasil.

  • Jika AWS entitas atau kredensi sementara yang AWS dikelola secara eksplisit menolak atau gagal secara eksplisit mengizinkan tindakan yang diminta untuk sumber daya yang diminta, permintaan gagal. Ini berarti bahwa meskipun AWS entitas pemanggil memiliki izin yang benar, permintaan akan gagal jika AWS Cloud9 tidak juga secara eksplisit mengizinkannya. Demikian juga, jika AWS Cloud9 memungkinkan tindakan tertentu diambil untuk sumber daya tertentu, permintaan gagal jika AWS entitas juga tidak secara eksplisit mengizinkannya.

Pemilik EC2 lingkungan dapat mengaktifkan atau menonaktifkan kredensil sementara yang AWS dikelola untuk lingkungan tersebut kapan saja, sebagai berikut:

  1. Dengan lingkungan terbuka, di AWS Cloud9 IDE, pada bilah menu pilih AWS Cloud9, Preferensi.

  2. Pada tab Preferensi, di panel navigasi, pilih Pengaturan AWS , Kredensial.

  3. Gunakan Kredensial sementara terkelola AWS untuk mengaktifkan atau menonaktifkan kredensial sementara terkelola AWS .

catatan

Anda juga dapat mengaktifkan atau menonaktifkan kredenal sementara AWS terkelola dengan memanggil operasi AWS Cloud9 API UpdateEnvironmentdan menetapkan nilai ke parameter. managedCredentialsAction Anda dapat meminta operasi API ini menggunakan AWS alat standar seperti AWS SDKs dan AWS CLI.

Jika Anda menonaktifkan kredensi sementara AWS terkelola, lingkungan tidak dapat mengakses manapun Layanan AWS, terlepas dari AWS entitas yang membuat permintaan. Tapi, misalkan Anda tidak dapat atau tidak ingin mengaktifkan kredenal sementara AWS terkelola untuk suatu lingkungan, dan Anda masih memerlukan lingkungan untuk mengakses. Layanan AWS Kemudian, pertimbangkan alternatif berikut:

Alternatif sebelumnya mengesampingkan semua izin yang diizinkan (atau ditolak) oleh kredensil sementara yang AWS dikelola di lingkungan. EC2

Tindakan yang didukung oleh kredensial sementara yang AWS dikelola

Untuk lingkungan AWS Cloud9 EC2 pengembangan, kredensi sementara AWS terkelola memungkinkan semua AWS tindakan untuk semua AWS sumber daya di pemanggil Akun AWS, dengan batasan berikut:

  • Untuk AWS Cloud9, hanya tindakan berikut yang diizinkan:

    • cloud9:CreateEnvironmentEC2

    • cloud9:CreateEnvironmentSSH

    • cloud9:DescribeEnvironmentMemberships

    • cloud9:DescribeEnvironments

    • cloud9:DescribeEnvironmentStatus

    • cloud9:UpdateEnvironment

  • Untuk IAM, hanya tindakan berikut yang diizinkan:

    • iam:AttachRolePolicy

    • iam:ChangePassword

    • iam:CreatePolicy

    • iam:CreatePolicyVersion

    • iam:CreateRole

    • iam:CreateServiceLinkedRole

    • iam:DeletePolicy

    • iam:DeletePolicyVersion

    • iam:DeleteRole

    • iam:DeleteRolePolicy

    • iam:DeleteSSHPublicKey

    • iam:DetachRolePolicy

    • iam:GetInstanceProfile

    • iam:GetPolicy

    • iam:GetPolicyVersion

    • iam:GetRole

    • iam:GetRolePolicy

    • iam:GetSSHPublicKey

    • iam:GetUser

    • iam:List*

    • iam:PassRole

    • iam:PutRolePolicy

    • iam:SetDefaultPolicyVersion

    • iam:UpdateAssumeRolePolicy

    • iam:UpdateRoleDescription

    • iam:UpdateSSHPublicKey

    • iam:UploadSSHPublicKey

  • Semua tindakan IAM yang berinteraksi dengan peran hanya diizinkan untuk nama peran yang dimulai dengan Cloud9-. Namun, iam:PassRole bekerja dengan semua nama peran.

  • Untuk AWS Security Token Service (AWS STS), hanya tindakan berikut yang diizinkan:

    • sts:GetCallerIdentity

    • sts:DecodeAuthorizationMessage

  • Semua AWS tindakan yang didukung dibatasi pada alamat IP lingkungan. Ini adalah praktik terbaik AWS keamanan.

Jika AWS Cloud9 tidak mendukung tindakan atau sumber daya yang perlu diakses oleh EC2 lingkungan, atau jika kredenal sementara AWS terkelola dimatikan untuk EC2 lingkungan dan Anda tidak dapat menyalakannya kembali, pertimbangkan alternatif berikut:

Alternatif sebelumnya mengesampingkan semua izin yang diizinkan (atau ditolak) oleh kredensil sementara yang AWS dikelola di lingkungan. EC2

Membuat dan memperbarui kredensi sementara AWS terkelola

Untuk lingkungan AWS Cloud9 EC2 pengembangan, kredensi sementara yang AWS dikelola dibuat saat pertama kali Anda membuka lingkungan.

AWS kredensi sementara terkelola diperbarui di bawah salah satu kondisi berikut:

  • Setiap kali periode waktu tertentu berlalu. Saat ini, ini setiap lima menit.

  • Setiap kali Anda memuat ulang tab peramban web yang menampilkan IDE untuk lingkungan.

  • Ketika stempel waktu yang tercantum dalam file ~/.aws/credentials untuk lingkungan tercapai.

  • Jika pengaturan kredensial sementara terkelola AWS diatur ke nonaktif, kapan pun Anda mengaktifkannya kembali. (Untuk melihat atau mengubah pengaturan ini, pilih AWS Cloud9, Preferensi di bilah menu IDE. Pada tab Preferensi, di panel navigasi, pilih Pengaturan AWS , Kredensial.)

  • Untuk keamanan, kredensi sementara yang AWS dikelola akan kedaluwarsa secara otomatis setelah 15 menit. Agar kredensial di-refresh, pemilik lingkungan harus terhubung ke lingkungan AWS Cloud9 melalui IDE. Untuk informasi selengkapnya tentang peran pemilik lingkungan, lihat Mengontrol akses ke kredensial sementara terkelola AWS.

Mengontrol akses ke kredensial sementara terkelola AWS

Kolaborator dengan kredensi sementara AWS terkelola dapat digunakan AWS Cloud9 untuk berinteraksi dengan orang lain. Layanan AWS Untuk memastikan bahwa hanya kolaborator tepercaya yang diberikan kredensial sementara terkelola AWS , kredensial ini dinonaktifkan jika anggota baru ditambahkan oleh siapa pun selain pemilik lingkungan. Kredensial dinonaktifkan oleh penghapusan file ~/.aws/credentials.

penting

AWS kredensi sementara yang dikelola juga kedaluwarsa secara otomatis setiap 15 menit. Agar kredensi disegarkan sehingga kolaborator dapat terus menggunakannya, pemilik lingkungan harus terhubung ke AWS Cloud9 lingkungan melalui IDE.

Hanya pemilik lingkungan yang dapat mengaktifkan kembali kredensil sementara yang AWS dikelola sehingga dapat dibagikan dengan anggota lain. Saat pemilik lingkungan membuka IDE, kotak dialog mengonfirmasi bahwa kredensil sementara AWS terkelola dinonaktifkan. Pemilik lingkungan dapat mengaktifkan kembali kredensial untuk semua anggota atau tetap membuatnya dinonaktifkan untuk semua anggota.

Awas

Untuk mematuhi praktik keamanan terbaik, tetap nonaktifkan kredensial sementara terkelola jika Anda tidak yakin tentang identitas pengguna terakhir yang ditambahkan ke lingkungan. Anda dapat memeriksa daftar anggota dengan read/write izin di jendela Kolaborasi.