Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Identity and access management di AWS Cloud9
AWS Identity and Access Management (IAM) adalah layanan Amazon Web Services (AWS) yang membantu administrator mengontrol akses ke sumber daya AWS secara aman. Administrator mengontrol siapa yang dapat diautentikasi (masuk) dan diberi wewenang (memiliki izin) untuk menggunakan sumber daya. Layanan AWS IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.
Untuk menggunakan AWS Cloud9 aksesAWS, Anda memerlukan Akun AWS dan AWS kredensi. Untuk meningkatkan keamanan AndaAkun AWS, kami sarankan Anda menggunakan pengguna IAM untuk memberikan kredensi akses alih-alih menggunakan kredensil Anda. Akun AWS
Untuk informasi lebih lanjut tentang bekerja dengan pengguna IAM, lihat AWS Identity and Access Management
Untuk gambaran umum tentang pengguna IAM dan mengapa mereka penting untuk keamanan akun Anda, lihat Kredensial AWS Keamanan di. Referensi Umum Amazon Web
AWS Cloud9 mengikuti model tanggung jawab bersama
Penonton
Cara menggunakan AWS Identity and Access Management (IAM) berbeda-beda, tergantung pada pekerjaan yang Anda lakukan di AWS Cloud9.
Pengguna layanan - Jika Anda menggunakan layanan AWS Cloud9 untuk melakukan tugas Anda, administrator Anda akan memberikan kredensial dan izin yang Anda butuhkan. Saat Anda menggunakan lebih banyak fitur AWS Cloud9 untuk melakukan pekerjaan, 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 Pemecahan Masalah AWS Cloud9.
Administrator layanan - Jika Anda bertanggung jawab atas sumber daya AWS Cloud9 di perusahaan Anda, Anda mungkin memiliki akses penuh ke AWS Cloud9. Tugas Anda adalah menentukan fitur dan sumber daya AWS Cloud9 mana yang dapat diakses karyawan Anda. Anda kemudian harus mengirimkan permintaan ke administrator Anda untuk mengubah izin pengguna layanan Anda. Tinjau informasi di halaman ini untuk memahami konsep dasar IAM. Untuk mempelajari lebih lanjut tentang cara perusahaan Anda dapat menggunakan IAM dengan AWS Cloud9, lihat Cara kerja AWS Cloud9 dengan IAM.
Administrator IAM - Jika Anda seorang IAM administrator, Anda mungkin ingin mempelajari detail tentang cara menulis kebijakan untuk mengelola akses. AWS Cloud9 Untuk melihat contoh kebijakan AWS Cloud9 berbasis identitas yang dapat Anda gunakan di IAM, lihat. Membuat kebijakan terkelola pelanggan untuk AWS Cloud9
Autentikasi
Anda dapat mengakses AWS sebagai salah satu jenis identitas berikut:
-
Pengguna root akun AWS— Saat Anda membuatAkun AWS, Anda mulai dengan satu identitas masuk yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya di akun. Identitas ini disebut pengguna root Akun AWS dan diakses dengan cara masuk menggunakan alamat email dan kata sandi yang Anda gunakan saat membuat akun. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari Anda. Lindungi kredensil pengguna root Anda dan gunakan untuk melakukan tugas-tugas yang hanya dapat dilakukan oleh pengguna root. Untuk daftar lengkap tugas yang mengharuskan Anda masuk sebagai pengguna root, lihat Tugas yang memerlukan kredensi pengguna root di Panduan Pengguna IAM.
-
Pengguna IAM — Pengguna IAM adalah identitas di dalam Anda Akun AWS yang memiliki izin khusus khusus. Anda dapat menggunakan kredenal masuk untuk masuk untuk mengamankan AWS halaman web seperti, Forum AWS Diskusi AWS Management Console
, atau Pusat. AWS Support Selain kredensi masuk, Anda juga dapat membuat kunci akses untuk setiap pengguna. Anda dapat menggunakan kunci ini ketika Anda mengakses Layanan AWS baik melalui salah satu dari beberapa SDK
atau dengan menggunakan AWS Command Line Interface(CLI) . Alat SDK dan CLI menggunakan access key untuk menandatangani permintaan Anda secara kriptografis. Jika Anda tidak menggunakan alat AWS, Anda harus menandatangani permintaan tersebut sendiri. Signature Version 4, adalah protokol untuk mengautentikasi permintaan API masuk. Untuk informasi selengkapnya tentang mengautentikasi permintaan, lihat proses penandatanganan Versi Tanda Tangan 4 di. Referensi Umum AWS -
IAM role – IAM role adalah identitas IAM yang dapat Anda buat di akun Anda yang memiliki izin spesifik. IAM role serupa dengan pengguna IAM, yang merupakan identitas AWS dengan kebijakan izin yang menentukan apa yang dapat dan tidak dapat dilakukan identitas di AWS. Namun, alih-alih secara unik terkait dengan satu orang, peran dimaksudkan untuk dapat menjadi dapat diasumsikan oleh siapa pun yang membutuhkannya. Selain itu, peran tidak memiliki kredensial jangka panjang standar seperti kata sandi atau kunci akses yang terkait dengannya. Sebagai gantinya, saat Anda mengambil peran, kredensial keamanan sementara untuk sesi peran Anda akan diberikan. IAM role dengan kredensial sementara berguna dalam situasi berikut:
-
Akses pengguna terfederasi — Untuk menetapkan izin ke identitas federasi, Anda membuat peran dan menentukan izin untuk peran tersebut. Ketika identitas federasi mengautentikasi, identitas dikaitkan dengan peran dan diberikan izin yang ditentukan oleh peran. Untuk informasi tentang peran untuk federasi, lihat Membuat peran untuk Penyedia Identitas pihak ketiga di Panduan Pengguna IAM. Jika Anda menggunakan Pusat Identitas IAM, Anda mengonfigurasi set izin. Untuk mengontrol apa yang dapat diakses identitas Anda setelah diautentikasi, IAM Identity Center mengkorelasikan izin yang disetel ke peran dalam IAM. Untuk informasi tentang set izin, lihat Set izin di Panduan AWS IAM Identity Center Pengguna.
-
Layanan AWSAkses — Peran layanan adalah peran IAM yang diasumsikan oleh layanan untuk melakukan tindakan atas nama Anda. Administrator IAM dapat membuat, memodifikasi, dan menghapus peran layanan dari dalam IAM. Untuk informasi selengkapnya, lihat Membuat peran untuk mendelegasikan izin ke Layanan AWS dalam Panduan Pengguna IAM.
-
Aplikasi yang berjalan di Amazon EC2 – Anda dapat menggunakan IAM role untuk mengelola kredensial sementara untuk aplikasi yang berjalan pada instans EC2, dan membuat permintaan API AWS CLI atau AWS. Menyimpan access key di dalam instans EC2 lebih disarankan. Untuk menugaskan sebuah peran AWS ke instans EC2 dan membuatnya tersedia untuk semua aplikasinya, Anda dapat membuat sebuah profil instans yang dilampirkan ke instans. Profil instans berisi peran dan memungkinkan program yang berjalan di instans EC2 untuk mendapatkan kredensial sementara. Untuk informasi selengkapnya, lihat Menggunakan IAM role untuk memberikan izin ke aplikasi yang berjalan di instans Amazon EC2 dalam Panduan Pengguna IAM.
-
Mengelola akses menggunakan kebijakan
Anda dapat memiliki kredensyal yang valid untuk mengautentikasi permintaan Anda. Namun, kecuali Anda memiliki izin, Anda tidak dapat membuat atau mengakses AWS Cloud9 sumber daya. Misalnya, Anda harus memiliki izin untuk membuat, membagikan, atau menghapus lingkungan pengembangan AWS Cloud9.
Setiap sumber daya AWS dimiliki oleh Akun AWS, dan izin untuk membuat atau mengakses sumber daya diatur oleh kebijakan izin. Administrator akun dapat melampirkan kebijakan izin pada identitas IAM (yaitu pengguna, grup, dan peran).
Ketika Anda memberikan izin, Anda memutuskan siapa yang mendapatkan izin, sumber daya yang dapat mereka akses, dan tindakan yang dapat dilakukan pada sumber daya tersebut.
Cara kerja AWS Cloud9 dengan IAM
AWS Identity and Access Managementdigunakan untuk mengelola izin yang memungkinkan Anda untuk bekerja dengan lingkungan AWS Cloud9 pengembangan dan lainnya Layanan AWS dan sumber daya.
Sumber daya dan operasi AWS Cloud9
Di AWS Cloud9, sumber daya utama adalah lingkungan pengembangan AWS Cloud9. Dalam sebuah 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
Jenis sumber daya | Format ARN |
---|---|
Environment |
|
Setiap lingkungan yang dimiliki oleh akun yang ditentukan dalam yang ditentukan Wilayah AWS |
|
Setiap lingkungan yang dimiliki oleh akun yang ditentukan di Wilayah yang ditentukan |
|
Setiap sumber daya AWS Cloud9, terlepas dari akun dan Wilayah |
|
Misalnya, Anda dapat menunjukkan lingkungan tertentu dalam pernyataan Anda menggunakan Amazon Resource Name (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 (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 sekumpulan operasi untuk bekerja dengan sumber daya AWS Cloud9. Untuk daftar, lihat Referensi izin AWS Cloud9.
Memahami kepemilikan sumber daya
Akun Akun AWS memiliki sumber daya yang dibuat dalam akun, terlepas dari siapa yang membuat sumber daya tersebut.
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 AndaAkun 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. AndaAkun AWS, yang menjadi milik perannya, memiliki lingkungan.
catatan
Jika Anda menghapus akun pengguna yang merupakan pemilik ARN dari satu atau beberapa 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 detail tentang layanan IAM. Untuk dokumentasi IAM lengkap, lihat Apa yang Dimaksud dengan IAM? di 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 terlampir 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 ke sumber daya AWS Cloud9 yang diinginkan:
-
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 AWS Cloud9 secara langsung. Sebagai gantinya, AWS Cloud9 melampirkan kebijakan berbasis sumber daya yang sesuai ke sumber daya AWS Cloud9 saat Anda menambahkan, memodifikasi, memperbarui, atau menghapus anggota lingkungan.
Untuk memberikan pengguna izin untuk melakukan tindakan pada sumber daya AWS Cloud9, Anda melampirkan kebijakan izin ke grup IAM tempat pengguna berada. Kami menyarankan Anda melampirkan kebijakan AWS terkelola (yang telah ditentukan sebelumnya) AWS Cloud9 bila memungkinkan. AWSkebijakan 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 terkelola AWS untuk AWS Cloud9, lihat Kebijakan yang dikelola oleh AWS 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 (dikelola AWS 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 secara terprogram untuk peran atau pengguna gabungan, 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 AWS Cloud9 API dengan sukses.
Kebijakan yang dikelola oleh AWS untuk AWS Cloud9
Kebijakan AWS terkelola adalah kebijakan mandiri yang dibuat dan dikelola olehAWS. AWSKebijakan 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 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. AWSkemungkinan 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.
Kebijakan terkelola AWS: AWSCloud9Administrator
Anda dapat melampirkan kebijakan AWSCloud9Administrator
ke identitas-identitas IAM Anda.
Kebijakan ini memberikan izin administratif
yang menyediakan akses administrator. AWS Cloud9
Rincian izin
Kebijakan ini mencakup izin berikut.
-
AWS Cloud9Semua AWS Cloud9 tindakan dalam diri merekaAkun AWS.
-
Amazon EC2 — Dapatkan informasi tentang beberapa VPC Amazon dan sumber daya subnet di dalamnya. Akun AWS
-
IAM — Dapatkan informasi tentang pengguna IAM di dalamnyaAkun 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/*" ] } ] }
Kebijakan terkelola AWS: AWSCloud9User
Anda dapat melampirkan kebijakan AWSCloud9User
ke identitas-identitas IAM Anda.
Kebijakan ini memberikan pengguna
izin untuk membuat lingkungan pengembangan AWS Cloud9 dan untuk mengelola lingkungan yang dimiliki.
Rincian izin
Kebijakan ini mencakup izin berikut.
-
AWS Cloud9 – Membuat dan mendapatkan informasi tentang lingkungan mereka, dan mendapatkan dan mengubah 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 dalamnyaAkun 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/*" ] } ] }
AWSkebijakan terkelola: AWSCloud9EnvironmentMember
Anda dapat melampirkan kebijakan AWSCloud9EnvironmentMember
ke identitas-identitas IAM Anda.
Kebijakan ini memberikan izin keanggotaan
yang menyediakan kemampuan untuk bergabung dengan lingkungan bersama AWS Cloud9.
Rincian izin
Kebijakan ini mencakup izin berikut:
-
AWS Cloud9 – Mendapatkan informasi tentang lingkungan mereka, dan mendapatkan dan mengubah pengaturan pengguna untuk lingkungan mereka.
-
IAM — Dapatkan informasi tentang pengguna IAM di dalamnyaAkun 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/*" ] } ] }
Kebijakan terkelola AWS: AWSCloud9ServiceRolePolicy
Peran AWSServiceRoleForAWSCloud9 terkait layanan menggunakan kebijakan ini untuk memungkinkan AWS Cloud9 lingkungan berinteraksi dengan Amazon AWS CloudFormation EC2 dan sumber daya.
Rincian 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 Cloud9mendefinisikan 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 memperbarui pada kebijakan terkelola AWS
Lihat detail tentang pembaruan terhadap kebijakan terkelola AWS untuk AWS Cloud9 sejak layanan ini mulai melacak perubahan-perubahan tersebut. Untuk peringatan otomatis tentang perubahan pada halaman ini, berlangganan umpan RSS di halaman Riwayat dokumen AWS Cloud9.
Perubahan | Deskripsi | Tanggal |
---|---|---|
Tindakan baru telah ditambahkan ke AWSCloud9User, AWSCloud9Administratordan AWSCloud9EnvironmentMemberkebijakan. |
|
Oktober 12, 2023 |
API ditambahkan ke AWSCloud9Userdan AWSCloud9Administratorkebijakan. |
Dua API baru telah ditambahkan ke AWSCloud9Userdan AWSCloud9Administratorkebijakan, API ini adalah |
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. |
Januari 12, 2022 |
AWS Cloud9 mulai melacak perubahan |
AWS Cloud9 mulai melacak perubahan untuk kebijakan terkelola AWS |
15 Maret 2021 |
Membuat kebijakan terkelola pelanggan untuk AWS Cloud9
Jika tidak ada kebijakan terkelola AWS yang memenuhi persyaratan kontrol akses Anda, Anda dapat membuat dan melampirkan kebijakan terkelola pelanggan Anda sendiri.
Untuk membuat kebijakan terkelola pelanggan, lihat Membuat Kebijakan IAM (konsol) di Panduan Pengguna IAM.
Topik
Menentukan elemen kebijakan: efek, prinsipal, tindakan, dan sumber daya
Untuk setiap sumber daya AWS Cloud9, layanan menentukan serangkaian operasi API. Untuk memberikan izin bagi operasi API ini, AWS Cloud9 menentukan 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 untuk (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, izincloud9:CreateEnvironmentEC2
memberikan pengguna izin untuk melakukan operasiCreateEnvironmentEC2
.
Untuk mempelajari lebih lanjut tentang sintaks dan deskripsi kebijakan IAM, lihat Referensi Kebijakan JSON IAM dalam Panduan Pengguna IAM.
Untuk tabel yang menampilkan semua tindakan AWS Cloud9 API dan sumber daya yang diterapkannya, lihat Referensi izin AWS Cloud9.
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
Topik
- Mendapatkan informasi tentang lingkungan
- Membuat lingkungan EC2
- Membuat lingkungan EC2 dengan jenis instans Amazon EC2 tertentu
- Membuat lingkungan EC2 di subnet Amazon VPC tertentu
- Membuat lingkungan EC2 dengan nama lingkungan tertentu
- Membuat lingkungan SSH saja
- Memperbarui lingkungan atau mencegah memperbarui lingkungan
- Mendapatkan daftar anggota lingkungan
- Berbagi lingkungan hanya dengan pengguna tertentu
- Mencegah berbagi lingkungan
- Mengubah, atau mencegah perubahan, pengaturan anggota lingkungan
- Menghapus, atau mencegah penghapusan, anggota lingkungan
- Menghapus, atau mencegah penghapusan, lingkungan
- Kebijakan IAM khusus untuk pembuatan lingkungan SSM
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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
dan AWSCloud9User
.
Membuat lingkungan EC2
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut 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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
dan AWSCloud9User
.
Membuat lingkungan EC2 dengan jenis instans Amazon EC2 tertentu
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut 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 terkelola AWS AWSCloud9Administrator
atau AWSCloud9User
sudah dilampirkan ke entitas IAM, kebijakan terkelola AWS tersebut akan menggantikan perilaku pernyataan kebijakan IAM sebelumnya. Hal ini karena kebijakan terkelola AWS tersebut lebih permisif.
Membuat lingkungan EC2 di subnet Amazon VPC tertentu
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut 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 terkelola AWS AWSCloud9Administrator
atau AWSCloud9User
sudah dilampirkan ke entitas IAM, kebijakan terkelola AWS tersebut akan menggantikan perilaku pernyataan kebijakan IAM sebelumnya. Hal ini karena kebijakan terkelola AWS tersebut lebih permisif.
Membuat lingkungan EC2 dengan nama lingkungan tertentu
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut 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 terkelola AWS AWSCloud9Administrator
atau AWSCloud9User
sudah dilampirkan ke entitas IAM, kebijakan terkelola AWS tersebut akan menggantikan perilaku pernyataan kebijakan IAM sebelumnya. Hal ini karena kebijakan terkelola AWS tersebut lebih permisif.
Membuat lingkungan SSH saja
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut 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 pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, mengizinkan entitas tersebut mengubah informasi tentang lingkungan pengembangan AWS Cloud9 apa pun di akun mereka.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironment", "Resource": "*" } ] }
catatan
Izin akses sebelumnya sudah disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
.
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut mengubah informasi tentang lingkungan dengan Amazon Resource Name (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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
. Selain itu, izin akses sebelumnya lebih permisif daripada izin akses yang setara dalam kebijakan terkelola AWS 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 terkelola AWS AWSCloud9Administrator
atau AWSCloud9User
sudah dilampirkan ke entitas IAM, kebijakan terkelola AWS tersebut akan menggantikan perilaku pernyataan kebijakan IAM sebelumnya. Hal ini karena kebijakan terkelola AWS 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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
.
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut mengubah pengaturan anggota di lingkungan dengan Amazon Resource Name (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 disertakan dalam kebijakan terkelola AWS 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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
.
Contoh pernyataan kebijakan IAM berikut, yang dilampirkan ke entitas IAM, secara eksplisit mencegah entitas tersebut menghapus lingkungan dengan Amazon Resource Name (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" ] } ] }
Referensi izin AWS Cloud9
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 tindakan AWS Cloud9 dan cloud9:Describe*
menentukan semua tindakan AWS Cloud9 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 disertakan dalam kebijakan terkelola AWS AWSCloud9Administrator
. Selain itu, bahwa izin akses sebelumnya lebih permisif daripada izin akses yang setara dalam kebijakan terkelola AWS AWSCloud9User
.
Operasi AWS Cloud9 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Operasi AWS Cloud9 | Izin yang diperlukan (tindakan API) | Resource | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk membuat lingkungan pengembangan AWS Cloud9 EC2. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk menambahkan anggota ke lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk menghapus lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk menghapus anggota dari lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk mendapatkan daftar anggota di lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk mendapatkan informasi tentang lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk mendapatkan informasi tentang status lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk memperbarui pengaturan untuk lingkungan. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Diperlukan untuk memperbarui pengaturan untuk anggota di lingkungan. |
|
Operasi API hanya izin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Operasi AWS Cloud9 | Deskripsi | Dokumentasi konsol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memulai instans Amazon EC2 yang terhubung dengan AWS Cloud9 IDE Anda. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Menciptakan lingkungan pengembangan AWS Cloud9 SSH. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Membuat token otentikasi yang memungkinkan koneksi antara AWS Cloud9 IDE dan lingkungan pengguna. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat detail tentang koneksi ke lingkungan pengembangan EC2, termasuk host, pengguna, dan port. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat detail tentang koneksi ke lingkungan pengembangan SSH, termasuk host, pengguna, dan port. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat informasi konfigurasi yang digunakan untuk menginisialisasi AWS Cloud9 IDE. |
Bekerja dengan AWS Cloud9 Integrated Development Environment (IDE) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu. |
Bekerja dengan AWS Cloud9 Integrated Development Environment (IDE) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat pengaturan AWS Cloud9 IDE untuk anggota lingkungan tertentu. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat kunci SSH publik pengguna, yang digunakan oleh AWS Cloud9 untuk terhubung ke lingkungan pengembangan SSH. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mendapat pengaturan AWS Cloud9 IDE untuk pengguna tertentu. |
Bekerja dengan AWS Cloud9 Integrated Development Environment (IDE) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Menetapkan kredensil sementara AWS terkelola pada instans Amazon EC2 yang digunakan oleh AWS Cloud9 lingkungan pengembangan terintegrasi (IDE). |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memperbarui pengaturan AWS Cloud9 IDE untuk lingkungan pengembangan tertentu. |
Bekerja dengan AWS Cloud9 Integrated Development Environment (IDE) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memperbarui pengaturan AWS Cloud9 IDE untuk anggota lingkungan tertentu. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memperbarui detail tentang koneksi ke lingkungan pengembangan SSH, termasuk host, pengguna, dan port. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memperbarui pengaturan AWS Cloud9 IDE untuk pengguna tertentu. |
Bekerja dengan AWS Cloud9 Integrated Development Environment (IDE) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Memberikan izin kepada AWS Cloud9 pengguna untuk mendapatkan pengalaman migrasi dari AWS Cloud9 ke CodeCatalyst. |
Kredensial sementara terkelola AWS
Jika Anda hanya mencari daftar tindakan yang didukung oleh kredensial sementara terkelola AWS, lanjutkan ke Tindakan yang didukung oleh kredensial sementara terkelola AWS. |
Untuk lingkungan pengembangan AWS Cloud9 EC2 ,AWS Cloud9 membuat kredensial akses AWS sementara yang tersedia untuk Anda di lingkungan. Kami menyebutnya kredensial sementara terkelola AWS. Hal ini memberikan manfaat berikut:
-
Anda tidak perlu menyimpan kredensial akses AWS permanen dari entitas AWS (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 kredensial sementaranya, sehingga satu set kredensial hanya dapat digunakan untuk waktu yang terbatas. Ini adalah praktik terbaik keamanan AWS. Untuk informasi selengkapnya, lihat Membuat dan memperbarui kredensial sementara terkelola AWS.
-
AWS Cloud9 memberikan batasan tambahan tentang bagaimana kredensial sementaranya dapat digunakan untuk mengakses tindakan dan sumber daya AWS dari lingkungan. Ini juga merupakan praktik terbaik keamanan AWS.
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 untukAWS 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):
-
AWS Cloud9 memeriksa untuk melihat apakah entitas AWS yang memanggil (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.
-
AWS Cloud9 memeriksa kredensial sementara terkelola AWS untuk melihat apakah izinnya mengizinkan tindakan yang diminta untuk sumber daya yang diminta di AWS. Jika izin tidak ada atau ditolak secara eksplisit, permintaan gagal. Untuk daftar izin yang didukung oleh kredensial sementara terkelola AWS, lihat Tindakan yang didukung oleh kredensial sementara terkelola AWS.
-
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 entitas AWS yang memanggil memiliki izin yang benar, permintaan akan gagal jika AWS Cloud9 juga tidak mengizinkannya secara eksplisit. 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 kredensial sementara terkelola AWS untuk lingkungan tersebut kapan saja, sebagai berikut:
-
Dengan lingkungan terbuka, di AWS Cloud9 IDE, pada bilah menu pilih AWS Cloud9, Preferensi.
-
Pada tab Preferensi, di panel navigasi, pilih Pengaturan AWS, Kredensial.
-
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 UpdateEnvironment
dan 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 manapunLayanan 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:
-
Lampirkan profil instans ke instans Amazon EC2 yang terhubung ke lingkungan. Untuk petunjuk, lihat Membuat dan Menggunakan Profil Instans untuk mengelola Kredensial Sementara.
-
Simpan kredensial akses AWS permanen Anda di lingkungan, misalnya, dengan mengatur variabel lingkungan khusus atau dengan menjalankan perintah
aws configure
. Untuk petunjuk, lihat Membuat dan menyimpan kredensial akses permanen di Lingkungan.
Alternatif sebelumnya mengesampingkan semua izin yang diizinkan (atau ditolak) oleh kredensial sementara terkelola AWS di lingkungan EC2.
Tindakan yang didukung oleh kredensial sementara terkelola AWS
Untuk lingkungan pengembangan AWS Cloud9 EC2, kredensi sementara AWS terkelola memungkinkan semua AWS tindakan untuk semua AWS sumber daya di pemanggilAkun 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 tindakan AWS yang didukung dibatasi untuk alamat IP lingkungan. Ini adalah praktik terbaik keamanan AWS.
Jika AWS Cloud9 tidak mendukung tindakan atau sumber daya yang Anda perlukan untuk diakses oleh lingkungan EC2, atau jika kredensial sementara terkelola AWS dimatikan untuk lingkungan EC2 dan Anda tidak dapat mengaktifkannya kembali, pertimbangkan alternatif berikut:
-
Lampirkan profil instans ke instans Amazon EC2 yang terhubung ke lingkungan EC2. Untuk petunjuk, lihat Membuat dan menggunakan profil instans untuk mengelola kredensial sementara.
-
Simpan kredensial akses AWS permanen Anda di lingkungan EC2, misalnya, dengan mengatur variabel lingkungan khusus atau dengan menjalankan perintah
aws configure
. Untuk petunjuk, lihat Membuat dan menyimpan kredensial akses permanen di Lingkungan.
Alternatif sebelumnya mengesampingkan semua izin yang diizinkan (atau ditolak) oleh kredensial sementara terkelola AWS di lingkungan EC2.
Membuat dan memperbarui kredensial sementara terkelola AWS
Untuk lingkungan pengembangan AWS Cloud9 EC2, kredensial sementara terkelola AWS dibuat saat pertama kali Anda membuka lingkungan.
Kredensial sementara terkelola AWS diperbarui dalam 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, kredensial sementara terkelola AWS 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
Kredensial sementara terkelola AWS juga kedaluwarsa secara otomatis setiap 15 menit. Agar kredensial di-refresh sehingga kolaborator dapat terus menggunakannya, pemilik lingkungan harus terhubung ke lingkungan AWS Cloud9 melalui IDE.
Hanya pemilik lingkungan yang dapat mengaktifkan kembali kredensial sementara terkelola AWS sehingga dapat dibagikan dengan anggota lain. Ketika pemilik lingkungan membuka IDE, kotak dialog mengonfirmasi bahwa kredensial sementara terkelola AWS 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.