Tag resource ECS dan gunakan kebijakan RAM untuk menerapkan kontrol akses berbasis kategori yang detail halus.
Mengapa menggunakan izin berbasis tag
Berbeda dengan kelompok sumber daya, tag memungkinkan pemberian beberapa label per resource sehingga Anda dapat mengklasifikasikan berdasarkan wilayah, departemen, lingkungan, atau dimensi lainnya.
Kebijakan RAM berbasis tag menawarkan tiga keunggulan:
-
Fine-grained control: Batasi cakupan izin hanya pada subset resource tanpa memperluas penugasan peran.
-
Fewer policies to maintain: Satu kebijakan bersyarat tag mencakup seluruh kelas resource, sehingga mengurangi jumlah kebijakan seiring pertumbuhan infrastruktur.
-
Atribut yang bermakna secara bisnis: Kunci dan nilai tag mencerminkan konvensi penamaan Anda—seperti nama proyek, pusat biaya, atau tahapan penerapan—sehingga kebijakan lebih mudah diaudit.
Praktik terbaik
Tag instans ECS yang memiliki fungsi bisnis yang sama, lalu referensikan tag tersebut dalam kondisi kebijakan RAM untuk menerapkan aturan akses.
Contoh berikut mencegah instans ECS yang ditandai sebagai database agar tidak diberi Alamat IP publik.
Langkah 1: Tag instans
Tambahkan tag ke instans ECS. Lihat Ikhtisar Tag.
Dalam contoh ini, tag-nya adalah function:database.
Langkah 2: Buat kebijakan RAM dengan kondisi tag
Buat kebijakan RAM berikut dan sambungkan ke Pengguna RAM atau peran target.
{
"Version": "1",
"Statement": [
{
"Effect": "Deny",
"Action": [
"ecs:ModifyInstanceNetworkSpec"
],
"Resource": "acs:ecs:*:*:instance/*",
"Condition": {
"StringEquals": {
"acs:ResourceTag/function:database": ["*"]
},
"Bool": {
"ecs:AssociatePublicIpAddress": ["true"]
}
}
}
]
}
Elemen utama kebijakan:
| Element | Value | Description |
|---|---|---|
Effect |
Deny |
Memblokir aksi ketika semua kondisi terpenuhi |
Action |
ecs:ModifyInstanceNetworkSpec |
Menargetkan operasi konfigurasi jaringan instans |
Resource |
acs:ecs:*:*:instance/* |
Berlaku untuk semua Instance ECS di seluruh wilayah dan akun |
acs:ResourceTag/function:database |
["*"] |
Mencocokkan instans yang memiliki tag function:database |
ecs:AssociatePublicIpAddress |
["true"] |
Mencocokkan permintaan yang menetapkan Alamat IP publik |
Hasil
Setelah diaktifkan, setiap permintaan ModifyInstanceNetworkSpec yang menetapkan Alamat IP publik ke instans yang ditag function:database akan ditolak. Instans yang tidak ditag tidak terpengaruh.