Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan ketentuan kebijakan IAM untuk kontrol akses terperinci
Di Route 53, Anda dapat menentukan kondisi saat memberikan izin menggunakan kebijakan IAM (lihat). Kontrol akses Sebagai contoh, Anda dapat:
-
Berikan izin untuk mengizinkan akses ke satu set catatan sumber daya.
-
Berikan izin untuk memungkinkan pengguna mengakses semua kumpulan rekaman sumber daya dari jenis catatan DNS tertentu di zona yang dihosting, misalnya catatan A dan AAAA.
-
Berikan izin untuk memungkinkan pengguna mengakses kumpulan catatan sumber daya di mana namanya berisi string tertentu.
-
Berikan izin untuk mengizinkan pengguna hanya melakukan sebagian
CREATE | UPSERT | DELETE
tindakan di konsol Route 53, atau saat menggunakan API. ChangeResourceRecordSets -
Berikan izin untuk memungkinkan pengguna mengaitkan atau memisahkan zona host pribadi dari VPC tertentu.
-
Berikan izin untuk memungkinkan pengguna mencantumkan zona yang dihosting yang terkait dengan VPC tertentu.
-
Berikan izin untuk memungkinkan pengguna mengakses untuk membuat zona host pribadi baru dan mengaitkannya ke VPC tertentu.
-
Berikan izin untuk memungkinkan pengguna membuat atau menghapus otorisasi asosiasi VPC.
Anda juga dapat membuat izin yang menggabungkan izin granular apa pun.
Menormalkan nilai kunci kondisi Route 53
Nilai yang Anda masukkan untuk kondisi kebijakan harus diformat, atau dinormalisasi, sebagai berikut:
Untukroute53:ChangeResourceRecordSetsNormalizedRecordNames
:
-
Semua huruf harus huruf kecil.
-
Nama DNS harus tanpa trailing dot.
-
Karakter selain a—z, 0-9, - (tanda hubung), _ (garis bawah), dan. (periode, sebagai pembatas antara label) harus menggunakan kode escape dalam format\ kode oktal tiga digit. Misalnya,
\052
adalah kode oktal untuk karakter*.
Untukroute53:ChangeResourceRecordSetsActions
, nilainya dapat berupa salah satu dari yang berikut dan harus huruf besar:
-
CREATE
-
MENEGAKKAN
-
HAPUS
Untuk route53:ChangeResourceRecordSetsRecordTypes
:
-
Nilai harus dalam huruf besar, dan dapat berupa salah satu jenis catatan DNS yang didukung Route 53. Untuk informasi selengkapnya, lihat Tipe data DNS yang didukung.
Untukroute53:VPCs
:
-
Nilai harus dalam format
VPCId=<vpc-id>,VPCRegion=<region>
. -
Nilai
<vpc-id>
dan<region>
harus dalam huruf kecil, sepertiVPCId=vpc-123abc
dan.VPCRegion=us-east-1
-
Kunci konteks dan nilai peka huruf besar/kecil.
penting
Agar izin Anda mengizinkan atau membatasi tindakan sesuai keinginan, Anda harus mengikuti konvensi ini. Hanya VPCId
dan VPCRegion
elemen yang diterima oleh kunci kondisi ini, AWS sumber daya lainnya, seperti Akun AWS, tidak didukung.
Anda dapat menggunakan Access Analyzer atau Policy Simulator di Panduan Pengguna IAM untuk memvalidasi bahwa kebijakan Anda memberikan atau membatasi izin seperti yang diharapkan. Anda juga dapat memvalidasi izin dengan menerapkan kebijakan IAM ke pengguna pengujian atau peran untuk menjalankan operasi Route 53.
Menentukan kondisi: menggunakan tombol kondisi
AWS menyediakan satu set kunci kondisi yang telah ditentukan (AWS-wide condition keys) untuk semua AWS layanan yang mendukung IAM untuk kontrol akses. Misalnya, Anda dapat menggunakan kunci kondisi aws:SourceIp
untuk memeriksa alamat IP pemohon sebelum mengizinkan tindakan yang akan dilakukan. Untuk informasi selengkapnya dan daftar tombol AWS-wide, lihat Kunci yang Tersedia untuk Ketentuan di Panduan Pengguna IAM.
catatan
Route 53 tidak mendukung kunci kondisi berbasis tag.
Tabel berikut menunjukkan kunci kondisi khusus layanan Route 53 yang berlaku untuk Route 53.
Kunci Kondisi Rute 53 | Operasi API | Tipe nilai | Deskripsi |
---|---|---|---|
route53:ChangeResourceRecordSetsNormalizedRecordNames |
Multi-nilai |
Merupakan daftar nama catatan DNS dalam permintaan. ChangeResourceRecordSets Untuk mendapatkan perilaku yang diharapkan, nama DNS dalam kebijakan IAM harus dinormalisasi sebagai berikut:
|
|
route53:ChangeResourceRecordSetsRecordTypes |
Multi-nilai |
Merupakan daftar jenis catatan DNS dalam permintaan.
|
|
route53:ChangeResourceRecordSetsActions |
Multi-nilai |
Merupakan daftar tindakan dalam permintaan
|
|
route53:VPCs |
Multi-nilai |
Merupakan daftar VPCs dalam permintaanAssociateVPCWithHostedZone ,,DisassociateVPCFromHostedZone , ListHostedZonesByVPC CreateHostedZone ,CreateVPCAssociationAuthorization , danDeleteVPCAssociationAuthorization , dalam format "VPCId=<vpc-id>, VPCRegion = <region> |
Contoh kebijakan: Menggunakan kondisi untuk akses berbutir halus
Setiap contoh di bagian ini menetapkan klausa Efek ke Izinkan dan hanya menentukan tindakan, sumber daya, dan parameter yang diizinkan. Akses hanya diizinkan untuk apa yang tercantum secara eksplisit dalam kebijakan IAM.
Dalam beberapa kasus, dimungkinkan untuk menulis ulang kebijakan ini sehingga berbasis penolakan (yaitu, menyetel klausa Efek ke Deny dan membalikkan semua logika dalam kebijakan). Namun, kami menyarankan agar Anda menghindari penggunaan kebijakan berbasis penolakan karena sulit untuk ditulis dengan benar, dibandingkan dengan kebijakan berbasis izin. Hal ini terutama berlaku untuk Route 53 karena normalisasi teks yang diperlukan.
Berikan izin yang membatasi akses ke catatan DNS dengan nama tertentu
Kebijakan izin berikut memberikan izin yang mengizinkan ChangeResourceRecordSets
tindakan di Zona Hosted Z12345 untuk example.com dan marketing.example.com. Ini menggunakan tombol route53:ChangeResourceRecordSetsNormalizedRecordNames
kondisi untuk membatasi tindakan pengguna hanya pada catatan yang cocok dengan nama yang ditentukan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "route53:ChangeResourceRecordSets", "Resource": "arn:aws:route53:::hostedzone/Z11111112222222333333", "Condition": { "ForAllValues:StringEquals":{ "route53:ChangeResourceRecordSetsNormalizedRecordNames": ["example.com", "marketing.example.com"] } } } ] }
ForAllValues:StringEquals
adalah operator kondisi IAM yang berlaku untuk kunci multi-nilai. Kondisi dalam kebijakan di atas akan memungkinkan operasi hanya ketika semua perubahan ChangeResourceRecordSets
memiliki nama DNS example.com. Untuk informasi selengkapnya, lihat operator kondisi IAM dan kondisi IAM dengan beberapa kunci atau nilai dalam Panduan Pengguna IAM.
Untuk menerapkan izin yang cocok dengan nama dengan sufiks tertentu, Anda dapat menggunakan wildcard IAM (*) dalam kebijakan dengan operator kondisi atau. StringLike
StringNotLike
Kebijakan berikut akan memungkinkan operasi ketika semua perubahan dalam ChangeResourceRecordSets
operasi memiliki nama DNS yang diakhiri dengan “-beta.example.com”.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "route53:ChangeResourceRecordSets", "Resource": "arn:aws:route53:::hostedzone/Z11111112222222333333", "Condition": { "ForAllValues:StringLike":{ "route53:ChangeResourceRecordSetsNormalizedRecordNames": ["*-beta.example.com"] } } } ] }
catatan
Wildcard IAM tidak sama dengan wildcard nama domain. Lihat contoh berikut untuk cara menggunakan wildcard dengan nama domain.
Berikan izin yang membatasi akses ke catatan DNS yang cocok dengan nama domain yang berisi wildcard
Kebijakan izin berikut memberikan izin yang mengizinkan ChangeResourceRecordSets
tindakan di Zona Dihosting Z12345 untuk example.com. Ini menggunakan kunci route53:ChangeResourceRecordSetsNormalizedRecordNames
kondisi untuk membatasi tindakan pengguna hanya untuk catatan yang cocok*.example.com.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "route53:ChangeResourceRecordSets", "Resource": "arn:aws:route53:::hostedzone/Z11111112222222333333", "Condition": { "ForAllValues:StringEquals":{ "route53:ChangeResourceRecordSetsNormalizedRecordNames": ["\\052.example.com"] } } } ] }
\052
adalah kode oktal untuk karakter* dalam nama DNS, dan \
in diloloskan \\
untuk mengikuti \052
sintaks JSON.
Berikan izin yang membatasi akses ke catatan DNS tertentu
Kebijakan izin berikut memberikan izin yang mengizinkan ChangeResourceRecordSets
tindakan di Zona Dihosting Z12345 untuk example.com. Ini menggunakan kombinasi tiga tombol kondisi untuk membatasi tindakan pengguna untuk memungkinkan hanya membuat atau mengedit catatan DNS dengan nama dan jenis DNS tertentu.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "route53:ChangeResourceRecordSets", "Resource": "arn:aws:route53:::hostedzone/Z11111112222222333333", "Condition": { "ForAllValues:StringEquals":{ "route53:ChangeResourceRecordSetsNormalizedRecordNames": ["example.com"], "route53:ChangeResourceRecordSetsRecordTypes": ["MX"], "route53:ChangeResourceRecordSetsActions": ["CREATE", "UPSERT"] } } } ] }
Berikan izin yang membatasi akses untuk membuat dan mengedit hanya jenis catatan DNS yang ditentukan
Kebijakan izin berikut memberikan izin yang mengizinkan ChangeResourceRecordSets
tindakan di Zona Dihosting Z12345 untuk example.com. Ini menggunakan tombol route53:ChangeResourceRecordSetsRecordTypes
kondisi untuk membatasi tindakan pengguna hanya pada catatan yang cocok dengan jenis yang ditentukan (A dan AAAA).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "route53:ChangeResourceRecordSets", "Resource": "arn:aws:route53:::hostedzone/Z11111112222222333333", "Condition": { "ForAllValues:StringEquals":{ "route53:ChangeResourceRecordSetsRecordTypes": ["A", "AAAA"] } } } ] }
Berikan izin yang menentukan VPC tempat prinsipal IAM dapat beroperasi
Kebijakan izin berikut memberikan izin yang mengizinkanAssociateVPCWithHostedZone
,,,,, DisassociateVPCFromHostedZone
ListHostedZonesByVPC
CreateHostedZone
CreateVPCAssociationAuthorization
, dan DeleteVPCAssociationAuthorization
tindakan pada VPC yang ditentukan oleh vpc-id.
penting
Nilai kondisi harus dalam formatVPCId=<vpc-id>,VPCRegion=<region>
. Jika Anda menentukan VPC ARN dalam nilai kondisi, kunci kondisi tidak akan berlaku.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "route53:*" ], "Resource": [ "*" ], "Condition": { "ForAllValues:StringLike": { "route53:VPCs": [ "VPCId=<vpc-id>,VPCRegion=<region>" ] } } }, { "Sid": "Statement2", "Effect": "Allow", "Action": "ec2:DescribeVpcs", "Resource": "*" } ] }