Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh kebijakan IAM untuk Amazon EBS
Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi sumber daya Amazon EBS. 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.
Topik
Praktik terbaik kebijakan
Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus sumber daya Amazon EBS 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 dengan 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 Amankan akses API dengan MFA dalam Panduan Pengguna IAM.
Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat Praktik terbaik keamanan di IAM dalam Panduan Pengguna IAM.
Izinkan pengguna menggunakan konsol Amazon EBS
Untuk mengakses konsol Amazon Elastic Block Store, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang sumber daya Amazon EBS 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 konsol Amazon EBS, lampirkan juga Amazon EBS
atau kebijakan ConsoleAccess
AWS terkelola ke entitas. Untuk informasi selengkapnya, lihat Menambah izin untuk pengguna dalam Panduan Pengguna IAM.ReadOnly
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": "*" } ] }
Memungkinkan pengguna untuk bekerja dengan volume
Contoh
Contoh: Melampirkan dan melepaskan lampiran volume
Ketika tindakan API memerlukan pemerintah untuk menentukan beberapa sumber daya, Anda harus membuat pernyataan kebijakan yang memungkinkan para pengguna mengakses semua sumber daya yang diperlukan. Jika Anda harus menggunakan elemen Condition
dengan satu atau beberapa sumber daya ini, maka Anda harus membuat beberapa pernyataan seperti yang ditunjukkan dalam contoh berikut ini.
Kebijakan berikut memungkinkan pengguna untuk melampirkan volume dengan tag "volume_user
= iam-user-name" ke instance dengan tag "department=dev
“, dan untuk melepaskan volume tersebut dari instance tersebut. Jika Anda melampirkan kebijakan ini ke grup IAM, variabel kebijakan aws:username
akan memberikan izin kepada setiap pengguna yang ada dalam grup untuk melampirkan atau melepaskan volume dari instans dengan nama tanda volume_user
yang menjadikan nama pengguna IAM-nya sebagai nilai.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AttachVolume", "ec2:DetachVolume" ], "Resource": "arn:aws:ec2:us-east-1:
account-id
:instance/*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "dev" } } }, { "Effect": "Allow", "Action": [ "ec2:AttachVolume", "ec2:DetachVolume" ], "Resource": "arn:aws:ec2:us-east-1:account-id
:volume/*", "Condition": { "StringEquals": { "aws:ResourceTag/volume_user": "${aws:username}" } } } ] }
Contoh: Membuat volume
Kebijakan berikut memungkinkan pengguna untuk menggunakan tindakan API CreateVolume. Pengguna diperbolehkan untuk membuat volume hanya jika volume tersebut dienkripsi dan hanya jika ukuran volume kurang dari 20 GiB.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateVolume" ], "Resource": "arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition":{ "NumericLessThan": { "ec2:VolumeSize" : "20" }, "Bool":{ "ec2:Encrypted" : "true" } } } ] }
Contoh: Membuat volume dengan tanda
Kebijakan berikut mencakup kunci syarat aws:RequestTag
yang mengharuskan para pengguna untuk menandai setiap volume yang mereka buat dengan tanda costcenter=115
dan stack=prod
. Jika pengguna tidak meneruskan tanda tertentu ini, atau jika mereka tidak menentukan tanda sama sekali, maka permintaan itu akan gagal.
Untuk tindakan-tindakan yang digunakan untuk membuat sumber daya yang menerapkan tanda, para pengguna juga harus memiliki izin untuk menggunakan tindakan CreateTags
. Pernyataan kedua menggunakan kunci syarat ec2:CreateAction
untuk memungkinkan para pengguna membuat tanda hanya dalam konteks CreateVolume
. Para pengguna tidak dapat menandai volume yang ada atau sumber daya lainnya.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateTaggedVolumes", "Effect": "Allow", "Action": "ec2:CreateVolume", "Resource": "arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition": { "StringEquals": { "aws:RequestTag/costcenter": "115", "aws:RequestTag/stack": "prod" } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:us-east-1:account-id
:volume/*", "Condition": { "StringEquals": { "ec2:CreateAction" : "CreateVolume" } } } ] }
Kebijakan berikut memungkinkan para pengguna untuk membuat volume tanpa harus menentukan tanda. Tindakan CreateTags
akan dievaluasi hanya jika tanda ditentukan dalam permintaan CreateVolume
. Jika para pengguna menentukan tanda, maka tanda tersebut harus purpose=test
. Tidak ada tanda lain yang diperbolehkan dalam permintaan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:CreateVolume", "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition": { "StringEquals": { "aws:RequestTag/purpose": "test", "ec2:CreateAction" : "CreateVolume" }, "ForAllValues:StringEquals": { "aws:TagKeys": "purpose" } } } ] }
Contoh: Bekerja dengan volume menggunakan EC2 konsol Amazon
Kebijakan berikut memberi pengguna izin untuk melihat dan membuat volume, serta melampirkan serta melepaskan volume ke instance tertentu menggunakan konsol Amazon. EC2
Para pengguna dapat melampirkan volume apa pun ke instans yang memiliki tanda "purpose=test
" dan juga melepaskan volume yang dilampirkan dari instans tersebut. Untuk melampirkan volume menggunakan EC2 konsol Amazon, akan sangat membantu bagi pengguna untuk memiliki izin untuk menggunakan ec2:DescribeInstances
tindakan, karena ini memungkinkan mereka untuk memilih instance dari daftar yang telah diisi sebelumnya di kotak dialog Lampirkan Volume. Akan tetapi, hal ini juga akan memungkinkan para pengguna untuk menampilkan semua instans dalam halaman Instans dalam konsol tersebut, sehingga Anda dapat menghilangkan tindakan ini.
Dalam pernyataan pertama, tindakan ec2:DescribeAvailabilityZones
diperlukan untuk memastikan bahwa seorang pengguna dapat memilih Zona Ketersediaan saat membuat volume.
Para pengguna tidak dapat memberikan tanda pada volume-volume yang mereka buat (baik ketika volume sedang dibuat maupun setelah volume dibuat).
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVolumes", "ec2:DescribeAvailabilityZones", "ec2:CreateVolume", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:AttachVolume", "ec2:DetachVolume" ], "Resource": "arn:aws:ec2:region:111122223333:instance/*", "Condition": { "StringEquals": { "aws:ResourceTag/purpose": "test" } } }, { "Effect": "Allow", "Action": [ "ec2:AttachVolume", "ec2:DetachVolume" ], "Resource": "arn:aws:ec2:region:111122223333:volume/*" } ] }
Memungkinkan pengguna untuk bekerja dengan snapshot
Berikut ini adalah contoh kebijakan untuk keduanya CreateSnapshot
(point-in-timesnapshot dari volume EBS) dan CreateSnapshots
(snapshot multi-volume).
Contoh
Contoh: Membuat snapshot
Kebijakan berikut memungkinkan pelanggan untuk menggunakan tindakan API CreateSnapshot. Pelanggan dapat membuat snapshot hanya jika volume sudah dienkripsi dan hanya jika ukuran volume kurang dari 20 GiB.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1::snapshot/*" }, { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition":{ "NumericLessThan":{ "ec2:VolumeSize":"20" }, "Bool":{ "ec2:Encrypted":"true" } } } ] }
Contoh: Membuat beberapa snapshot
Kebijakan berikut memungkinkan pelanggan untuk menggunakan tindakan API CreateSnapshots. Pelanggan dapat membuat snapshot hanya jika semua volume pada instance adalah tipe GP2.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":[ "arn:aws:ec2:us-east-1::snapshot/*", "arn:aws:ec2:*:*:instance/*" ] }, { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1:*:volume/*", "Condition":{ "StringLikeIfExists":{ "ec2:VolumeType":"gp2" } } } ] }
Contoh: Membuat snapshot dengan tanda
Kebijakan berikut mencakup kunci syarat aws:RequestTag
yang mengharuskan pelanggan menerapkan tanda costcenter=115
dan stack=prod
ke setiap snapshot baru. Jika pengguna tidak meneruskan tanda tertentu ini, atau jika mereka tidak menentukan tanda sama sekali, maka permintaan itu akan gagal.
Untuk tindakan-tindakan yang digunakan untuk membuat sumber daya yang menerapkan tanda, pelanggan juga harus memiliki izin untuk menggunakan tindakan CreateTags
. Pernyataan ketiga menggunakan kunci syarat ec2:CreateAction
untuk memungkinkan para pelanggan membuat tanda hanya dalam konteks CreateSnapshot
. Para pelanggan tidak dapat menandai volume yang ada atau sumber daya lainnya.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1:
account-id
:volume/*" }, { "Sid":"AllowCreateTaggedSnapshots", "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/costcenter":"115", "aws:RequestTag/stack":"prod" } } }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "ec2:CreateAction":"CreateSnapshot" } } } ] }
Contoh: Membuat snapshot multivolume dengan tanda
Kebijakan berikut mencakup kunci syarat aws:RequestTag
yang mengharuskan pelanggan menerapkan tanda costcenter=115
dan stack=prod
saat membuat set snapshot multivolume. Jika pengguna tidak meneruskan tanda tertentu ini, atau jika mereka tidak menentukan tanda sama sekali, maka permintaan itu akan gagal.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":[ "arn:aws:ec2:us-east-1::snapshot/*", "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*" ] }, { "Sid":"AllowCreateTaggedSnapshots", "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/costcenter":"115", "aws:RequestTag/stack":"prod" } } }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "ec2:CreateAction":"CreateSnapshots" } } } ] }
Kebijakan berikut memungkinkan para pelanggan untuk membuat snapshot tanpa harus menentukan tanda. Tindakan CreateTags
akan dievaluasi hanya jika tanda ditentukan dalam permintaan CreateSnapshot
atau CreateSnapshots
. Tanda dapat dihilangkan dalam permintaan. Jika tanda ditentukan, maka tanda tersebut harus purpose=test
. Tidak ada tanda lain yang diperbolehkan dalam permintaan.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"*" }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/purpose":"test", "ec2:CreateAction":"CreateSnapshot" }, "ForAllValues:StringEquals":{ "aws:TagKeys":"purpose" } } } ] }
Kebijakan berikut memungkinkan pelanggan untuk membuat set snapshot multivolume tanpa perlu menentukan tanda. Tindakan CreateTags
akan dievaluasi hanya jika tanda ditentukan dalam permintaan CreateSnapshot
atau CreateSnapshots
. Tanda dapat dihilangkan dalam permintaan. Jika tanda ditentukan, maka tanda tersebut harus purpose=test
. Tidak ada tanda lain yang diperbolehkan dalam permintaan.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"*" }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/purpose":"test", "ec2:CreateAction":"CreateSnapshots" }, "ForAllValues:StringEquals":{ "aws:TagKeys":"purpose" } } } ] }
Kebijakan berikut mengizinkan snapshot untuk dibuat hanya jika volume sumber diberi tanda dengan User:username
untuk pelanggan, dan snapshot itu sendiri diberi tanda dengan Environment:Dev
dan User:username
. Pelanggan dapat menambahkan tanda tambahan untuk snapshot tersebut.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition":{ "StringEquals":{ "aws:ResourceTag/User":"${aws:username}" } } }, { "Effect":"Allow", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/Environment":"Dev", "aws:RequestTag/User":"${aws:username}" } } }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*" } ] }
Kebijakan untuk CreateSnapshots
berikut mengizinkan snapshot untuk dibuat hanya jika volume sumber diberi tanda dengan User:username
untuk pelanggan, dan snapshot itu sendiri diberi tanda dengan Environment:Dev
dan User:username
.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1:*:instance/*", }, { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1:
account-id
:volume/*", "Condition":{ "StringEquals":{ "aws:ResourceTag/User":"${aws:username}" } } }, { "Effect":"Allow", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:RequestTag/Environment":"Dev", "aws:RequestTag/User":"${aws:username}" } } }, { "Effect":"Allow", "Action":"ec2:CreateTags", "Resource":"arn:aws:ec2:us-east-1::snapshot/*" } ] }
Kebijakan berikut memungkinkan penghapusan snapshot hanya jika snapshot tersebut diberi tanda dengan Pengguna:username untuk pelanggan.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:DeleteSnapshot", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:ResourceTag/User":"${aws:username}" } } } ] }
Kebijakan berikut memungkinkan pelanggan untuk membuat snapshot tetapi menolak tindakan jika snapshot yang dibuat memiliki kunci tanda value=stack
.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":[ "ec2:CreateSnapshot", "ec2:CreateTags" ], "Resource":"*" }, { "Effect":"Deny", "Action":"ec2:CreateSnapshot", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "ForAnyValue:StringEquals":{ "aws:TagKeys":"stack" } } } ] }
Kebijakan berikut memungkinkan pelanggan untuk membuat beberapa snapshot tetapi menolak tindakan jika snapshot yang dibuat tersebut memiliki kunci tanda value=stack
.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":[ "ec2:CreateSnapshots", "ec2:CreateTags" ], "Resource":"*" }, { "Effect":"Deny", "Action":"ec2:CreateSnapshots", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "ForAnyValue:StringEquals":{ "aws:TagKeys":"stack" } } } ] }
Kebijakan berikut memungkinkan Anda untuk menggabungkan beberapa tindakan ke dalam satu kebijakan. Anda hanya dapat membuat snapshot (dalam konteks CreateSnapshots
) saat snapshot tersebut dibuat di Wilayah us-east-1
. Anda hanya dapat membuat beberapa snapshot (dalam konteks CreateSnapshots
) ketika snapshot-snapshot tersebut sedang dibuat di Wilayah us-east-1
dan ketika tipe instans-nya adalah t2*
.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":[ "ec2:CreateSnapshots", "ec2:CreateSnapshot", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:snapshot/*", "arn:aws:ec2:*:*:volume/*" ], "Condition":{ "StringEqualsIgnoreCase": { "ec2:Region": "us-east-1" }, "StringLikeIfExists": { "ec2:InstanceType": ["t2.*"] } } } ] }
Contoh: Menyalin beberapa snapshot
Izin tingkat sumber daya yang ditentukan untuk CopySnapshottindakan hanya berlaku untuk snapshot baru. izin tersebut tidak dapat ditentukan untuk snapshot sumber.
Kebijakan contoh berikut mengizinkan prinsipal utama untuk menyalin snapshot hanya jika snapshot baru dibuat dengan tanda kunci purpose
dan nilai tanda production
(purpose=production
).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCopySnapshotWithTags", "Effect": "Allow", "Action": "ec2:CopySnapshot", "Resource": "arn:aws:ec2:*:
account-id
:snapshot/*", "Condition": { "StringEquals": { "aws:RequestTag/purpose": "production" } } } ] }
Contoh: Memodifikasi pengaturan izin untuk snapshot
Kebijakan berikut memungkinkan modifikasi snapshot hanya jika snapshot ditandai denganUser:
, di mana nama username
username
pengguna AWS akun pelanggan. Permintaan akan gagal jika syarat ini tidak dipenuhi.
{ "Version":"2012-10-17", "Statement": [ { "Effect":"Allow", "Action":"ec2:ModifySnapshotAttribute", "Resource":"arn:aws:ec2:us-east-1::snapshot/*", "Condition":{ "StringEquals":{ "aws:ResourceTag/user-name":"${aws:
username
}" } } } ] }