Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan kebijakan berbasis identitas (kebijakan IAM) untuk Amazon ElastiCache
Topik ini memberikan contoh kebijakan berbasis identitas di mana administrator akun dapat melampirkan kebijakan izin ke identitas IAM (yaitu, pengguna, grup, dan peran).
penting
Sebaiknya Anda terlebih dahulu membaca topik yang menjelaskan konsep dasar dan opsi untuk mengelola akses ke sumber daya Amazon ElastiCache. Untuk informasi selengkapnya, lihat Gambaran umum pengelolaan izin akses untuk sumber daya ElastiCache Anda.
Bagian dalam topik ini mencakup hal berikut:
Berikut adalah contoh kebijakan izin.
{ "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" } ] }
Kebijakan tersebut memiliki dua pernyataan:
-
Pernyataan pertama memberikan izin untuk tindakan Amazon ElastiCache (
elasticache:Create*
,elasticache:Describe*
,elasticache:Modify*
) -
Pernyataan kedua memberikan izin untuk tindakan IAM (
iam:PassRole
) pada nama peran IAM yang ditentukan pada akhir nilaiResource
.
Kebijakan tidak menentukan elemen Principal
karena dalam kebijakan berbasis identitas, Anda tidak menentukan pengguna utama yang mendapatkan izin. Saat Anda menyematkan kebijakan kepada pengguna, pengguna tersebut menjadi pengguna utama secara implisit. Saat Anda menyematkan kebijakan izin pada peran IAM, pengguna utama yang diidentifikasi dalam kebijakan kepercayaan peran tersebut akan mendapatkan izin.
Untuk tabel yang menampilkan semua tindakan API Amazon ElastiCache dan sumber daya yang diterapkan, lihat ElastiCache Izin API: Referensi tindakan, sumber daya, dan kondisi.
Contoh kebijakan yang dikelola pelanggan
Jika Anda tidak menggunakan kebijakan default dan memilih untuk menggunakan kebijakan yang dikelola khusus, pastikan salah satu dari dua hal berikut. Apakah Anda harus memiliki izin untuk memanggil iam:createServiceLinkedRole
(untuk informasi selengkapnya, lihat Contoh 4: Mengizinkan pengguna untuk memanggil API CreateServiceLinkedRole IAM). Atau Anda perlu membuat peran tertaut layanan ElastiCache.
Saat digabungkan dengan izin minimum yang diperlukan untuk menggunakan konsol Amazon ElastiCache, contoh kebijakan di bagian ini memberikan izin tambahan. Contoh ini juga relevan untuk SDK AWS dan AWS CLI.
Untuk instruksi pengaturan pengguna dan grup IAM, lihat Membuat Pengguna dan Grup Administrator IAM Pertama Anda dalam Panduan Pengguna IAM.
penting
Selalu uji kebijakan IAM Anda secara menyeluruh sebelum menggunakannya dalam produksi. Beberapa tindakan ElastiCache yang tampak sederhana mungkin memerlukan dukungan tindakan lain saat Anda menggunakan konsol ElastiCache. Misalnya, elasticache:CreateCacheCluster
memberikan izin untuk membuat klaster cache ElastiCache. Namun, untuk melakukan operasi ini, konsol ElastiCache menggunakan sejumlah tindakan Describe
dan List
untuk mengisi daftar konsol.
Contoh
- Contoh 1: Mengizinkan akses baca-saja kepada pengguna ke sumber daya ElastiCache
- Contoh 2: Mengizinkan pengguna untuk melakukan tugas umum administrator sistem ElastiCache
- Contoh 3: Mengizinkan pengguna untuk mengakses semua tindakan API ElastiCache
- Contoh 4: Mengizinkan pengguna untuk memanggil API CreateServiceLinkedRole IAM
- Contoh 5: Mengizinkan pengguna untuk tersambung ke cache nirserver menggunakan autentikasi IAM
Contoh 1: Mengizinkan akses baca-saja kepada pengguna ke sumber daya ElastiCache
Kebijakan berikut memberikan izin tindakan ElastiCache yang mengizinkan pengguna untuk menampilkan daftar sumber daya. Biasanya, Anda menyematkan jenis kebijakan izin ini untuk grup manajer.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECReadOnly", "Effect":"Allow", "Action": [ "elasticache:Describe*", "elasticache:List*"], "Resource":"*" } ] }
Contoh 2: Mengizinkan pengguna untuk melakukan tugas umum administrator sistem ElastiCache
Tugas umum administrator sistem termasuk mengubah sumber daya. Administrator sistem mungkin juga ingin mendapatkan informasi tentang peristiwa ElastiCache. Kebijakan berikut memberikan izin kepada pengguna untuk melakukan tindakan ElastiCache untuk tugas umum administrator sistem tersebut. Biasanya, Anda menyematkan jenis kebijakan izin ini untuk grup administrator sistem.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowMutations", "Effect":"Allow", "Action":[ "elasticache:Modify*", "elasticache:Describe*", "elasticache:ResetCacheParameterGroup" ], "Resource":"*" } ] }
Contoh 3: Mengizinkan pengguna untuk mengakses semua tindakan API ElastiCache
Kebijakan berikut mengizinkan pengguna mengakses semua tindakan ElastiCache. 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: Mengizinkan pengguna untuk memanggil API CreateServiceLinkedRole IAM
Kebijakan berikut mengizinkan pengguna untuk memanggil API CreateServiceLinkedRole
IAM. Sebaiknya Anda memberikan jenis kebijakan izin ini kepada pengguna yang menginvokasi operasi ElastiCache mutatif.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWSServiceName":"elasticache.amazonaws.com" } } } ] }
Contoh 5: Mengizinkan pengguna untuk tersambung ke cache nirserver menggunakan autentikasi IAM
Kebijakan berikut mengizinkan setiap pengguna untuk tersambung ke cache nirserver menggunakan autentikasi IAM antara 01-04-2023 hingga 30-06-2023.
{ "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:*" ] } ] }