View a markdown version of this page

Contoh kebijakan berbasis identitas Amazon Pinpoint - Titik Pintu Amazon

Pemberitahuan akhir dukungan: Pada 30 Oktober 2026, dukungan untuk Amazon Pinpoint AWS akan berakhir. Setelah 30 Oktober 2026, Anda tidak akan lagi dapat mengakses konsol Amazon Pinpoint atau sumber daya Amazon Pinpoint (titik akhir, segmen, kampanye, perjalanan, dan analitik). Untuk informasi selengkapnya, lihat Akhir dukungan Amazon Pinpoint. Catatan: API yang terkait dengan SMS, suara, push seluler, OTP, dan validasi nomor telepon tidak terpengaruh oleh perubahan ini dan didukung oleh Pesan Pengguna AWS Akhir.

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

Contoh kebijakan berbasis identitas Amazon Pinpoint

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi sumber daya Amazon Pinpoint. Mereka juga tidak dapat melakukan tugas menggunakan Konsol Manajemen AWS, AWS CLI, atau AWS API. Administrator IAM harus membuat kebijakan IAM yang memberikan izin kepada pengguna dan peran untuk melakukan operasi API tertentu pada sumber daya yang mereka butuhkan. Administrator kemudian harus melampirkan kebijakan tersebut ke pengguna atau grup yang memerlukan izin tersebut.

Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat Membuat kebijakan pada tab JSON dalam Panduan Pengguna IAM.

Praktik terbaik kebijakan

Identity-based kebijakan menentukan apakah seseorang dapat membuat, mengakses, atau menghapus sumber daya Amazon Pinpoint di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:

  • Memulai kebijakan AWS terkelola dan beralih ke izin hak istimewa terendah — Untuk mulai memberikan izin kepada pengguna dan beban kerja Anda, gunakan kebijakan terkel AWS ola yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola AWS pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat Kebijakan yang dikelola AWS atau Kebijakan yang dikelola AWS untuk fungsi tugas dalam Panduan Pengguna IAM.

  • Menerapkan izin dengan hak akses paling rendah – Ketika Anda menetapkan izin dengan kebijakan IAM, hanya berikan izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai izin dengan hak akses paling rendah. Untuk informasi selengkapnya tentang cara menggunakan IAM untuk mengajukan izin, lihat Kebijakan dan izin dalam IAM dalam Panduan Pengguna IAM.

  • Gunakan kondisi dalam kebijakan IAM untuk membatasi akses lebih lanjut – Anda dapat menambahkan suatu kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Sebagai contoh, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan kondisi untuk memberikan akses ke tindakan layanan jika digunakan melalui tindakan tertentu Layanan AWS, seperti CloudFormation. Untuk informasi selengkapnya, lihat Elemen kebijakan JSON IAM: Kondisi dalam Panduan Pengguna IAM.

  • Gunakan IAM Access Analyzer untuk memvalidasi kebijakan IAM Anda untuk memastikan izin yang aman dan fungsional – IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa kebijakan IAM (JSON) dan praktik terbaik IAM. IAM Access Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat Validasi kebijakan dengan IAM Access Analyzer dalam Panduan Pengguna IAM.

  • Memerlukan otentikasi multi-faktor (MFA) — Jika Anda memiliki skenario yang memerlukan pengguna IAM atau pengguna root Akun AWS, aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA ketika operasi API dipanggil, tambahkan kondisi MFA pada kebijakan Anda. Untuk informasi selengkapnya, lihat Amankan akses API dengan MFA dalam Panduan Pengguna IAM.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat Praktik terbaik keamanan di IAM dalam Panduan Pengguna IAM.

Menggunakan konsol Amazon Pinpoint

