Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengelola kebijakan pengguna Elastic Beanstalk
AWS Elastic Beanstalk menyediakan dua kebijakan terkelola yang memungkinkan Anda menetapkan akses penuh atau akses hanya-baca ke semua sumber daya yang dikelola Elastic Beanstalk. Anda dapat melampirkan kebijakan ke AWS Identity and Access Management (IAM) pengguna atau grup, atau ke peran yang diambil oleh pengguna Anda.
Untuk kebijakan yang dikelola
-
AdministratorAccessAWSElasticBeanstalk- Memberikan pengguna izin administratif penuh untuk membuat, memodifikasi, dan menghapus aplikasi Elastic Beanstalk, versi aplikasi, pengaturan konfigurasi, lingkungan, dan sumber daya dasarnya. Untuk melihat konten kebijakan terkelola, lihat AWSElasticBeanstalk halaman AdministratorAccess- di Panduan Referensi Kebijakan AWS Terkelola.
-
AWSElasticBeanstalkReadOnly— Memungkinkan pengguna untuk melihat aplikasi dan lingkungan, tetapi tidak melakukan operasi yang memodifikasinya. Ini menyediakan akses hanya-baca ke semua sumber daya Elastic Beanstalk, dan ke sumber daya lain AWS yang diambil oleh konsol Elastic Beanstalk. Perhatikan bahwa akses hanya-baca tidak mengaktifkan tindakan seperti mengunduh Elastic Beanstalk sehingga Anda dapat membacanya. Hal ini karena log dipentaskan di bucket Amazon S3, di mana Elastic Beanstalk akan memerlukan izin tulis. Lihat contoh di akhir topik ini untuk informasi tentang cara mengaktifkan akses ke log Elastic Beanstalk. Untuk melihat konten kebijakan terkelola, lihat AWSElasticBeanstalkReadOnlyhalaman di Panduan Referensi Kebijakan AWS Terkelola.
penting
Kebijakan terkelola Elastic Beanstalk tidak memberikan izin terperinci—mereka memberikan semua izin yang berpotensi diperlukan untuk bekerja dengan aplikasi Elastic Beanstalk. Dalam beberapa kasus, Anda mungkin ingin membatasi izin kebijakan terkelola kami lebih lanjut. Untuk contoh satu kasus penggunaan, lihatMencegah akses bucket Amazon S3 lintas lingkungan.
Kebijakan terkelola kami juga tidak mencakup izin ke sumber daya khusus yang mungkin Anda tambahkan ke solusi Anda, dan yang tidak dikelola oleh Elastic Beanstalk. Untuk menerapkan izin yang lebih rinci, izin minimum yang diperlukan, atau izin sumber daya kustom, gunakan kebijakan khusus.
Kebijakan terkelola tidak lagi digunakan
Sebelumnya, Elastic Beanstalk mendukung dua kebijakan pengguna terkelola lainnya, dan. AWSElasticBeanstalkFullAccessAWSElasticBeanstalkReadOnlyAccess Kami berencana untuk menghentikan kebijakan-kebijakan sebelumnya. Anda mungkin masih dapat melihat dan menggunakannya di IAM konsol. Namun demikian, kami merekomendasikan Anda beralih ke menggunakan kebijakan pengguna terkelola baru, dan menambahkan kebijakan kustom untuk memberikan izin ke sumber daya kustom, jika Anda memiliki.
Kebijakan untuk integrasi dengan layanan lain
Kami juga menyediakan kebijakan yang lebih terperinci yang memungkinkan Anda mengintegrasikan lingkungan Anda dengan layanan lain, jika Anda lebih suka menggunakannya.
-
AWSElasticBeanstalkRoleCWL— Memungkinkan lingkungan untuk mengelola grup CloudWatch log Amazon Logs.
-
AWSElasticBeanstalkRoleRDS— Memungkinkan lingkungan untuk mengintegrasikan RDS instance Amazon.
-
AWSElasticBeanstalkRoleWorkerTier— Memungkinkan tingkat lingkungan pekerja untuk membuat tabel Amazon DynamoDB dan antrian Amazon. SQS
-
AWSElasticBeanstalkRoleECS— Memungkinkan lingkungan Docker multicontainer untuk mengelola cluster AmazonECS.
-
AWSElasticBeanstalkRoleCore— Memungkinkan operasi inti dari lingkungan layanan web.
-
AWSElasticBeanstalkRoleSNS— Memungkinkan lingkungan untuk mengaktifkan integrasi SNS topik Amazon.
Untuk melihat JSON sumber kebijakan terkelola tertentu, lihat Panduan Referensi Kebijakan AWS Terkelola.
Mengontrol akses dengan kebijakan terkelola
Anda dapat menggunakan kebijakan terkelola untuk memberikan akses penuh atau akses hanya-baca ke Elastic Beanstalk. Elastic Beanstalk memperbarui kebijakan ini secara otomatis ketika izin tambahan diperlukan untuk mengakses fitur baru.
Untuk menerapkan kebijakan terkelola kepada IAM pengguna atau grup
-
Buka halaman Kebijakan
di IAM konsol. -
Di kotak pencarian, ketik
AWSElasticBeanstalk
untuk memfilter kebijakan. -
Dalam daftar kebijakan, pilih kotak centang di samping AWSElasticBeanstalkReadOnlyatau AdministratorAccess- AWSElasticBeanstalk.
-
Pilih Tindakan kebijakan, lalu pilih Lampirkan.
-
Pilih satu atau beberapa pengguna dan grup untuk melampirkan kebijakan. Anda bisa menggunakan menu Filter dan kotak pencarian untuk memfilter daftar entitas utama.
-
Pilih Pasang kebijakan.
Membuat kebijakan pengguna kustom
Anda dapat membuat IAM kebijakan sendiri untuk mengizinkan atau menolak tindakan Elastic Beanstalk tertentu pada sumber daya API Elastic Beanstalk tertentu, dan untuk mengontrol akses ke sumber daya khusus yang tidak dikelola oleh Elastic Beanstalk. Untuk informasi selengkapnya tentang melampirkan kebijakan ke pengguna atau grup, lihat Bekerja dengan Kebijakan di Panduan IAM Pengguna. Untuk detail tentang membuat kebijakan kustom, lihat Membuat IAM Kebijakan di Panduan IAM Pengguna.
catatan
Meskipun Anda dapat membatasi cara pengguna berinteraksi dengan Elastic APIs Beanstalk, saat ini tidak ada cara yang efektif untuk mencegah pengguna yang memiliki izin untuk membuat sumber daya dasar yang diperlukan untuk membuat sumber daya lain di Amazon dan layanan lainnya. EC2
Pikirkan kebijakan ini sebagai cara yang efektif untuk mendistribusikan tanggung jawab Elastic Beanstalk, bukan sebagai cara untuk mengamankan semua sumber daya yang mendasarinya.
penting
Jika Anda memiliki kebijakan khusus yang ditetapkan ke peran layanan Elastic Beanstalk, penting bagi Anda untuk menetapkan izin yang tepat untuk templat peluncuran. Jika tidak, Anda mungkin tidak memiliki izin yang diperlukan untuk memperbarui lingkungan atau meluncurkan yang baru. Untuk informasi selengkapnya, lihat Izin yang diperlukan untuk template peluncuran.
IAMKebijakan berisi pernyataan kebijakan yang menjelaskan izin yang ingin Anda berikan. Ketika Anda membuat pernyataan kebijakan untuk Elastic Beanstalk, Anda perlu memahami bagaimana menggunakan empat bagian berikut dari pernyataan kebijakan:
-
Efek menentukan apakah untuk mengizinkan atau menolak tindakan dalam pernyataan.
-
Tindakan menentukan APIoperasi yang ingin Anda kontrol. Misalnya, gunakan
elasticbeanstalk:CreateEnvironment
untuk menentukan operasiCreateEnvironment
. Operasi tertentu, seperti menciptakan lingkungan, memerlukan izin tambahan untuk melakukan tindakan tersebut. Untuk informasi selengkapnya, lihat Sumber daya dan kondisi untuk tindakan Elastic Beanstalk.catatan
Untuk menggunakan
UpdateTagsForResource
APIoperasi, tentukan salah satu dari dua tindakan virtual berikut (atau keduanya) alih-alih nama API operasi:elasticbeanstalk:AddTags
-
Mengontrol izin untuk menelepon
UpdateTagsForResource
dan meneruskan daftar tag untuk add-in di parameterTagsToAdd
. elasticbeanstalk:RemoveTags
-
Mengontrol izin untuk menelepon
UpdateTagsForResource
dan meneruskan daftar kunci tag untuk menghapus di parameterTagsToRemove
.
-
Sumber Daya menentukan sumber daya yang Anda inginkan untuk mengontrol akses. Untuk menentukan sumber daya Elastic Beanstalk, daftarkan Amazon Resource ARN Name () dari setiap sumber daya.
-
(opsional) Ketentuan menentukan pembatasan izin yang diberikan dalam pernyataan. Untuk informasi selengkapnya, lihat Sumber daya dan kondisi untuk tindakan Elastic Beanstalk.
Bagian berikut menunjukkan beberapa kasus di mana Anda mungkin mempertimbangkan kebijakan pengguna kustom.
Memungkinkan penciptaan lingkungan Elastic Beanstalk terbatas
Kebijakan dalam contoh berikut mengizinkan pengguna untuk memanggil tindakan CreateEnvironment
untuk membuat lingkungan yang namanya dimulai dengan Test
dengan aplikasi dan versi aplikasi yang ditentukan.
{ "Version": "2012-10-17", "Statement": [ { "Sid":"CreateEnvironmentPerm", "Action": [ "elasticbeanstalk:CreateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My First Elastic Beanstalk Application/Test*" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My First Elastic Beanstalk Application"], "elasticbeanstalk:FromApplicationVersion": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My First Elastic Beanstalk Application/First Release"] } } }, { "Sid":"AllNonResourceCalls", "Action":[ "elasticbeanstalk:CheckDNSAvailability", "elasticbeanstalk:CreateStorageLocation" ], "Effect":"Allow", "Resource":[ "*" ] } ] }
Kebijakan di atas menunjukkan bagaimana untuk memberikan akses terbatas untuk operasi Elastic Beanstalk. Untuk benar-benar meluncurkan lingkungan, pengguna harus memiliki izin untuk membuat AWS sumber daya yang memberi daya pada lingkungan juga. Sebagai contoh, kebijakan berikut memberikan akses ke set default sumber daya untuk lingkungan server web:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:*", "ecs:*", "elasticloadbalancing:*", "autoscaling:*", "cloudwatch:*", "s3:*", "sns:*", "cloudformation:*", "sqs:*" ], "Resource": "*" } ] }
Memungkinkan akses ke log Elastic Beanstalk yang disimpan di Amazon S3
Kebijakan dalam contoh berikut memungkinkan pengguna untuk menarik Elastic Beanstalk log, tahap mereka di Amazon S3, dan mengambil mereka.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:DeleteObject", "s3:GetObjectAcl", "s3:PutObjectAcl" ], "Effect": "Allow", "Resource": "arn:aws:s3:::elasticbeanstalk-*" } ] }
catatan
Untuk membatasi izin ini untuk hanya lintasan log, gunakan format sumber daya berikut.
"arn:aws:s3:::elasticbeanstalk-
us-east-2
-123456789012
/resources/environments/logs/*"
Mengaktifkan pengelolaan aplikasi Elastic Beanstalk tertentu
Kebijakan dalam contoh berikut memungkinkan pengguna untuk mengelola lingkungan dan sumber daya lainnya dalam satu aplikasi Elastic Beanstalk tertentu. Kebijakan tersebut menyangkal tindakan Elastic Beanstalk pada sumber daya aplikasi lain, dan juga menyangkal pembuatan dan penghapusan aplikasi Elastic Beanstalk.
catatan
Kebijakan ini tidak menolak akses ke sumber daya apa pun melalui layanan lain. Ini menunjukkan cara yang efektif untuk mendistribusikan tanggung jawab untuk mengelola aplikasi Elastic Beanstalk di antara pengguna yang berbeda, bukan sebagai cara untuk mengamankan sumber daya yang mendasarinya.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "elasticbeanstalk:CreateApplication", "elasticbeanstalk:DeleteApplication" ], "Resource": [ "*" ] }, { "Effect": "Deny", "Action": [ "elasticbeanstalk:CreateApplicationVersion", "elasticbeanstalk:CreateConfigurationTemplate", "elasticbeanstalk:CreateEnvironment", "elasticbeanstalk:DeleteApplicationVersion", "elasticbeanstalk:DeleteConfigurationTemplate", "elasticbeanstalk:DeleteEnvironmentConfiguration", "elasticbeanstalk:DescribeApplicationVersions", "elasticbeanstalk:DescribeConfigurationOptions", "elasticbeanstalk:DescribeConfigurationSettings", "elasticbeanstalk:DescribeEnvironmentResources", "elasticbeanstalk:DescribeEnvironments", "elasticbeanstalk:DescribeEvents", "elasticbeanstalk:DeleteEnvironmentConfiguration", "elasticbeanstalk:RebuildEnvironment", "elasticbeanstalk:RequestEnvironmentInfo", "elasticbeanstalk:RestartAppServer", "elasticbeanstalk:RetrieveEnvironmentInfo", "elasticbeanstalk:SwapEnvironmentCNAMEs", "elasticbeanstalk:TerminateEnvironment", "elasticbeanstalk:UpdateApplicationVersion", "elasticbeanstalk:UpdateConfigurationTemplate", "elasticbeanstalk:UpdateEnvironment", "elasticbeanstalk:RetrieveEnvironmentInfo", "elasticbeanstalk:ValidateConfigurationSettings" ], "Resource": [ "*" ], "Condition": { "StringNotEquals": { "elasticbeanstalk:InApplication": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/myapplication" ] } } } ] }