Identity and Access Management untuk AWS Cloud9 - AWS Cloud9

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, tergantung pada pekerjaan yang Anda lakukan. AWS Cloud9

Pengguna layanan — Jika Anda menggunakan AWS Cloud9 layanan untuk melakukan pekerjaan Anda, administrator Anda memberi Anda kredensi dan izin yang Anda butuhkan. Saat Anda menggunakan lebih banyak AWS Cloud9 fitur untuk melakukan pekerjaan Anda, Anda mungkin memerlukan izin tambahan. Memahami cara mengelola akses dapat membantu Anda meminta izin yang tepat dari administrator Anda. Jika Anda tidak dapat mengakses fitur di AWS Cloud9, lihat Memecahkan masalah AWS Cloud9 identitas dan akses.

Administrator layanan — Jika Anda bertanggung jawab atas AWS Cloud9 sumber daya di perusahaan Anda, Anda mungkin memiliki akses penuh ke AWS Cloud9. Tugas Anda adalah menentukan AWS Cloud9 fitur dan sumber daya mana yang harus diakses pengguna layanan Anda. Kemudian, Anda harus mengirimkan permintaan kepada administrator IAM untuk mengubah izin pengguna layanan Anda. Tinjau informasi di halaman ini untuk memahami konsep Basic IAM. Untuk mempelajari lebih lanjut tentang bagaimana perusahaan Anda dapat menggunakan IAM AWS Cloud9, lihatBagaimana AWS Cloud9 bekerja dengan IAM.

Administrator IAM – Jika Anda adalah administrator IAM, Anda mungkin ingin belajar dengan lebih detail tentang cara Anda menulis kebijakan untuk mengelola akses ke AWS Cloud9. Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas yang dapat Anda gunakan di IAM, lihat. Contoh kebijakan berbasis identitas untuk AWS Cloud9

Mengautentikasi dengan identitas

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

Anda dapat masuk AWS sebagai identitas federasi dengan menggunakan kredensil yang disediakan melalui sumber identitas. AWS IAM Identity Center Pengguna (IAM Identity Center), autentikasi masuk tunggal perusahaan Anda, dan kredensi Google atau Facebook Anda adalah contoh identitas federasi. Saat Anda masuk sebagai identitas terfederasi, administrator Anda sebelumnya menyiapkan federasi identitas menggunakan peran IAM. Ketika Anda mengakses AWS dengan menggunakan federasi, Anda secara tidak langsung mengambil peran.

Bergantung pada jenis pengguna Anda, Anda dapat masuk ke AWS Management Console atau portal AWS akses. Untuk informasi selengkapnya tentang masuk AWS, lihat Cara masuk ke Panduan AWS Sign-In Pengguna Anda Akun AWS.

Jika Anda mengakses AWS secara terprogram, AWS sediakan kit pengembangan perangkat lunak (SDK) dan antarmuka baris perintah (CLI) untuk menandatangani permintaan Anda secara kriptografis dengan menggunakan kredensil Anda. Jika Anda tidak menggunakan AWS alat, Anda harus menandatangani permintaan sendiri. Untuk informasi selengkapnya tentang penggunaan metode yang disarankan untuk menandatangani permintaan sendiri, lihat Menandatangani permintaan AWS API di Panduan Pengguna IAM.

Apa pun metode autentikasi yang digunakan, Anda mungkin diminta untuk menyediakan informasi keamanan tambahan. Misalnya, AWS merekomendasikan agar Anda menggunakan otentikasi multi-faktor (MFA) untuk meningkatkan keamanan akun Anda. Untuk mempelajari selengkapnya, lihat Autentikasi multi-faktor dalam Panduan Pengguna AWS IAM Identity Center dan Menggunakan autentikasi multi-faktor (MFA) dalam AWS dalam Panduan Pengguna IAM.

