Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh kebijakan berbasis identitas untuk AWS Cloud Map
Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi AWS Cloud Map 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 pada sumber daya yang mereka butuhkan, IAM administrator dapat membuat IAM kebijakan. Administrator kemudian dapat menambahkan IAM kebijakan ke peran, dan pengguna dapat mengambil peran.
Untuk mempelajari cara membuat kebijakan IAM berbasis identitas menggunakan contoh dokumen kebijakan ini, lihat Membuat JSON IAM kebijakan (konsol) di Panduan Pengguna. IAM
Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh AWS Cloud Map, termasuk format ARNs untuk setiap jenis sumber daya, lihat Kunci tindakan, sumber daya, dan kondisi untuk AWS Cloud Map dalam Referensi Otorisasi Layanan.
Topik
- Praktik terbaik kebijakan
- Menggunakan konsol AWS Cloud Map
- AWS Cloud Map contoh akses konsol
- Memungkinkan AWS Cloud Map pengguna untuk melihat izin mereka sendiri
- Izinkan akses baca ke semua AWS Cloud Map sumber daya
- AWS Cloud Map contoh layanan contoh
- Buat contoh AWS Cloud Map layanan
- Buat AWS Cloud Map contoh ruang nama
Praktik terbaik kebijakan
Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus AWS Cloud Map 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 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 IAMAccess 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.
Menggunakan konsol AWS Cloud Map
Untuk mengakses AWS Cloud Map konsol, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang AWS Cloud Map 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 cocok dengan API operasi yang mereka coba lakukan.
Untuk memastikan bahwa pengguna dan peran masih dapat menggunakan AWS Cloud Map konsol, lampirkan juga kebijakan AWS Cloud Map
atau ConsoleAccess
AWS terkelola ke entitas. Untuk informasi selengkapnya, lihat Menambahkan izin ke pengguna di Panduan IAM Pengguna.ReadOnly
AWS Cloud Map contoh akses konsol
Untuk memberikan akses penuh ke AWS Cloud Map konsol, Anda memberikan izin dalam kebijakan izin berikut:
{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicediscovery:*", "route53:GetHostedZone", "route53:ListHostedZonesByName", "route53:CreateHostedZone", "route53:DeleteHostedZone", "route53:ChangeResourceRecordSets", "route53:CreateHealthCheck", "route53:GetHealthCheck", "route53:DeleteHealthCheck", "route53:UpdateHealthCheck", "ec2:DescribeInstances", "ec2:DescribeVpcs", "ec2:DescribeRegions" ], "Resource":"*" } ] }
Inilah mengapa izin diperlukan:
servicediscovery:*
-
Memungkinkan Anda melakukan semua AWS Cloud Map tindakan.
route53:CreateHostedZone
,route53:GetHostedZone
,route53:ListHostedZonesByName
,route53:DeleteHostedZone
-
Memungkinkan AWS Cloud Map mengelola zona yang dihosting saat Anda membuat dan menghapus DNS ruang nama publik dan pribadi.
route53:CreateHealthCheck
,route53:GetHealthCheck
,route53:DeleteHealthCheck
,route53:UpdateHealthCheck
-
Memungkinkan AWS Cloud Map mengelola pemeriksaan kesehatan saat Anda menyertakan pemeriksaan kesehatan Amazon Route 53 saat Anda membuat layanan.
ec2:DescribeVpcs
danec2:DescribeRegions
-
Biarkan AWS Cloud Map mengelola zona host pribadi.
Memungkinkan AWS Cloud Map pengguna untuk melihat izin mereka sendiri
Contoh ini menunjukkan cara Anda membuat kebijakan yang memungkinkan IAM pengguna melihat kebijakan sebaris dan terkelola yang dilampirkan pada identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau secara terprogram menggunakan atau. AWS CLI AWS API
{ "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": "*" } ] }
Izinkan akses baca ke semua AWS Cloud Map sumber daya
Kebijakan izin berikut memberi akses hanya-baca pengguna ke semua AWS Cloud Map Sumber Daya:
{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicediscovery:Get*", "servicediscovery:List*", "servicediscovery:DiscoverInstances" ], "Resource":"*" } ] }
AWS Cloud Map contoh layanan contoh
Contoh berikut menunjukkan kebijakan izin yang memberikan izin kepada pengguna untuk mendaftar, membatalkan pendaftaran, dan menemukan instance layanan. Sid
, atau ID pernyataan, adalah opsional:
{ "Version": "2012-10-17", "Statement": [ { "Sid" : "AllowInstancePermissions", "Effect": "Allow", "Action": [ "servicediscovery:RegisterInstance", "servicediscovery:DeregisterInstance", "servicediscovery:DiscoverInstances", "servicediscovery:Get*", "servicediscovery:List*", "route53:GetHostedZone", "route53:ListHostedZonesByName", "route53:ChangeResourceRecordSets", "route53:CreateHealthCheck", "route53:GetHealthCheck", "route53:DeleteHealthCheck", "route53:UpdateHealthCheck", "ec2:DescribeInstances" ], "Resource": "*" } ] }
Kebijakan memberikan izin untuk tindakan yang diperlukan untuk daftar dan mengelola instans layanan. Izin Route 53 diperlukan jika Anda menggunakan DNS ruang nama publik atau pribadi karena AWS Cloud Map membuat, memperbarui, dan menghapus catatan Route 53 dan pemeriksaan kesehatan saat Anda mendaftar dan membatalkan pendaftaran instance. Karakter wildcard (*) dalam Resource
memberikan akses ke semua AWS Cloud Map instance, dan catatan Route 53 serta pemeriksaan kesehatan yang dimiliki oleh akun saat ini. AWS
Buat contoh AWS Cloud Map layanan
Saat menambahkan kebijakan izin untuk mengizinkan IAM identitas membuat AWS Cloud Map layanan, Anda harus menentukan Amazon Resource Name (ARN) dari AWS Cloud Map namespace dan layanan di bidang sumber daya. ARNTermasuk Region, ID akun, dan ID namespace. Karena Anda belum tahu apa ID layanan layanan tersebut, kami sarankan menggunakan wildcard. Berikut ini adalah contoh cuplikan kebijakan.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicediscovery:CreateService" ], "Resource":[ "arn:aws:servicediscovery:
region
:111122223333
:namespace/ns-p32123EXAMPLE
", "arn:aws:servicediscovery:region
:111122223333
:service/*" ] } ] }
Buat AWS Cloud Map contoh ruang nama
Kebijakan izin berikut memungkinkan pengguna membuat semua jenis ruang AWS Cloud Map nama:
{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "servicediscovery:CreateHttpNamespace", "servicediscovery:CreatePrivateDnsNamespace", "servicediscovery:CreatePublicDnsNamespace", "route53:CreateHostedZone", "route53:GetHostedZone", "route53:ListHostedZonesByName", "ec2:DescribeVpcs", "ec2:DescribeRegions" ], "Resource":"*" } ] }