Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat peran layanan untuk Pangkalan Pengetahuan Amazon Bedrock
Untuk menggunakan peran kustom untuk basis pengetahuan alih-alih yang dibuat Amazon Bedrock secara otomatis, buat IAM peran dan lampirkan izin berikut dengan mengikuti langkah-langkah di Membuat peran untuk mendelegasikan izin ke layanan. AWS Sertakan hanya izin yang diperlukan untuk keamanan Anda sendiri.
-
Hubungan kepercayaan
-
Akses ke model dasar Amazon Bedrock
-
Akses ke sumber data tempat Anda menyimpan data
-
(Jika Anda membuat database vektor di Amazon OpenSearch Service) Akses ke koleksi OpenSearch Layanan Anda
-
(Jika Anda membuat database vektor di Amazon Aurora) Akses ke cluster Aurora Anda
-
(Jika Anda membuat database vektor di Pinecone atau Redis Enterprise Cloud) Izin untuk AWS Secrets Manager mengautentikasi Anda Pinecone atau Redis Enterprise Cloud akun
-
(Opsional) Jika Anda mengenkripsi salah satu sumber daya berikut dengan KMS kunci, izin untuk mendekripsi kunci (lihat). Enkripsi sumber daya basis pengetahuan
-
Basis pengetahuan Anda
-
Sumber data untuk basis pengetahuan Anda
-
Database vektor Anda di Amazon OpenSearch Service
-
Rahasia untuk database vektor pihak ketiga Anda di AWS Secrets Manager
-
Pekerjaan menelan data
-
Topik
- Hubungan kepercayaan
- Izin untuk mengakses model Amazon Bedrock
- Izin untuk mengakses sumber data Anda
- Izin untuk mengobrol dengan dokumen Anda
- (Opsional) Izin untuk mengakses indeks Amazon Kendra GenAI Anda
- (Opsional) Izin untuk mengakses database vektor Anda di Amazon Service OpenSearch
- (Opsional) Izin untuk mengakses kluster basis data Amazon Aurora Anda
- (Opsional) Izin untuk mengakses database vektor yang dikonfigurasi dengan rahasia AWS Secrets Manager
- (Opsional) Izin AWS untuk mengelola AWS KMS kunci untuk penyimpanan data sementara selama konsumsi data
- (Opsional) Izin AWS untuk mengelola sumber data dari AWS akun pengguna lain.
Hubungan kepercayaan
Kebijakan berikut memungkinkan Amazon Bedrock untuk mengambil peran ini dan membuat serta mengelola basis pengetahuan. Berikut ini menunjukkan contoh kebijakan yang dapat Anda gunakan. Anda dapat membatasi cakupan izin dengan menggunakan satu atau lebih kunci konteks kondisi global. Untuk informasi selengkapnya, lihat kunci konteks kondisi AWS global. Tetapkan aws:SourceAccount
nilainya ke ID akun Anda. Gunakan ArnEquals
atau ArnLike
kondisi untuk membatasi ruang lingkup ke basis pengetahuan tertentu.
catatan
Sebagai praktik terbaik untuk tujuan keamanan, ganti *
dengan basis pengetahuan khusus IDs setelah Anda membuatnya.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
${AccountId}
" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:${Region}
:${AccountId}
:knowledge-base/*
" } } }] }
Izin untuk mengakses model Amazon Bedrock
Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk menggunakan model Amazon Bedrock untuk menyematkan data sumber Anda.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:ListFoundationModels", "bedrock:ListCustomModels" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:
${Region}
::foundation-model/amazon.titan-embed-text-v1", "arn:aws:bedrock:${Region}
::foundation-model/cohere.embed-english-v3", "arn:aws:bedrock:${Region}
::foundation-model/cohere.embed-multilingual-v3" ] } ] }
Izin untuk mengakses sumber data Anda
Pilih dari sumber data berikut untuk melampirkan izin yang diperlukan untuk peran tersebut.
Topik
Izin untuk mengakses sumber data Amazon S3 Anda
Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Amazon S3.
Jika Anda mengenkripsi sumber data dengan AWS KMS kunci, lampirkan izin untuk mendekripsi kunci peran dengan mengikuti langkah-langkah di. Izin untuk mendekripsi AWS KMS kunci Anda untuk sumber data Anda di Amazon S3
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
${bucket/path/to/folder}
", "arn:aws:s3:::${bucket/path/to/folder}
/*" ], "Condition": { "StringEquals": { "aws:PrincipalAccount": "${AccountId}
" } } }] }
Izin untuk mengakses sumber data Confluence Anda
catatan
Konektor sumber data pertemuan dalam rilis pratinjau dan dapat berubah sewaktu-waktu.
Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Confluence.
catatan
secretsmanager:PutSecretValue
hanya diperlukan jika Anda menggunakan otentikasi OAuth 2.0 dengan token penyegaran.
Token akses Confluence OAuth2 .0 memiliki waktu kedaluwarsa default 60 menit. Jika token ini kedaluwarsa saat sumber data Anda disinkronkan (pekerjaan sinkronisasi), Amazon Bedrock akan menggunakan token penyegaran yang disediakan untuk membuat ulang token ini. Regenerasi ini menyegarkan token akses dan penyegaran. Untuk menjaga token diperbarui dari pekerjaan sinkronisasi saat ini ke pekerjaan sinkronisasi berikutnya, Amazon Bedrock memerlukan izin menulis/menempatkan untuk kredensil rahasia Anda.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue" ], "Resource": [ "arn:aws:secretsmanager:
${Region}
:${AccountId}
:secret:${secret-id}
" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${Region}
:${AccountId}
:key/${KeyId}
" ], "Condition": { "StringLike": { "kms:ViaService": [ "secretsmanager.${Region}
.amazonaws.com" ] } } }, }
Izin untuk mengakses sumber SharePoint data Microsoft Anda
catatan
SharePoint konektor sumber data dalam rilis pratinjau dan dapat berubah.
Lampirkan kebijakan berikut untuk memberikan izin bagi peran yang akan diakses SharePoint.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:
${Region}
:${AccountId}
:secret:${SecretId}
" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${Region}
:${AccountId}
:key/${KeyId}
" ], "Condition": { "StringLike": { "kms:ViaService": [ "secretsmanager.${Region}
.amazonaws.com" ] } } }, }
Izin untuk mengakses sumber data Salesforce Anda
catatan
Konektor sumber data Salesforce dalam rilis pratinjau dan dapat berubah sewaktu-waktu.
Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Salesforce.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:
${Region}
:${AccountId}
:secret:${SecretId}
" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${Region}
:${AccountId}
:key/${KeyId}
" ], "Condition": { "StringLike": { "kms:ViaService": [ "secretsmanager.${Region}
.amazonaws.com" ] } } }, }
Izin untuk mengobrol dengan dokumen Anda
Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk menggunakan model Amazon Bedrock untuk mengobrol dengan dokumen Anda:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:RetrieveAndGenerate" ], "Resource": "*" } ] }
Jika Anda hanya ingin memberi pengguna akses untuk mengobrol dengan dokumen Anda (dan tidak RetrieveAndGenerate
pada semua Pangkalan Pengetahuan), gunakan kebijakan berikut:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:RetrieveAndGenerate" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "bedrock:Retrieve" ], "Resource": "*" } ] }
Jika Anda ingin mengobrol dengan dokumen dan menggunakan RetrieveAndGenerate
Basis Pengetahuan tertentu, berikan${KnowledgeBaseArn}
, dan gunakan kebijakan berikut:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:RetrieveAndGenerate" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "bedrock:Retrieve" ], "Resource":
${KnowledgeBaseArn}
} ] }
(Opsional) Izin untuk mengakses indeks Amazon Kendra GenAI Anda
Jika Anda membuat indeks Amazon Kendra GenAI untuk basis pengetahuan Anda, lampirkan kebijakan berikut ke peran layanan Pangkalan Pengetahuan Amazon Bedrock Anda untuk mengizinkan akses ke indeks. Dalam kebijakan, ganti${Partition}
,${Region}
,${AccountId}
, dan ${IndexId}
dengan nilai untuk indeks Anda. Anda dapat mengizinkan akses ke beberapa indeks dengan menambahkannya ke Resource
daftar. Untuk mengizinkan akses ke setiap indeks di Anda Akun AWS, ganti ${IndexId}
dengan wildcard (*).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kendra:Retrieve", // To call their Retrieve API "kendra:DescribeIndex" // For validation when creating the KB ], "Resource": "arn:${
${Partition}
}:kendra:${${Region}
}:${${AccountId}
}:index/${${IndexId}
}" } ] }
(Opsional) Izin untuk mengakses database vektor Anda di Amazon Service OpenSearch
Jika Anda membuat database vektor di Amazon OpenSearch Service untuk basis pengetahuan Anda, lampirkan kebijakan berikut ke peran layanan Pangkalan Pengetahuan Amazon Bedrock Anda untuk mengizinkan akses ke koleksi. Ganti ${Region}
dan ${AccountId}
dengan wilayah dan ID akun tempat database berada. Masukkan ID koleksi OpenSearch Layanan Amazon Anda di${CollectionId}
. Anda dapat mengizinkan akses ke beberapa koleksi dengan menambahkannya ke Resource
daftar.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "aoss:APIAccessAll" ], "Resource": [ "arn:aws:aoss:
${Region}
:${AccountId}
:collection/${CollectionId}
" ] }] }
(Opsional) Izin untuk mengakses kluster basis data Amazon Aurora Anda
Jika Anda membuat cluster database (DB) di Amazon Aurora untuk basis pengetahuan Anda, lampirkan kebijakan berikut ke peran layanan Pangkalan Pengetahuan Amazon Bedrock Anda untuk mengizinkan akses ke klaster DB dan untuk memberikan izin baca dan tulis di dalamnya. Ganti ${Region}
dan ${AccountId}
dengan wilayah dan ID akun tempat cluster DB berada. Masukkan ID cluster database Amazon Aurora Anda. ${DbClusterId}
Anda dapat mengizinkan akses ke beberapa cluster DB dengan menambahkannya ke Resource
daftar.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
RdsDescribeStatementID
", "Effect": "Allow", "Action": [ "rds:DescribeDBClusters" ], "Resource": [ "arn:aws:rds:${Region}
:${AccountId}
:cluster:${DbClusterId}
" ] }, { "Sid": "DataAPIStatementID", "Effect": "Allow", "Action": [ "rds-data:BatchExecuteStatement", "rds-data:ExecuteStatement" ], "Resource": [ "arn:aws:rds:${Region}
:${AccountId}
:cluster:${DbClusterId}
" ] }] }
(Opsional) Izin untuk mengakses database vektor yang dikonfigurasi dengan rahasia AWS Secrets Manager
Jika database vektor Anda dikonfigurasi dengan AWS Secrets Manager rahasia, lampirkan kebijakan berikut ke peran layanan Pangkalan Pengetahuan Amazon Bedrock Anda AWS Secrets Manager untuk memungkinkan mengautentikasi akun Anda untuk mengakses database. Ganti ${Region}
dan ${AccountId}
dengan wilayah dan ID akun tempat database berada. Ganti ${SecretId}
dengan ID rahasia Anda.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:
${Region}
:${AccountId}
:secret:${SecretId}
" ] }] }
Jika Anda mengenkripsi rahasia Anda dengan AWS KMS kunci, lampirkan izin untuk mendekripsi kunci peran dengan mengikuti langkah-langkah di. Izin untuk mendekripsi AWS Secrets Manager rahasia untuk penyimpanan vektor yang berisi basis pengetahuan Anda
(Opsional) Izin AWS untuk mengelola AWS KMS kunci untuk penyimpanan data sementara selama konsumsi data
Untuk memungkinkan pembuatan AWS KMS kunci penyimpanan data sementara dalam proses pengambilan sumber data Anda, lampirkan kebijakan berikut ke peran layanan Pangkalan Pengetahuan Amazon Bedrock Anda. Ganti${Region}
,${AccountId}
, dan ${KeyId}
dengan nilai yang sesuai.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:
${Region}
:${AccountId}
:key/${KeyId}
" ] } ] }
(Opsional) Izin AWS untuk mengelola sumber data dari AWS akun pengguna lain.
Untuk mengizinkan akses ke AWS akun pengguna lain, Anda harus membuat peran yang memungkinkan akses lintas akun ke bucket Amazon S3 di akun pengguna lain. Ganti${BucketName}
,${BucketOwnerAccountId}
, dan ${BucketNameAndPrefix}
dengan nilai yang sesuai.
Izin Diperlukan pada peran Basis Pengetahuan
Peran basis pengetahuan yang diberikan selama pembuatan basis pengetahuan createKnowledgeBase
memerlukan izin Amazon S3 berikut.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "S3ListBucketStatement", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
${BucketName}
" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${BucketOwnerAccountId}
" } } },{ "Sid": "S3GetObjectStatement", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::${BucketNameAndPrefix}
/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${BucketOwnerAccountId}
" } }] }
Jika bucket Amazon S3 dienkripsi menggunakan AWS KMS kunci, berikut ini juga perlu ditambahkan ke peran basis pengetahuan. Ganti ${BucketOwnerAccountId}
dan ${Region}
dengan nilai yang sesuai.
{ "Sid": "KmsDecryptStatement", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "arn:aws:kms:
${Region}
:${BucketOwnerAccountId}
:key/${KeyId}
" ], "Condition": { "StringEquals": { "kms:ViaService": [ "s3.${Region}
.amazonaws.com" ] } } }
Izin diperlukan pada kebijakan bucket Amazon S3 lintas akun
Bucket di akun lain memerlukan kebijakan bucket Amazon S3 berikut. Ganti${KbRoleArn}
,${BucketName}
, dan ${BucketNameAndPrefix}
dengan nilai yang sesuai.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Example ListBucket permissions", "Effect": "Allow", "Principal": { "AWS": "
${KbRoleArn}
" }, "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${BucketName}
" ] }, { "Sid": "Example GetObject permissions", "Effect": "Allow", "Principal": { "AWS": "${KbRoleArn}
" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::${BucketNameAndPrefix}
/*" ] } ] }
Izin diperlukan pada kebijakan kunci lintas akun AWS KMS
Jika bucket Amazon S3 lintas akun dienkripsi menggunakan AWS KMS kunci di akun tersebut, kebijakan kunci tersebut memerlukan kebijakan AWS KMS berikut. Ganti ${KbRoleArn}
dan ${KmsKeyArn}
dengan nilai yang sesuai.
{ "Sid": "Example policy", "Effect": "Allow", "Principal": { "AWS": [ "
${KbRoleArn}
" ] }, "Action": [ "kms:Decrypt" ], "Resource": "${KmsKeyArn}
" }