Akun AWS pengguna root

Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya di akun. Identitas ini disebut pengguna Akun AWS root dan diakses dengan masuk dengan alamat email dan kata sandi yang Anda gunakan untuk membuat akun. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Lindungi kredensial pengguna root Anda dan gunakan kredensial tersebut untuk melakukan tugas yang hanya dapat dilakukan pengguna root. Untuk daftar lengkap tugas yang mengharuskan Anda masuk sebagai pengguna root, lihat Tugas yang memerlukan kredensial pengguna root dalam Panduan Pengguna IAM.

Identitas gabungan

Sebagai praktik terbaik, mewajibkan pengguna manusia, termasuk pengguna yang memerlukan akses administrator, untuk menggunakan federasi dengan penyedia identitas untuk mengakses Layanan AWS dengan menggunakan kredensi sementara.

Identitas federasi adalah pengguna dari direktori pengguna perusahaan Anda, penyedia identitas web, direktori Pusat Identitas AWS Directory Service, atau pengguna mana pun yang mengakses Layanan AWS dengan menggunakan kredensil yang disediakan melalui sumber identitas. Ketika identitas federasi mengakses Akun AWS, mereka mengambil peran, dan peran memberikan kredensi sementara.

Untuk manajemen akses terpusat, kami sarankan Anda menggunakan AWS IAM Identity Center. Anda dapat membuat pengguna dan grup di Pusat Identitas IAM, atau Anda dapat menghubungkan dan menyinkronkan ke sekumpulan pengguna dan grup di sumber identitas Anda sendiri untuk digunakan di semua aplikasi Akun AWS dan aplikasi Anda. Untuk informasi tentang Pusat Identitas IAM, lihat Apakah itu Pusat Identitas IAM? dalam Panduan Pengguna AWS IAM Identity Center .

Pengguna dan grup IAM

Pengguna IAM adalah identitas dalam diri Anda Akun AWS yang memiliki izin khusus untuk satu orang atau aplikasi. Jika memungkinkan, kami merekomendasikan untuk mengandalkan kredensial sementara, bukan membuat pengguna IAM yang memiliki kredensial jangka panjang seperti kata sandi dan kunci akses. Namun, jika Anda memiliki kasus penggunaan tertentu yang memerlukan kredensial jangka panjang dengan pengguna IAM, kami merekomendasikan Anda merotasi kunci akses. Untuk informasi selengkapnya, lihat Merotasi kunci akses secara teratur untuk kasus penggunaan yang memerlukan kredensial jangka panjang dalam Panduan Pengguna IAM.

Grup IAM adalah identitas yang menentukan sekumpulan pengguna IAM. Anda tidak dapat masuk sebagai grup. Anda dapat menggunakan grup untuk menentukan izin bagi beberapa pengguna sekaligus. Grup mempermudah manajemen izin untuk sejumlah besar pengguna sekaligus. Misalnya, Anda dapat memiliki grup yang bernama IAMAdmins dan memberikan izin ke grup tersebut untuk mengelola sumber daya IAM.

Pengguna berbeda dari peran. Pengguna secara unik terkait dengan satu orang atau aplikasi, tetapi peran dimaksudkan untuk dapat digunakan oleh siapa pun yang membutuhkannya. Pengguna memiliki kredensial jangka panjang permanen, tetapi peran memberikan kredensial sementara. Untuk mempelajari selengkapnya, lihat Kapan harus membuat pengguna IAM (bukan peran) dalam Panduan Pengguna IAM.

Peran IAM

Peran IAM adalah identitas dalam diri Anda Akun AWS yang memiliki izin khusus. Peran ini mirip dengan pengguna IAM, tetapi tidak terkait dengan orang tertentu. Anda dapat mengambil peran IAM untuk sementara AWS Management Console dengan beralih peran. Anda dapat mengambil peran dengan memanggil operasi AWS CLI atau AWS API atau dengan menggunakan URL kustom. Untuk informasi selengkapnya tentang cara menggunakan peran, lihat Menggunakan peran IAM dalam Panduan Pengguna IAM.

