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 pertama-tama membaca topik yang menjelaskan konsep dasar dan opsi dasar untuk mengelola akses ke ElastiCache sumber daya Amazon. Untuk informasi selengkapnya, lihat Gambaran umum pengelolaan izin akses untuk ElastiCache sumber daya.
Bagian dalam topik ini mencakup hal berikut:
Berikut adalah contoh kebijakan izin.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateCacheCluster", "elasticache:CreateReplicationGroup", "elasticache:DescribeCacheClusters", "elasticache:ModifyCacheCluster"], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
Kebijakan ini memiliki dua pernyataan:
-
Pernyataan pertama memberikan izin untuk ElastiCache tindakan Amazon (
elasticache:CreateCacheCluster
,elasticache:DescribeCacheClusters
,elasticache:ModifyCacheCluster
-
Pernyataan kedua memberikan izin untuk tindakan IAM (
iam:PassRole
) pada nama peran IAM yang ditentukan pada akhirResource
nilai.
Kebijakan tidak menyebutkan elemen Principal
karena dalam kebijakan berbasis identitas, Anda tidak menyebutkan pengguna utama yang mendapatkan izin. Saat Anda menyematkan kebijakan kepada pengguna, pengguna itu adalah pengguna utama implisit. Saat Anda melampirkan kebijakan izin pada IAM role, penanggung jawab yang diidentifikasi dalam kebijakan kepercayaan peran mendapatkan izin.
Untuk tabel yang menampilkan semua Tindakan Amazon ElastiCache API dan sumber daya yang diterapkan, lihatIzin API ElastiCache: Referensi tindakan, sumber daya, dan kondisi.
Izin yang Diperlukan untuk Menggunakan ElastiCache Konsol Amazon
Tabel referensi perizinan mencantumkan operasi Amazon ElastiCache API dan menampilkan izin yang diperlukan untuk setiap operasi. Untuk informasi lain tentang operasi ElastiCache API, lihatIzin API ElastiCache: Referensi tindakan, sumber daya, dan kondisi.
Untuk menggunakan ElastiCache konsol Amazon, pertama-tama berikan izin untuk tindakan tambahan seperti yang ditunjukkan dalam kebijakan izin berikut.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "MinPermsForECConsole", "Effect": "Allow", "Action": [ "elasticache:Describe*", "elasticache:List*", "ec2:DescribeAvailabilityZones", "ec2:DescribeVpcs", "ec2:DescribeAccountAttributes", "ec2:DescribeSecurityGroups", "cloudwatch:GetMetricStatistics", "cloudwatch:DescribeAlarms", "s3:ListAllMyBuckets", "sns:ListTopics", "sns:ListSubscriptions" ], "Resource": "*" } ] }
ElastiCache Konsol memerlukan izin tambahan ini karena alasan berikut:
-
Izin untuk ElastiCache tindakan memungkinkan konsol menampilkan ElastiCache sumber daya di akun.
-
Konsol memerlukan izin untuk
ec2
tindakan tersebut untuk melakukan kueri ke Amazon EC2 agar dapat menampilkan Availability Zone, VPC, grup keamanan, dan atribut akun. -
Izin untuk
cloudwatch
tindakan memungkinkan konsol untuk mengambil CloudWatch metrik dan alarm Amazon, dan menampilkannya di konsol. -
Izin untuk
sns
tindakan memungkinkan konsol untuk mengambil topik dan langganan Amazon Simple Notification Service (Amazon SNS), dan menampilkannya di konsol.
AWSKebijakan yang dikelola (ditentukan sebelumnya) untuk Amazon ElastiCache
AWS menangani banyak kasus penggunaan umum dengan menyediakan kebijakan IAM mandiri yang dibuat dan dikelola oleh AWS. Kebijakan terkelola memberikan izin yang diperlukan untuk kasus penggunaan umum sehingga Anda tidak perlu menyelidiki izin apa yang diperlukan. Untuk informasi selengkapnya, lihat Kebijakan Terkelola AWS dalam Panduan Pengguna IAM.
Kebijakan terkelola AWS berikut, yang dapat Anda lampirkan ke pengguna di akun Anda, khusus untuk ElastiCache:
-
AmazonElastiCacheReadOnlyAccess- Memberikan akses hanya-baca ke ElastiCache sumber daya Amazon.
-
AmazonElastiCacheFullAccess- Memberikan akses penuh ke ElastiCache sumber daya Amazon.
Anda juga dapat membuat kebijakan IAM khusus Anda sendiri untuk mengizinkan izin tindakan Amazon ElastiCache API. Anda dapat melampirkan kebijakan kustom ini ke pengguna IAM atau grup yang memerlukan izin tersebut.
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 ini. Apakah Anda harus memiliki izin untuk memanggil iam:createServiceLinkedRole
(untuk informasi lain, lihat Contoh 5: Mengizinkan pengguna untuk memanggil IAM CreateServiceLinkedRole API). Atau Anda seharusnya membuat peran yang ElastiCache ditautkan ke layanan.
Jika digabungkan dengan izin minimum yang diperlukan untuk menggunakan ElastiCache konsol Amazon, contoh kebijakan di bagian ini memberikan izin tambahan. Contoh ini juga relevan untuk SDK AWS dan AWS CLI. Untuk informasi lain tentang izin apa yang diperlukan untuk menggunakan ElastiCache konsol tersebut, lihatIzin yang Diperlukan untuk Menggunakan ElastiCache Konsol Amazon.
Untuk instruksi tentang menyiapkan pengguna dan grup IAM, buka Membuat Grup Pengguna dan Administrator IAM Pertama Anda dalam Panduan Pengguna IAM.
penting
Selalu uji kebijakan IAM Anda secara menyeluruh sebelum menggunakannya di sistem produksi. Beberapa ElastiCache tindakan yang tampak sederhana mungkin memerlukan tindakan lain untuk mendukungnya saat Anda menggunakan ElastiCache konsol tersebut. Misalnya, elasticache:CreateCacheCluster
memberikan izin untuk membuat klaster cache ElastiCache . Namun, untuk melakukan operasi ini, ElastiCache konsol menggunakan sejumlahDescribe
danList
tindakan untuk mengisi daftar konsol.
Contoh
- Contoh 1: Mengizinkan pengguna untuk membuat dan mengelola grup keamanan
- Contoh 2: Mengizinkan akses baca-only kepada pengguna untuk mengakses ElastiCache sumber daya
- Contoh 3: Mengizinkan pengguna untuk melakukan tugas umum administrator ElastiCache sistem
- Contoh 4: Mengizinkan pengguna mengakses semua Tindakan ElastiCache API
- Contoh 5: Mengizinkan pengguna untuk memanggil IAM CreateServiceLinkedRole API
- Contoh 6: Memungkinkan pengguna untuk terhubung ke grup replikasi menggunakan otentikasi IAM
Contoh 1: Mengizinkan pengguna untuk membuat dan mengelola grup keamanan
Kebijakan berikut memberikan izin untuk tindakan ElastiCache yang khusus dari grup keamanan. Biasanya, Anda menyematkan jenis kebijakan izin ini untuk grup administrator sistem.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "SecGrpAllows", "Effect":"Allow", "Action":[ "elasticache:CreateCacheSecurityGroup", "elasticache:DeleteCacheSecurityGroup", "elasticache:DescribeCacheSecurityGroup", "elasticache:AuthorizeCacheSecurityGroupIngress", "elasticache:RevokeCacheSecurityGroupIngress"], "Resource":"*" } ] }
Contoh 2: Mengizinkan akses baca-only kepada pengguna untuk mengakses ElastiCache sumber daya
Kebijakan berikut memberikan ElastiCache tindakan izin yang mengizinkan pengguna untuk menampilkan daftar sumber daya. Biasanya, Anda menyematkan jenis kebijakan izin ini untuk grup manajer.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECUnrestricted", "Effect":"Allow", "Action": [ "elasticache:Describe*", "elasticache:List*"], "Resource":"*" } ] }
Contoh 3: Mengizinkan pengguna untuk melakukan tugas umum administrator ElastiCache sistem
Tugas umum administrator sistem termasuk mengubah klaster cache, parameter, dan grup parameter. Administrator sistem mungkin juga ingin mendapatkan informasi tentang peristiwa ElastiCache . Kebijakan berikut memberikan izin kepada pengguna untuk melakukan ElastiCache tindakan untuk tugas umum administrator sistem ini. Biasanya, Anda menyematkan jenis kebijakan izin ini untuk grup administrator sistem.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowSpecific", "Effect":"Allow", "Action":[ "elasticache:ModifyCacheCluster", "elasticache:RebootCacheCluster", "elasticache:DescribeCacheClusters", "elasticache:DescribeEvents", "elasticache:ModifyCacheParameterGroup", "elasticache:DescribeCacheParameterGroups", "elasticache:DescribeCacheParameters", "elasticache:ResetCacheParameterGroup", "elasticache:DescribeEngineDefaultParameters"], "Resource":"*" } ] }
Contoh 4: Mengizinkan pengguna mengakses semua Tindakan ElastiCache API
Kebijakan berikut mengizinkan pengguna mengakses semua ElastiCache tindakan. Sebaiknya Anda memberikan jenis kebijakan izin ini hanya untuk pengguna administrator.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "ECAllowSpecific", "Effect":"Allow", "Action":[ "elasticache:*" ], "Resource":"*" } ] }
Contoh 5: Mengizinkan pengguna untuk memanggil IAM CreateServiceLinkedRole API
Kebijakan berikut mengizinkan pengguna untuk memanggilCreateServiceLinkedRole
API IAM. Sebaiknya Anda memberikan jenis kebijakan izin ini kepada pengguna yang memanggil ElastiCache operasi mutatif.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWSServiceName":"elasticache.amazonaws.com" } } } ] }
Contoh 6: Memungkinkan pengguna untuk terhubung ke grup replikasi menggunakan otentikasi IAM
Kebijakan berikut memungkinkan setiap pengguna untuk terhubung ke grup replikasi apa pun, menggunakan otentikasi IAM, dari alamat IP 123.45.167.89.
{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:replicationgroup:*", ], "Condition": { "IpAddress": { "aws:SourceIp": "123.45.167.89" } } }, { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:user:*" ] } ] }