Untuk mengakses konsol Amazon Pinpoint, Anda harus memiliki seperangkat izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang sumber daya Amazon Pinpoint di AWS akun Anda. Jika Anda membuat kebijakan berbasis identitas yang menerapkan izin yang lebih ketat daripada izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana dimaksudkan untuk entitas (pengguna atau peran) dengan kebijakan tersebut. Untuk memastikan bahwa entitas tersebut dapat menggunakan konsol Amazon Pinpoint, lampirkan kebijakan ke entitas. Untuk informasi selengkapnya, lihat Menambah izin untuk pengguna dalam Panduan Pengguna IAM.

Kebijakan contoh berikut menyediakan akses read-only ke konsol Amazon Pinpoint di Wilayah tertentu. AWS Ini termasuk akses read-only ke layanan lain yang bergantung pada konsol Amazon Pinpoint, seperti Amazon Simple Email Service (Amazon SES), IAM, dan Amazon Kinesis.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "UseConsole", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:us-east-1:111122223333:*" }, { "Effect": "Allow", "Action": [ "firehose:ListDeliveryStreams", "iam:ListRoles", "kinesis:ListStreams", "s3:List*", "ses:Describe*", "ses:Get*", "ses:List*", "sns:ListTopics" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Dalam contoh kebijakan sebelumnya, ganti region dengan nama Wil AWS ayah, dan ganti accountId dengan ID AWS akun Anda.

Anda tidak perlu mengizinkan izin konsol minimum untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai gantinya, izinkan akses hanya ke tindakan yang sesuai dengan operasi API yang coba mereka lakukan.

Contoh: Mengakses satu proyek Amazon Pinpoint