Peran IAM dengan kredensial sementara berguna dalam situasi berikut:

  • Akses pengguna terfederasi – Untuk menetapkan izin ke identitas terfederasi, Anda membuat peran dan menentukan izin untuk peran tersebut. Ketika identitas terfederasi mengautentikasi, identitas tersebut terhubung dengan peran dan diberi izin yang ditentukan oleh peran. Untuk informasi tentang peran untuk federasi, lihat Membuat peran untuk Penyedia Identitas pihak ketiga dalam Panduan Pengguna IAM. Jika menggunakan Pusat Identitas IAM, Anda harus mengonfigurasi set izin. Untuk mengontrol apa yang dapat diakses identitas Anda setelah identitas tersebut diautentikasi, Pusat Identitas IAM akan mengorelasikan set izin ke peran dalam IAM. Untuk informasi tentang set izin, lihat Set izin dalam Panduan Pengguna AWS IAM Identity Center .

  • Izin pengguna IAM sementara – Pengguna atau peran IAM dapat mengambil peran IAM guna mendapatkan berbagai izin secara sementara untuk tugas tertentu.

  • Akses lintas akun – Anda dapat menggunakan peran IAM untuk mengizinkan seseorang (prinsipal tepercaya) di akun lain untuk mengakses sumber daya di akun Anda. Peran adalah cara utama untuk memberikan akses lintas akun. Namun, dengan beberapa Layanan AWS, Anda dapat melampirkan kebijakan secara langsung ke sumber daya (alih-alih menggunakan peran sebagai proxy). Untuk mempelajari perbedaan antara peran dan kebijakan berbasis sumber daya untuk akses lintas akun, lihat Akses sumber daya lintas akun di IAM di Panduan Pengguna IAM.

  • Akses lintas layanan — Beberapa Layanan AWS menggunakan fitur lain Layanan AWS. Sebagai contoh, ketika Anda memanggil suatu layanan, biasanya layanan tersebut menjalankan aplikasi di Amazon EC2 atau menyimpan objek di Amazon S3. Sebuah layanan mungkin melakukannya menggunakan izin prinsipal yang memanggil, menggunakan peran layanan, atau peran terkait layanan.

    • Sesi akses teruskan (FAS) — Saat Anda menggunakan pengguna atau peran IAM untuk melakukan tindakan AWS, Anda dianggap sebagai prinsipal. Ketika Anda menggunakan beberapa layanan, Anda mungkin melakukan sebuah tindakan yang kemudian menginisiasi tindakan lain di layanan yang berbeda. FAS menggunakan izin dari pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. Permintaan FAS hanya dibuat ketika layanan menerima permintaan yang memerlukan interaksi dengan orang lain Layanan AWS atau sumber daya untuk menyelesaikannya. Dalam hal ini, Anda harus memiliki izin untuk melakukan kedua tindakan tersebut. Untuk detail kebijakan ketika mengajukan permintaan FAS, lihat Sesi akses maju.

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

    • Peran terkait layanan — Peran terkait layanan adalah jenis peran layanan yang ditautkan ke peran layanan. 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.

  • Aplikasi yang berjalan di Amazon EC2 — Anda dapat menggunakan peran IAM untuk mengelola kredensi sementara untuk aplikasi yang berjalan pada instans EC2 dan membuat atau permintaan API. AWS CLI AWS Cara ini lebih dianjurkan daripada menyimpan kunci akses dalam instans EC2. Untuk menetapkan AWS peran ke instans EC2 dan membuatnya tersedia untuk semua aplikasinya, Anda membuat profil instance yang dilampirkan ke instance. Profil instans berisi peran dan memungkinkan program yang berjalan di instans EC2 mendapatkan kredensial sementara. Untuk informasi selengkapnya, lihat Menggunakan peran IAM untuk memberikan izin ke aplikasi yang berjalan dalam instans Amazon EC2 dalam Panduan Pengguna IAM.

