- Amazon Aurora

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

Bagian berikut menyajikan contoh kebijakan izin yang memberikan dan membatasi akses ke sumber daya:

Izinkan pengguna untuk membuat instans DB di akun AWS

Berikut ini adalah contoh kebijakan yang memungkinkan akun dengan ID 123456789012 untuk membuat instans DB untuk AWS akun Anda. Kebijakan ini mewajibkan nama instans DB baru dimulai dengan test. Instans DB baru juga harus menggunakan mesin SQL database Saya dan kelas instans db.t2.micro DB. Selain itu, instans DB baru harus menggunakan grup opsi dan grup parameter DB yang dimulai dengan default, dan harus menggunakan grup subnet default.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:og:default*", "arn:aws:rds:*:123456789012:pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ], "Condition": { "StringEquals": { "rds:DatabaseEngine": "mysql", "rds:DatabaseClass": "db.t2.micro" } } } ] }

Kebijakan ini mencakup pernyataan tunggal yang menentukan izin berikut untuk pengguna:

  • Kebijakan ini memungkinkan akun untuk membuat instans DB menggunakan reateDBInstance API operasi C (ini juga berlaku untuk create-db-instance AWS CLI perintah dan AWS Management Console).

  • Elemen Resource menentukan bahwa pengguna dapat melakukan tindakan pada atau dengan sumber daya. Anda menentukan sumber daya menggunakan Amazon Resources Name (ARN). Ini ARN termasuk nama layanan yang dimiliki sumber daya (rds), AWS Wilayah (*menunjukkan wilayah mana pun dalam contoh ini), nomor AWS akun (123456789012adalah nomor akun dalam contoh ini), dan jenis sumber daya. Untuk informasi selengkapnya tentang membuatARNs, lihatNama Sumber Daya Amazon (ARNs) di Amazon RDS.

    Elemen Resource dalam contoh menentukan batasan kebijakan berikut pada sumber daya untuk pengguna:

    • ID instans DB untuk instans DB baru harus dimulai dengan test (misalnya, testCustomerData1, test-region2-data).

    • Grup opsi untuk instans DB baru harus dimulai dengan default.

    • Grup parameter DB opsi untuk instans DB baru harus dimulai dengan default.

    • Grup subnet untuk instans DB baru harus berupa grup subnet default.

  • ConditionElemen menentukan bahwa mesin DB harus My SQL dan kelas instans DB harusdb.t2.micro. Elemen Condition menentukan kondisi ketika kebijakan harus diberlakukan. Anda dapat menambahkan izin atau batasan tambahan dengan menggunakan elemen Condition. Untuk informasi selengkapnya tentang cara menentukan kondisi, lihat Kunci kondisi kebijakan untuk Aurora. Contoh ini menetapkan kondisi rds:DatabaseEngine dan rds:DatabaseClass. Untuk informasi tentang nilai kondisi yang valid untukrds:DatabaseEngine, lihat daftar di bawah Engine parameter di C reateDBInstance. Untuk informasi tentang nilai kondisi yang valid untuk rds:DatabaseClass, Lihat Mesin DB yang didukung untuk kelas instans DB.

Kebijakan ini tidak menentukan elemen Principal karena dalam kebijakan berbasis identitas, Anda tidak menentukan pengguna utama yang mendapatkan izin. Saat Anda melampirkan kebijakan kepada pengguna, pengguna tersebut menjadi prinsipal secara implisit. Saat Anda melampirkan kebijakan izin ke IAM peran, prinsipal yang diidentifikasi dalam kebijakan kepercayaan peran akan mendapatkan izin tersebut.

Untuk melihat daftar tindakan Aurora, lihat Tindakan yang Ditentukan oleh Amazon RDS di Referensi Otorisasi Layanan.

Izinkan pengguna untuk melakukan tindakan mendeskripsikan apa pun pada RDS sumber daya apa pun

Kebijakan izin berikut memberikan izin kepada pengguna untuk menjalankan semua tindakan yang dimulai dengan Describe. Tindakan ini menunjukkan informasi tentang RDS sumber daya, seperti instans DB. Karakter wildcard (*) dalam Resource elemen menunjukkan bahwa tindakan diizinkan untuk semua sumber daya Aurora yang dimiliki oleh akun.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRDSDescribe", "Effect": "Allow", "Action": "rds:Describe*", "Resource": "*" } ] }

Mengizinkan pengguna membuat instans DB yang menggunakan grup parameter DB dan grup subnet yang telah ditentukan

Kebijakan izin berikut memberikan izin untuk hanya memperbolehkan pengguna membuat instans DB yang harus menggunakan grup parameter DB mydbpg dan grup subnet DB mydbsubnetgroup.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": [ "arn:aws:rds:*:*:pg:mydbpg", "arn:aws:rds:*:*:subgrp:mydbsubnetgroup" ] } ] }

Berikan izin untuk tindakan atas suatu sumber daya dengan tag tertentu dengan dua nilai yang berbeda

Anda dapat menggunakan ketentuan dalam kebijakan berbasis identitas untuk mengontrol akses ke sumber daya Amazon berdasarkan tag. Kebijakan berikut memungkinkan izin untuk melakukan CreateDBSnapshot API operasi pada instans DB dengan stage tag disetel ke development atautest.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowAnySnapshotName", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:snapshot:*" }, { "Sid":"AllowDevTestToCreateSnapshot", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

Kebijakan berikut memungkinkan izin untuk melakukan ModifyDBInstance API operasi pada instans DB dengan stage tag disetel ke development atautest.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowChangingParameterOptionSecurityGroups", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:pg:*", "arn:aws:rds:*:123456789012:secgrp:*", "arn:aws:rds:*:123456789012:og:*" ] }, { "Sid":"AllowDevTestToModifyInstance", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

Mencegah pengguna menghapus instans DB

Kebijakan izin berikut memberikan izin untuk mencegah pengguna menghapus instans DB tertentu. Misalnya, Anda mungkin ingin menolak kemampuan untuk menghapus instans DB produksi Anda kepada setiap pengguna yang bukan administrator.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyDelete1", "Effect": "Deny", "Action": "rds:DeleteDBInstance", "Resource": "arn:aws:rds:us-west-2:123456789012:db:my-mysql-instance" } ] }

Menolak semua akses ke sumber daya

Anda juga dapat secara eksplisit menolak akses ke sumber daya. Kebijakan penolakan lebih diutamakan daripada kebijakan yang diizinkan. Kebijakan berikut secara eksplisit menolak kemampuan pengguna untuk mengelola sumber daya:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "rds:*", "Resource": "arn:aws:rds:us-east-1:123456789012:db:mydb" } ] }