Anda juga dapat membuat kebijakan baca-saja yang menyediakan akses hanya ke proyek tertentu. Kebijakan contoh berikut memungkinkan pengguna masuk ke konsol dan melihat daftar proyek. Ini juga memungkinkan pengguna melihat informasi tentang sumber daya terkait untuk AWS layanan lain yang bergantung pada konsol Amazon Pinpoint, seperti Amazon SES, IAM, dan Amazon Kinesis. Namun, kebijakan ini memungkinkan pengguna melihat informasi tambahan tentang hanya proyek yang ditentukan dalam kebijakan. Anda dapat mengubah kebijakan ini untuk mengizinkan akses ke proyek atau Wil AWS ayah tambahan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ViewProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:us-east-1:111122223333:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": [ "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId", "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId/*", "arn:aws:mobiletargeting:us-east-1:111122223333:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" } } } ] }

Dalam contoh sebelumnya, ganti region dengan nama Wil AWS ayah, ganti accountId dengan ID AWS akun Anda, dan ganti projectId dengan ID proyek Amazon Pinpoint yang ingin Anda berikan akses.

Demikian pula, Anda dapat membuat kebijakan yang memberi pengguna di AWS akun Anda akses tulis terbatas ke salah satu proyek Amazon Pinpoint Anda, misalnya proyek yang memiliki ID 810c7aab86d42fb2b56c8c966example proyek. Dalam hal ini, Anda ingin mengizinkan pengguna untuk melihat, menambah, dan memperbarui komponen proyek, seperti segmen dan kampanye, tetapi tidak menghapus komponen apa pun.

Selain memberikan izin untuk mobiletargeting:Get dan mobiletargeting:List tindakan, buat kebijakan yang memberikan izin untuk tindakan berikut:mobiletargeting:Create;mobiletargeting:Update; danmobiletargeting:Put. Ini adalah izin tambahan yang diperlukan untuk membuat dan mengelola sebagian besar komponen proyek. Contoh:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "LimitedWriteProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:us-east-1:111122223333:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*", "mobiletargeting:Create*", "mobiletargeting:Update*", "mobiletargeting:Put*" ], "Resource": [ "arn:aws:mobiletargeting:us-east-1:111122223333:apps/810c7aab86d42fb2b56c8c966example", "arn:aws:mobiletargeting:us-east-1:111122223333:apps/810c7aab86d42fb2b56c8c966example/*", "arn:aws:mobiletargeting:us-east-1:111122223333:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" } } } ] }

Contoh: Melihat sumber daya Amazon Pinpoint berdasarkan tag

Anda dapat menggunakan kondisi dalam kebijakan berbasis identitas untuk mengontrol akses ke sumber daya Amazon Pinpoint berdasarkan tag. Kebijakan contoh ini menunjukkan cara membuat kebijakan semacam ini untuk mengizinkan tampilan sumber daya Amazon Pinpoint. Namun, izin diberikan hanya jika tag Owner sumber daya memiliki nilai nama pengguna pengguna tersebut. Kebijakan ini juga memberi izin yang diperlukan untuk menyelesaikan tindakan ini pada konsol tersebut.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ListResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "*" }, { "Sid": "ViewResourceIfOwner", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:*:*:*", "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "userName" }, "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:mobiletargeting:us-east-1:111122223333:*" } } } ] }

Anda dapat melampirkan jenis kebijakan ini ke pengguna di akun Anda. Jika pengguna bernama mencoba richard-roe melihat sumber daya Amazon Pinpoint, sumber daya harus diberi tag Owner=richard-roe atauowner=richard-roe. Jika tidak, aksesnya akan ditolak. Kunci tanda syarat Owner cocok dengan Owner dan owner karena nama kunci syarat tidak terpengaruh huruf besar/kecil. Untuk informasi selengkapnya, lihat Elemen kebijakan IAM JSON: Syarat dalam Panduan Pengguna IAM.

Contoh: Mengizinkan pengguna untuk melihat izin mereka sendiri

Contoh ini menunjukkan cara membuat kebijakan yang mengizinkan pengguna IAM melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau secara terprogram menggunakan API AWS CLI or AWS .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Contoh: Menyediakan akses ke tindakan Amazon Pinpoint API

Bagian ini memberikan contoh kebijakan yang memungkinkan akses ke fitur yang tersedia dari Amazon Pinpoint API, yang merupakan API utama untuk Amazon Pinpoint. Untuk mempelajari lebih lanjut tentang API ini, lihat Refer ensi API Amazon Pinpoint.

Read-only akses

Kebijakan contoh berikut memungkinkan akses baca-saja ke semua sumber daya di akun Amazon Pinpoint Anda di Wilayah tertentu. AWS

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ViewAllResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:us-east-1:111122223333:*" } ] }

Dalam contoh sebelumnya, ganti region dengan nama Wil AWS ayah, dan ganti accountId dengan ID AWS akun Anda.

Akses administrator

Kebijakan contoh berikut memungkinkan akses penuh ke semua tindakan dan sumber daya Amazon Pinpoint di akun Amazon Pinpoint Anda:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "FullAccess", "Effect": "Allow", "Action": [ "mobiletargeting:*" ], "Resource": "arn:aws:mobiletargeting:us-east-1:111122223333:*" } ] }

Dalam contoh sebelumnya, ganti accountId dengan ID AWS akun Anda.

Contoh: Menyediakan akses ke tindakan Amazon Pinpoint SMS dan API suara

Bagian ini memberikan contoh kebijakan yang memungkinkan akses ke fitur yang tersedia dari Amazon Pinpoint SMS dan Voice API. Ini adalah API tambahan yang menyediakan opsi lanjutan untuk menggunakan dan mengelola saluran SMS dan suara di Amazon Pinpoint. Untuk mempelajari lebih lanjut tentang API ini, lihat referensi https://docs.aws.amazon.com/pinpoint-sms-voice/latest/APIReference/ Amazon Pinpoint SMS dan API suara.

Read-only akses

Kebijakan contoh berikut mengizinkan akses baca-saja ke semua tindakan dan sumber daya Amazon Pinpoint SMS dan Voice API di akun Anda: AWS

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "SMSVoiceReadOnly", "Effect": "Allow", "Action": [ "sms-voice:Get*", "sms-voice:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:us-east-1:111122223333:*" } } } ] }

Akses administrator

Kebijakan contoh berikut memungkinkan akses penuh ke semua tindakan dan sumber daya Amazon Pinpoint SMS dan Voice API di AWS akun Anda:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "SMSVoiceFullAccess", "Effect": "Allow", "Action": [ "sms-voice:*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:us-east-1:111122223333:*" } } } ] }

Contoh: Membatasi akses proyek Amazon Pinpoint ke alamat IP tertentu

Kebijakan contoh berikut memberikan izin kepada pengguna mana pun untuk melakukan tindakan Amazon Pinpoint apa pun pada proyek tertentu (projectId). Namun, permintaan harus berasal dari kisaran alamat IP yang ditentukan dalam kondisi.

Kondisi dalam pernyataan ini mengidentifikasi rent 54.240.143.* ang alamat Protokol Internet versi 4 (IPv4) yang diizinkan, dengan satu pengecualian:54.240.143.188. ConditionBlok menggunakan NotIpAddress kondisi IpAddress dan dan kunci aws:SourceIp kondisi, yang merupakan kunci kondisi AWS-wide. Untuk informasi selengkapnya tentang kunci kondisi ini, lihat Menentukan kondisi dalam Panduan Pengguna IAM kebijakan. Nilai aws:SourceIp IPv4 menggunakan notasi CIDR standar. Untuk informasi selengkapnya, lihat operator kondisi alamat IP di Panduan Pengguna IAM.

JSON
{ "Version":"2012-10-17", "Id":"AMZPinpointPolicyId1", "Statement":[ { "Sid":"IPAllow", "Effect":"Allow", "Principal":"*", "Action":"mobiletargeting:*", "Resource":[ "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId", "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId/*" ], "Condition":{ "IpAddress":{ "aws:SourceIp":"54.240.143.0/24" }, "NotIpAddress":{ "aws:SourceIp":"54.240.143.188/32" } } } ] }

Contoh: Membatasi akses Amazon Pinpoint berdasarkan tag

Kebijakan contoh berikut memberikan izin untuk melakukan tindakan Amazon Pinpoint apa pun pada proyek tertentu (projectId). Namun, izin diberikan hanya jika permintaan berasal dari pengguna yang namanya merupakan nilai dalam tag Owner sumber daya untuk proyek, seperti yang ditentukan dalam kondisi.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ModifyResourceIfOwner", "Effect": "Allow", "Action": "mobiletargeting:*", "Resource": [ "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId", "arn:aws:mobiletargeting:us-east-1:111122223333:apps/projectId/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "userName" } } } ] }

Contoh: Izinkan Amazon Pinpoint mengirim email menggunakan identitas yang diverifikasi di Amazon SES

Saat Anda memverifikasi identitas email (seperti alamat email atau domain) melalui konsol Amazon Pinpoint, identitas tersebut secara otomatis dikonfigurasi sehingga dapat digunakan oleh Amazon Pinpoint dan Amazon SES. Namun, jika Anda memverifikasi identitas email melalui Amazon SES, dan Anda ingin menggunakan identitas itu dengan Amazon Pinpoint, Anda harus menerapkan kebijakan untuk identitas tersebut.

Kebijakan contoh berikut memberikan izin kepada Amazon Pinpoint untuk mengirim email menggunakan identitas email yang diverifikasi melalui Amazon SES.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws:ses:us-east-1:111122223333:identity/emailId", "Condition":{ "StringEquals":{ "aws:SourceAccount":"111122223333" }, "ArnLike":{ "aws:SourceArn":"arn:aws:mobiletargeting:us-east-1:111122223333:apps/*" } } } ] }

Jika Anda menggunakan Amazon Pinpoint di AWS GovCloud (US-West) Region, gunakan contoh kebijakan berikut sebagai gantinya:

JSON
{ "Version":"2012-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws-us-gov:ses:us-gov-west-1:111122223333:identity/emailId", "Condition":{ "StringEquals":{ "aws:SourceAccount":"111122223333" }, "ArnLike":{ "aws:SourceArn":"arn:aws-us-gov:mobiletargeting:us-gov-west-1:111122223333:apps/*" } } } ] }