Contoh kebijakan berbasis Identitas Amazon Kendra - Amazon Kendra

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 Kendra

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

Untuk mempelajari cara membuat kebijakan IAM berbasis identitas menggunakan contoh dokumen kebijakan ini, lihat Membuat JSON Kebijakan di JSON Tab di Panduan Pengguna. IAM

Praktik terbaik kebijakan

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

  • Mulailah dengan kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit — Untuk mulai memberikan izin kepada pengguna dan beban kerja Anda, gunakan kebijakan AWS terkelola 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 AWSAWS terkelola atau kebijakan terkelola untuk fungsi pekerjaan di Panduan IAM Pengguna.

  • Menerapkan izin hak istimewa paling sedikit — Saat Anda menetapkan izin dengan IAM kebijakan, berikan hanya 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 penggunaan IAM untuk menerapkan izin, lihat Kebijakan dan izin IAM di IAM Panduan Pengguna.

  • Gunakan ketentuan dalam IAM kebijakan untuk membatasi akses lebih lanjut — Anda dapat menambahkan kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Misalnya, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakanSSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui yang spesifik AWS layanan, seperti AWS CloudFormation. Untuk informasi selengkapnya, lihat elemen IAM JSON kebijakan: Kondisi dalam Panduan IAM Pengguna.

  • Gunakan IAM Access Analyzer untuk memvalidasi IAM kebijakan Anda guna memastikan izin yang aman dan fungsional — IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan mematuhi bahasa IAM kebijakan () JSON dan praktik terbaik. IAM IAMAccess 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 IAM Access Analyzer di IAMPanduan Pengguna.

  • Memerlukan otentikasi multi-faktor (MFA) - Jika Anda memiliki skenario yang mengharuskan IAM pengguna atau pengguna root di Anda Akun AWS, aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA kapan API operasi dipanggil, tambahkan MFA kondisi ke kebijakan Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi API akses MFA yang dilindungi di IAMPanduan Pengguna.

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

AWS Kebijakan Terkelola (Standar) untuk Amazon Kendra

AWS mengatasi banyak kasus penggunaan umum dengan menyediakan IAM kebijakan mandiri yang dibuat dan dikelola oleh AWS. Kebijakan ini disebut kebijakan AWS terkelola. AWS Kebijakan terkelola memudahkan Anda untuk menetapkan izin kepada pengguna, grup, dan peran daripada jika Anda harus menulis kebijakan sendiri. Untuk informasi selengkapnya, lihat Menambahkan Izin ke Pengguna di Panduan IAM Pengguna.

Kebijakan AWS terkelola berikut, yang dapat Anda lampirkan ke grup dan peran di akun Anda, khusus untuk Amazon Kendra:

  • AmazonKendraReadOnly— Memberikan akses hanya-baca ke sumber daya Amazon Kendra.

  • AmazonKendraFullAccess— Memberikan akses penuh untuk membuat, membaca, memperbarui, menghapus, menandai, dan menjalankan semua sumber daya Amazon Kendra.

Untuk konsol tersebut, peran Anda juga harus memiliki izin iam:CreateRole, iam:CreatePolicy, iam:AttachRolePolicy, dan s3:ListBucket.

catatan

Anda dapat meninjau izin ini dengan masuk ke IAM konsol dan mencari kebijakan tertentu.

Anda juga dapat membuat kebijakan kustom Anda sendiri untuk mengizinkan izin untuk tindakan Amazon API Kendra. Anda dapat melampirkan kebijakan khusus ini ke IAM peran atau grup yang memerlukan izin tersebut. Untuk contoh IAM kebijakan untuk Amazon Kendra, lihat. Contoh kebijakan berbasis Identitas Amazon Kendra

Mengizinkan pengguna melihat izin mereka sendiri

Contoh ini menunjukkan cara Anda membuat kebijakan yang memungkinkan IAM pengguna melihat kebijakan sebaris dan terkelola yang dilampirkan pada identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau secara terprogram menggunakan atau. AWS CLI AWS API

{ "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": "*" } ] }

Mengakses satu indeks Amazon Kendra

Dalam contoh ini, Anda ingin memberi pengguna di AWS akun Anda akses untuk menanyakan indeks.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "QueryIndex", "Effect": "Allow", "Action": [ "kendra:Query" ], "Resource": "arn:aws:kendra:${Region}:${Account}:index/${Index ID}" } ] }

Contoh kebijakan berbasis tanda

Kebijakan berbasis tag adalah dokumen JSON kebijakan yang menentukan tindakan yang dapat dilakukan oleh prinsipal pada sumber daya yang ditandai.

Contoh: Menggunakan tanda untuk mengakses sumber daya

Kebijakan contoh ini memberikan izin kepada pengguna atau peran di AWS akun Anda untuk menggunakan Query operasi dengan sumber daya apa pun yang ditandai dengan kunci department dan nilainya. finance

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kendra:Query" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "finance" } } } ] }

Contoh: Gunakan tag untuk mengaktifkan operasi Amazon Kendra

Kebijakan contoh ini memberikan izin kepada pengguna atau peran di AWS akun Anda untuk menggunakan operasi Amazon Kendra apa pun TagResource kecuali operasi dengan sumber daya apa pun yang ditandai dengan department kunci dan nilainya. finance

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kendra:*", "Resource": "*" }, { "Effect": "Deny", "Action": [ "kendra:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "finance" } } } ] }

Contoh: Menggunakan tanda untuk membatasi akses ke operasi

Contoh kebijakan ini membatasi akses untuk pengguna atau peran di AWS akun Anda untuk menggunakan CreateIndex operasi kecuali pengguna memberikan department tag dan memiliki nilai yang diizinkan finance danIT.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kendra:CreateIndex", "Resource": "*" }, { "Effect": "Deny", "Action": "kendra:CreateIndex", "Resource": "*", "Condition": { "Null": { "aws:RequestTag/department": "true" } } }, { "Effect": "Deny", "Action": "kendra:CreateIndex", "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "aws:RequestTag/department": [ "finance", "IT" ] } } } ] }