Untuk mempelajari apakah kita harus menggunakan peran IAM atau pengguna IAM, lihat Kapan harus membuat peran IAM (bukan pengguna) dalam Panduan Pengguna IAM.

Mengelola akses menggunakan kebijakan

Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan adalah objek AWS yang, ketika dikaitkan dengan identitas atau sumber daya, menentukan izinnya. AWS mengevaluasi kebijakan ini ketika prinsipal (pengguna, pengguna root, atau sesi peran) membuat permintaan. Izin dalam kebijakan menentukan apakah permintaan diizinkan atau ditolak. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang struktur dan isi dokumen kebijakan JSON, lihat Gambaran umum kebijakan JSON dalam Panduan Pengguna IAM.

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.

Secara default, pengguna dan peran tidak memiliki izin. Untuk memberikan izin kepada pengguna untuk melakukan tindakan di sumber daya yang mereka perlukan, administrator IAM dapat membuat kebijakan IAM. Administrator kemudian dapat menambahkan kebijakan IAM ke peran, dan pengguna dapat mengambil peran.

Kebijakan IAM mendefinisikan izin untuk suatu tindakan terlepas dari metode yang Anda gunakan untuk melakukan operasinya. Misalnya, anggaplah Anda memiliki kebijakan yang mengizinkan tindakan iam:GetRole. Pengguna dengan kebijakan tersebut bisa mendapatkan informasi peran dari AWS Management Console, API AWS CLI, atau AWS API.

Kebijakan berbasis identitas

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 Membuat kebijakan IAM dalam Panduan Pengguna IAM.

Kebijakan berbasis identitas dapat dikategorikan lebih lanjut sebagai kebijakan inline atau kebijakan yang dikelola. Kebijakan inline disematkan langsung ke satu pengguna, grup, atau peran. Kebijakan terkelola adalah kebijakan mandiri yang dapat Anda lampirkan ke beberapa pengguna, grup, dan peran dalam. Akun AWS Kebijakan AWS terkelola mencakup kebijakan terkelola dan kebijakan yang dikelola pelanggan. Untuk mempelajari cara memilih antara kebijakan yang dikelola atau kebijakan inline, lihat Memilih antara kebijakan yang dikelola dan kebijakan inline dalam Panduan Pengguna IAM.

Kebijakan berbasis sumber daya

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

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.

Daftar kontrol akses (ACL)

Daftar kontrol akses (ACL) mengendalikan prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACL serupa dengan kebijakan berbasis sumber daya, meskipun kebijakan tersebut tidak menggunakan format dokumen kebijakan JSON.

Amazon S3, AWS WAF, dan Amazon VPC adalah contoh layanan yang mendukung ACL. Untuk mempelajari ACL selengkapnya, lihat Gambaran umum daftar kontrol akses (ACL) dalam Panduan Developer Amazon Simple Storage Service.

Jenis-jenis kebijakan lain

