Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan kebijakan (IAMkebijakan) berbasis identitas untuk Amazon ElastiCache
Topik ini memberikan contoh kebijakan berbasis identitas di mana administrator akun dapat melampirkan kebijakan izin ke IAM identitas (yaitu, pengguna, grup, dan peran).
penting
Kami menyarankan Anda terlebih dahulu membaca topik yang menjelaskan konsep dasar dan opsi untuk mengelola akses ke ElastiCache sumber daya Amazon. Untuk informasi selengkapnya, lihat Ikhtisar mengelola izin akses ke sumber daya Anda ElastiCache .
Bagian dalam topik ini membahas hal berikut:
Berikut ini menunjukkan contoh kebijakan izin saat menggunakan OSS Redis.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeReplicationGroups", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyReplicationGroup", "elasticache:ModifyCacheCluster" ], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
Berikut ini menunjukkan contoh kebijakan izin saat menggunakan Memcached.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyCacheCluster" ], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
Kebijakan tersebut memiliki dua pernyataan:
-
Pernyataan pertama memberikan izin untuk ElastiCache tindakan Amazon (
elasticache:Create*
,,elasticache:Describe*
)elasticache:Modify*
-
Pernyataan kedua memberikan izin untuk IAM action (
iam:PassRole
) pada nama IAM peran yang ditentukan di akhir nilaiResource
.
Kebijakan tidak menentukan elemen Principal
karena dalam kebijakan berbasis identitas, Anda tidak menentukan prinsipal 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.
Untuk tabel yang menunjukkan semua ElastiCache API tindakan Amazon dan sumber daya yang diterapkan, lihatElastiCache APIizin: Referensi tindakan, sumber daya, dan kondisi.
Contoh kebijakan yang dikelola pelanggan
Jika Anda tidak menggunakan kebijakan default dan memilih untuk menggunakan kebijakan yang dikelola kustom, pastikan salah satu dari dua hal berikut. Anda harus memiliki izin untuk memanggil iam:createServiceLinkedRole
(untuk informasi selengkapnya, lihat Contoh 4: Izinkan pengguna untuk menelepon IAM CreateServiceLinkedRole API). Atau Anda seharusnya membuat peran ElastiCache terkait layanan.
Jika digabungkan dengan izin minimum yang diperlukan untuk menggunakan ElastiCache konsol Amazon, kebijakan contoh di bagian ini memberikan izin tambahan. Contoh-contohnya juga relevan dengan AWS SDKs dan AWS CLI.
Untuk petunjuk cara menyiapkan IAM pengguna dan grup, lihat Membuat Grup IAM Pengguna dan Administrator Pertama Anda di Panduan IAM Pengguna.
penting
Selalu uji IAM kebijakan Anda secara menyeluruh sebelum menggunakannya dalam produksi. Beberapa ElastiCache tindakan yang tampak sederhana dapat memerlukan tindakan lain untuk mendukungnya saat Anda menggunakan ElastiCache konsol. Misalnya, elasticache:CreateCacheCluster
memberikan izin untuk membuat cluster ElastiCache cache. Namun, untuk melakukan operasi ini, ElastiCache konsol menggunakan sejumlah Describe
dan List
tindakan untuk mengisi daftar konsol.
Contoh
- Contoh 1: Izinkan pengguna akses hanya-baca ke sumber daya ElastiCache
- Contoh 2: Izinkan pengguna untuk melakukan tugas administrator ElastiCache sistem umum
- Contoh 3: Izinkan pengguna mengakses semua ElastiCache API tindakan
- Contoh 4: Izinkan pengguna untuk menelepon IAM CreateServiceLinkedRole API
- Contoh 5: Izinkan pengguna untuk terhubung ke cache tanpa server menggunakan otentikasi IAM
Contoh 1: Izinkan pengguna akses hanya-baca ke sumber daya ElastiCache
Kebijakan berikut memberikan ElastiCache tindakan izin yang memungkinkan pengguna untuk mencantumkan sumber daya. Biasanya, Anda melampirkan jenis kebijakan izin ini ke grup pengelola.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECReadOnly", "Effect":"Allow", "Action": [ "elasticache:Describe*", "elasticache:List*"], "Resource":"*" } ] }
Contoh 2: Izinkan pengguna untuk melakukan tugas administrator ElastiCache sistem umum
Tugas umum administrator sistem termasuk mengubah sumber daya. Administrator sistem mungkin juga ingin mendapatkan informasi tentang ElastiCache peristiwa tersebut. Kebijakan berikut memberikan izin pengguna untuk melakukan ElastiCache tindakan untuk tugas administrator sistem umum ini. Biasanya, Anda melampirkan jenis kebijakan izin ini ke grup administrator sistem.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowMutations", "Effect":"Allow", "Action":[ "elasticache:Modify*", "elasticache:Describe*", "elasticache:ResetCacheParameterGroup" ], "Resource":"*" } ] }
Contoh 3: Izinkan pengguna mengakses semua ElastiCache API tindakan
Kebijakan berikut memungkinkan pengguna untuk mengakses semua ElastiCache tindakan. Sebaiknya Anda memberikan jenis kebijakan izin ini hanya untuk pengguna administrator.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowAll", "Effect":"Allow", "Action":[ "elasticache:*" ], "Resource":"*" } ] }
Contoh 4: Izinkan pengguna untuk menelepon IAM CreateServiceLinkedRole API
Kebijakan berikut memungkinkan pengguna untuk memanggil IAM CreateServiceLinkedRole
API. Kami menyarankan Anda memberikan jenis kebijakan izin ini kepada pengguna yang memanggil operasi ElastiCache mutatif.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"elasticache.amazonaws.com" } } } ] }
Contoh 5: Izinkan pengguna untuk terhubung ke cache tanpa server menggunakan otentikasi IAM
Kebijakan berikut memungkinkan setiap pengguna untuk terhubung ke cache tanpa server menggunakan IAM otentikasi antara 2023-04-01 dan 2023-06-30.
{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:serverlesscache:*" ], "Condition": { "DateGreaterThan": {"aws:CurrentTime": "2023-04-01T00:00:00Z"}, "DateLessThan": {"aws:CurrentTime": "2023-06-30T23:59:59Z"} } }, { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:user:*" ] } ] }