Contoh kebijakan berbasis identitas App Runner - AWS App Runner

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

Contoh kebijakan berbasis identitas App Runner

Secara default, IAM pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi AWS App Runner sumber daya. Mereka juga tidak dapat melakukan tugas menggunakan AWS Management Console, AWS CLI, atau AWS API. IAMAdministrator harus membuat IAM kebijakan yang memberikan izin kepada pengguna dan peran untuk melakukan API operasi tertentu pada sumber daya tertentu yang mereka butuhkan. Administrator kemudian harus melampirkan kebijakan tersebut ke pengguna atau grup IAM yang memerlukan izin tersebut.

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

Untuk topik keamanan App Runner lainnya, lihatKeamanan di App Runner.

Praktik terbaik kebijakan

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus sumber daya App Runner 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 terkelola AWS pelanggan yang spesifik untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat kebijakan AWSAWS terkelola atau kebijakan terkelola untuk fungsi pekerjaan di Panduan IAM Pengguna.

  • Menerapkan izin hak istimewa paling sedikit — Saat Anda menetapkan izin dengan IAM kebijakan, berikan hanya 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 penggunaan IAM untuk menerapkan izin, lihat Kebijakan dan izin IAM di IAM Panduan Pengguna.

  • Gunakan ketentuan dalam IAM kebijakan untuk membatasi akses lebih lanjut — Anda dapat menambahkan kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Misalnya, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakanSSL. 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 IAM JSON kebijakan: Kondisi dalam Panduan IAM Pengguna.

  • Gunakan IAM Access Analyzer untuk memvalidasi IAM kebijakan Anda guna memastikan izin yang aman dan fungsional — IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa IAM kebijakan () 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 Memvalidasi kebijakan dengan IAM Access Analyzer di IAMPanduan Pengguna.

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

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

Kebijakan pengguna

Untuk mengakses konsol App Runner, IAM pengguna harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang sumber daya Pelari Aplikasi di situs Anda. Akun AWS Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tidak akan berfungsi seperti yang dimaksudkan untuk pengguna dengan kebijakan tersebut.

App Runner menyediakan dua kebijakan terkelola yang dapat Anda lampirkan ke pengguna.

  • AWSAppRunnerReadOnlyAccess— Memberikan izin untuk membuat daftar dan melihat detail tentang sumber daya Pelari Aplikasi.

  • AWSAppRunnerFullAccess— Memberikan izin untuk semua tindakan App Runner.

Untuk memastikan bahwa pengguna dapat menggunakan konsol App Runner, lampirkan, setidaknya, kebijakan AWSAppRunnerReadOnlyAccess terkelola ke pengguna. Sebagai gantinya, Anda dapat melampirkan kebijakan AWSAppRunnerFullAccess terkelola, atau menambahkan izin tambahan tertentu, untuk memungkinkan pengguna membuat, memodifikasi, dan menghapus sumber daya. Untuk informasi selengkapnya, lihat Menambahkan Izin ke Pengguna di Panduan IAM Pengguna.

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 cocok dengan API operasi yang ingin Anda izinkan untuk dilakukan pengguna.

Contoh berikut menunjukkan kebijakan pengguna kustom. Anda dapat menggunakannya sebagai titik awal untuk menentukan kebijakan pengguna kustom Anda sendiri. Salin contoh, dan atau hapus tindakan, cakup sumber daya, dan tambahkan kondisi.

Contoh: kebijakan pengguna manajemen konsol dan koneksi

Kebijakan contoh ini memungkinkan akses konsol dan memungkinkan pembuatan dan pengelolaan koneksi. Itu tidak mengizinkan pembuatan dan manajemen layanan App Runner. Hal ini dapat dilampirkan ke pengguna yang perannya adalah untuk mengelola akses layanan App Runner ke aset kode sumber.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "apprunner:List*", "apprunner:Describe*", "apprunner:CreateConnection", "apprunner:DeleteConnection" ], "Resource": "*" } ] }

Contoh: kebijakan pengguna yang menggunakan tombol kondisi

Contoh di bagian ini menunjukkan izin bersyarat yang bergantung pada beberapa properti sumber daya atau parameter tindakan.

Kebijakan contoh ini memungkinkan pembuatan layanan App Runner tetapi menyangkal menggunakan koneksi bernama. prod

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateAppRunnerServiceWithNonProdConnections", "Effect": "Allow", "Action": "apprunner:CreateService", "Resource": "*", "Condition": { "ArnNotLike": { "apprunner:ConnectionArn": "arn:aws:apprunner:*:*:connection/prod/*" } } } ] }

Kebijakan contoh ini memungkinkan memperbarui layanan App Runner yang diberi nama preprod hanya dengan konfigurasi penskalaan otomatis bernama. preprod

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUpdatePreProdAppRunnerServiceWithPreProdASConfig", "Effect": "Allow", "Action": "apprunner:UpdateService", "Resource": "arn:aws:apprunner:*:*:service/preprod/*", "Condition": { "ArnLike": { "apprunner:AutoScalingConfigurationArn": "arn:aws:apprunner:*:*:autoscalingconfiguration/preprod/*" } } } ] }

Mengontrol akses ke layanan App Runner berdasarkan tag

Anda dapat menggunakan kondisi dalam kebijakan berbasis identitas untuk mengontrol akses ke sumber daya App Runner berdasarkan tag. Contoh ini menunjukkan cara membuat kebijakan yang memungkinkan penghapusan layanan App Runner. Namun, izin diberikan hanya jika tanda layanan Owner memiliki nilai nama pengguna dari pengguna tersebut. Kebijakan ini juga memberi izin yang diperlukan untuk menyelesaikan tindakan ini pada konsol tersebut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListServicesInConsole", "Effect": "Allow", "Action": "apprunner:ListServices", "Resource": "*" }, { "Sid": "DeleteServiceIfOwner", "Effect": "Allow", "Action": "apprunner:DeleteService", "Resource": "arn:aws:apprunner:*:*:service/*", "Condition": { "StringEquals": {"apprunner:ResourceTag/Owner": "${aws:username}"} } } ] }

Anda dapat melampirkan kebijakan ini ke pengguna IAM di akun Anda. Jika pengguna bernama richard-roe mencoba menghapus layanan App Runner, layanan harus diberi tag Owner=richard-roe atau. owner=richard-roe Jika tidak, aksesnya akan ditolak. Kunci tanda syarat Owner cocok dengan Owner dan owner karena nama kunci syarat tidak terpengaruh huruf besar/kecil. Untuk informasi selengkapnya, lihat Elemen IAM JSON Kebijakan: Kondisi dalam Panduan IAM Pengguna.