AWS mendukung jenis kebijakan tambahan yang kurang umum. Jenis-jenis kebijakan ini dapat mengatur izin maksimum yang diberikan kepada Anda oleh jenis kebijakan yang lebih umum.

  • Batasan izin – Batasan izin adalah fitur lanjutan tempat Anda mengatur izin maksimum yang dapat diberikan oleh kebijakan berbasis identitas ke entitas IAM (pengguna IAM atau peran IAM). Anda dapat menetapkan batasan izin untuk suatu entitas. Izin yang dihasilkan adalah perpotongan antara kebijakan berbasis identitas milik entitas dan batasan izinnya. Kebijakan berbasis sumber daya yang menentukan pengguna atau peran dalam bidang Principal tidak dibatasi oleh batasan izin. Penolakan eksplisit dalam salah satu kebijakan ini akan menggantikan pemberian izin. Untuk informasi selengkapnya tentang batasan izin, lihat Batasan izin untuk entitas IAM dalam Panduan Pengguna IAM.

  • Kebijakan kontrol layanan (SCP) — SCP adalah kebijakan JSON yang menentukan izin maksimum untuk organisasi atau unit organisasi (OU) di. AWS Organizations AWS Organizations adalah layanan untuk mengelompokkan dan mengelola secara terpusat beberapa Akun AWS yang dimiliki bisnis Anda. Jika Anda mengaktifkan semua fitur di organisasi, Anda dapat menerapkan kebijakan kontrol layanan (SCP) ke salah satu atau semua akun Anda. SCP membatasi izin untuk entitas di akun anggota, termasuk masing-masing. Pengguna root akun AWS Untuk informasi selengkapnya tentang Organisasi dan SCP, lihat Cara kerja SCP dalam Panduan Pengguna AWS Organizations .

  • Kebijakan sesi – Kebijakan sesi adalah kebijakan lanjutan yang Anda berikan sebagai parameter ketika Anda membuat sesi sementara secara programatis untuk peran atau pengguna terfederasi. Izin sesi yang dihasilkan adalah perpotongan antara kebijakan berbasis identitas pengguna atau peran dan kebijakan sesi. Izin juga bisa datang dari kebijakan berbasis sumber daya. Penolakan eksplisit dalam salah satu kebijakan ini akan menggantikan pemberian izin. 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 Membuat kebijakan IAM 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. Anda tidak dapat menentukan secara spesifik prinsipal dalam sebuah kebijakan berbasis identitas karena prinsipal berlaku bagi pengguna atau peran yang melekat kepadanya. 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. Menambahkan prinsipal akun silang ke kebijakan berbasis sumber daya hanya setengah dari membangun hubungan kepercayaan. Ketika prinsipal dan sumber daya berbeda Akun AWS, administrator IAM di akun tepercaya juga harus memberikan izin entitas utama (pengguna atau peran) untuk mengakses sumber daya. Mereka memberikan izin dengan melampirkan kebijakan berbasis identitas kepada entitas. Namun, jika kebijakan berbasis sumber daya memberikan akses ke prinsipal dalam akun yang sama, tidak diperlukan kebijakan berbasis identitas tambahan. Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM di 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. Tindakan kebijakan biasanya memiliki nama yang sama dengan operasi AWS API terkait. Ada beberapa pengecualian, misalnya tindakan hanya izin yang tidak memiliki operasi API yang cocok. Ada juga beberapa operasi yang memerlukan beberapa tindakan dalam suatu kebijakan. Tindakan tambahan ini disebut tindakan dependen.

Menyertakan 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. Pernyataan harus menyertakan elemen Resource atau NotResource. Praktik terbaiknya, tentukan sumber daya menggunakan Amazon Resource Name (ARN). Anda dapat melakukan ini untuk tindakan yang mendukung jenis sumber daya tertentu, yang dikenal sebagai izin tingkat sumber daya.

Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, misalnya operasi pencantuman, gunakan wildcard (*) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.

"Resource": "*"

Untuk melihat daftar jenis AWS Cloud9 sumber daya dan ARNnya, 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 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

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 Condition (atau blok Condition) akan memungkinkan Anda menentukan kondisi yang menjadi dasar suatu pernyataan berlaku. Elemen Condition bersifat opsional. 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.

Jika Anda menentukan beberapa elemen Condition dalam sebuah pernyataan, atau beberapa kunci dalam elemen Condition tunggal, maka AWS akan mengevaluasinya menggunakan operasi AND logis. Jika Anda menentukan beberapa nilai untuk satu kunci kondisi, AWS mengevaluasi kondisi menggunakan OR operasi logis. Semua kondisi harus dipenuhi sebelum izin pernyataan diberikan.

Anda juga dapat menggunakan variabel placeholder saat menentukan kondisi. Sebagai contoh, Anda dapat memberikan izin kepada pengguna IAM untuk mengakses sumber daya hanya jika izin tersebut mempunyai tag yang sesuai dengan nama pengguna IAM mereka. Untuk informasi selengkapnya, lihat Elemen kebijakan IAM: variabel dan tag dalam Panduan Pengguna IAM.

AWS mendukung kunci kondisi global dan kunci kondisi khusus layanan. 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

ACL di AWS Cloud9

Mendukung ACL

Tidak

Daftar kontrol akses (ACL) mengendalikan pengguna utama mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACL serupa dengan kebijakan berbasis sumber daya, meskipun kebijakan tersebut tidak menggunakan format dokumen kebijakan JSON.

ABAC dengan AWS Cloud9

Mendukung ABAC (tanda dalam kebijakan)

Ya

Kontrol akses berbasis atribut (ABAC) adalah strategi otorisasi yang menentukan izin berdasarkan atribut. Dalam AWS, atribut ini disebut tag. Anda dapat melampirkan tag ke entitas IAM (pengguna atau peran) dan ke banyak AWS sumber daya. Penandaan ke entitas dan sumber daya adalah langkah pertama dari ABAC. Kemudian rancanglah kebijakan ABAC untuk mengizinkan operasi ketika tag milik prinsipal cocok dengan tag yang ada di sumber daya yang ingin diakses.

ABAC sangat berguna di lingkungan yang berkembang dengan cepat dan berguna di situasi saat manajemen kebijakan menjadi rumit.

Untuk mengendalikan akses berdasarkan tag, berikan informasi tentang tag 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 Apa itu 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 kredensyal sementara dengan AWS Cloud9

Mendukung penggunaan kredensial sementara

Ya

Beberapa Layanan AWS tidak berfungsi saat Anda masuk menggunakan kredensyal sementara. Untuk informasi tambahan, termasuk yang Layanan AWS bekerja dengan kredensi sementara, lihat Layanan AWS yang bekerja dengan IAM di Panduan Pengguna IAM.

Anda menggunakan kredensi sementara jika Anda masuk AWS Management Console menggunakan metode apa pun kecuali nama pengguna dan kata sandi. Misalnya, ketika Anda mengakses AWS menggunakan tautan masuk tunggal (SSO) perusahaan Anda, proses tersebut secara otomatis membuat kredensil sementara. Anda juga akan secara otomatis membuat kredensial sementara ketika Anda masuk ke konsol sebagai seorang pengguna lalu beralih peran. Untuk informasi selengkapnya tentang peralihan peran, lihat Peralihan peran (konsol) dalam Panduan Pengguna IAM.

Anda dapat membuat kredensil sementara secara manual menggunakan API AWS CLI atau AWS . Anda kemudian dapat menggunakan kredensyal sementara tersebut untuk mengakses. AWS AWS merekomendasikan agar Anda secara dinamis menghasilkan kredensi sementara alih-alih menggunakan kunci akses jangka panjang. Untuk informasi selengkapnya, lihat Kredensial keamanan sementara di IAM.

Teruskan sesi akses untuk AWS Cloud9

Mendukung sesi akses maju (FAS)

Ya

Saat Anda menggunakan pengguna atau peran IAM untuk melakukan tindakan AWS, Anda dianggap sebagai prinsipal. Ketika Anda menggunakan beberapa layanan, Anda mungkin melakukan sebuah tindakan yang kemudian menginisiasi tindakan lain di layanan yang berbeda. FAS menggunakan izin dari pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. Permintaan FAS hanya dibuat ketika layanan menerima permintaan yang memerlukan interaksi dengan orang lain Layanan AWS atau sumber daya untuk menyelesaikannya. Dalam hal ini, Anda harus memiliki izin untuk melakukan kedua tindakan tersebut. Untuk detail kebijakan ketika mengajukan permintaan FAS, lihat Sesi akses maju.

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 Membuat 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 memodifikasi AWS Cloud9 sumber daya. Mereka juga tidak dapat melakukan tugas dengan menggunakan AWS Management Console, AWS Command Line Interface (AWS CLI), atau AWS API. Untuk memberikan izin kepada pengguna untuk melakukan tindakan di sumber daya yang mereka perlukan, administrator IAM dapat membuat kebijakan IAM. Administrator kemudian akan dapat menambahkan kebijakan IAM ke peran, dan pengguna dapat mengambil peran.

Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat Membuat kebijakan IAM dalam Panduan Pengguna IAM.

Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh AWS Cloud9, termasuk format ARN untuk setiap jenis sumber daya, lihat Kunci tindakan, sumber daya, dan kondisi AWS Cloud9 di 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 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 Mengonfigurasi akses API yang dilindungi MFA dalam Panduan Pengguna IAM.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat Praktik terbaik keamanan dalam 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 yang tidak diizinkan untuk melakukan iam:PassRole tindakan, kebijakan Anda harus diperbarui agar Anda dapat meneruskan peran 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 (ACL), 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 ARN lingkungan. Untuk informasi selengkapnya, lihat Amazon Resource Names (ARN) dan AWS Service Namespaces di. Referensi Umum Amazon Web Services

Jenis sumber daya Format ARN

Environment

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 Nama Sumber Daya Amazon (ARN) mereka 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 yang menjadi milik pengguna tersebut. 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 Pilihan persediaan tambahan untuk (tim dan perusahaan)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 AWS kebijakan yang dikelola dalam Panduan Pengguna IAM.

AWS kebijakan terkelola: AWSCloud9Administrator

Anda dapat melampirkan kebijakan AWSCloud9Administrator ke identitas IAM Anda.

Kebijakan ini memberikan izin administratif 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 bagi pengguna yang membuka lingkungan yang berkomunikasi dengan instans EC2-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instans EC2 no-ingress denganAWS Systems Manager

{ "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: AWSCloud9User

Anda dapat melampirkan kebijakan AWSCloud9User ke identitas IAM Anda.

Kebijakan ini memberikan pengguna izin untuk membuat lingkungan pengembangan AWS Cloud9 dan untuk 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 bagi pengguna yang membuka lingkungan yang berkomunikasi dengan instans EC2-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instans EC2 no-ingress denganAWS Systems Manager

{ "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: AWSCloud9EnvironmentMember

Anda dapat melampirkan kebijakan AWSCloud9EnvironmentMember ke identitas IAM Anda.

Kebijakan ini memberikan izin keanggotaan 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 bagi pengguna yang membuka lingkungan yang berkomunikasi dengan instans EC2-nya melalui Systems Manager. Untuk informasi selengkapnya, lihat Mengakses instans EC2 no-ingress denganAWS Systems Manager

{ "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 AWSServiceRoleForAWSCloud9 terkait layanan menggunakan kebijakan ini untuk memungkinkan AWS Cloud9 lingkungan berinteraksi dengan Amazon AWS CloudFormation EC2 dan sumber daya.

Detail izin

Ini AWSCloud9ServiceRolePolicymemberikan AWSServiceRoleForAWSCloud 9 izin yang diperlukan AWS Cloud9 untuk memungkinkan berinteraksi dengan Layanan AWS (Amazon EC2 AWS CloudFormation dan) 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

{ "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.

Perubahan Deskripsi Tanggal

Tindakan baru telah ditambahkan ke AWSCloud9User, AWSCloud9Administratordan AWSCloud9EnvironmentMemberkebijakan.

ssm:GetConnectionStatusTindakan telah ditambahkan ke AWSCloud9UserAWSCloud9Administratordan AWSCloud9EnvironmentMemberkebijakan. Tindakan ini akan memberi pengguna izin untuk memeriksa status koneksi SSM. cloud9:ValidateEnvironmentNameAPI telah dihapus dari AWSCloud9Userkebijakan karena sudah usang.

12 Oktober 2023

API ditambahkan ke AWSCloud9Userdan AWSCloud9Administratorkebijakan.

Dua API baru telah ditambahkan ke AWSCloud9Userdan AWSCloud9Administratorkebijakan, 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 instans Amazon EC2 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.

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

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

Membuat lingkungan EC2

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

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

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

Membuat lingkungan EC2 dengan jenis instans Amazon EC2 tertentu

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

{ "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.

Membuat lingkungan EC2 di subnet Amazon VPC tertentu

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

{ "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.

Membuat lingkungan EC2 dengan nama lingkungan tertentu

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

{ "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 pengembangan AWS Cloud9 EC2.

{ "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.

{ "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.

{ "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.

{ "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 yang 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.

{ "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.

{ "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.

{ "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.

{ "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.

{ "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.

{ "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.

{ "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.

{ "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

{ "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.

{ "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 menggunakan SDK dan file. 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 pengembangan AWS Cloud9 EC2.

*

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 instans Amazon EC2 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.

Membuat Lingkungan EC2

DescribeEC2Remote

cloud9:DescribeEC2Remote

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

Membuat Lingkungan EC2

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 Integrated Development Environment (IDE)

GetEnvironmentSettings

cloud9:GetEnvironmentSettings

Mendapat pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu.

Bekerja dengan AWS Cloud9 Integrated Development Environment (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 Integrated Development Environment (IDE)

ModifyTemporaryCredentialsOnEnvironmentEC2

cloud9:ModifyTemporaryCredentialsOnEnvironmentEC2

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

AWS kredensyal sementara yang dikelola

UpdateEnvironmentSettings

cloud9:UpdateEnvironmentSettings

Memperbarui pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu.

Bekerja dengan AWS Cloud9 Integrated Development Environment (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 Integrated Development Environment (IDE)

GetMigrationExperiences

cloud9:GetMigrationExperiences

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

AWS kredensyal sementara yang dikelola

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

Untuk lingkungan pengembangan AWS Cloud9 EC2, 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 menyiapkan, mengelola, atau melampirkan profil instans secara manual ke instans Amazon EC2 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 kredensyal 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 instans EC2 lingkungan Anda diluncurkan ke subnet pribadi, Anda tidak dapat menggunakan kredensil sementara AWS terkelola untuk mengizinkan lingkungan EC2 mengakses AWS layanan atas nama AWS entitas (misalnya, pengguna IAM).

Untuk informasi selengkapnya tentang kapan Anda dapat meluncurkan instans EC2 ke subnet privat, lihat Buat 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 lingkungan EC2 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 kredensyal 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 lingkungan EC2 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 SDK dan. AWS CLI

Jika Anda menonaktifkan kredensi sementara AWS terkelola, lingkungan tidak dapat mengakses manapun Layanan AWS, terlepas dari AWS entitas yang membuat permintaan. Tetapi, misalkan Anda tidak dapat atau tidak ingin mengaktifkan kredensil 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 kredensial sementara terkelola AWS di lingkungan EC2.

Tindakan yang didukung oleh kredensyal sementara yang AWS dikelola

Untuk lingkungan pengembangan AWS Cloud9 EC2, 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 Anda perlukan untuk mengakses lingkungan EC2, atau jika kredenal sementara AWS terkelola dimatikan untuk lingkungan EC2 dan Anda tidak dapat menyalakannya kembali, pertimbangkan alternatif berikut:

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

Membuat dan memperbarui kredensyal sementara AWS terkelola

Untuk lingkungan pengembangan AWS Cloud9 EC2, kredensi sementara AWS terkelola 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 kredensial 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 izin baca/tulis di jendela Kolaborasi.