View a markdown version of this page

Membuat peran layanan untuk Basis Pengetahuan Amazon Bedrock yang dikelola - Amazon Bedrock

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

Membuat peran layanan untuk Basis Pengetahuan Amazon Bedrock yang dikelola

Untuk menggunakan peran khusus untuk basis pengetahuan terkelola alih-alih peran yang dibuat Amazon Bedrock secara otomatis, buat peran IAM 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.

catatan

Kebijakan tidak dapat dibagi antara beberapa peran saat peran layanan digunakan.

  • Hubungan kepercayaan

  • Akses ke model dasar Amazon Bedrock

  • Akses ke sumber data tempat Anda menyimpan data

  • (Jika Anda mengonfigurasi tujuan penyimpanan multimodal) Akses ke bucket penyimpanan multimodal Anda

Hubungan kepercayaan

Kebijakan berikut memungkinkan Amazon Bedrock untuk mengambil peran ini dan membuat serta mengelola basis pengetahuan. Anda dapat membatasi ruang lingkup izin dengan menggunakan satu atau beberapa kunci konteks kondisi global. Untuk informasi selengkapnya, lihat kunci konteks kondisi AWS global. Tetapkan aws:SourceAccount nilai ke ID akun Anda. Gunakan ArnLike kondisi ArnEquals atau untuk membatasi ruang lingkup ke basis pengetahuan tertentu.

catatan

Sebagai praktik terbaik untuk tujuan keamanan, ganti * dengan ID basis pengetahuan tertentu setelah Anda membuatnya.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012: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.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:ListFoundationModels", "bedrock:ListCustomModels" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-embed-text-v1", "arn:aws:bedrock:us-east-1::foundation-model/cohere.embed-english-v3", "arn:aws:bedrock:us-east-1::foundation-model/cohere.embed-multilingual-v3" ] } ] }

Jika Anda menggunakan model TwelveLabs Marengo Embed 3.0 embedding, basis pengetahuan akan memanggil model secara sinkron dan asinkron, sehingga peran tersebut memerlukan izin untuk keduanya. Lampirkan pernyataan berikut, ganti ${Region} dan ${AccountId} dengan ID akun Wilayah AWS dan untuk basis pengetahuan Anda, dan ${InferenceProfileId} dengan ID profil inferensi yang Anda gunakan. AR foundation-model N menggunakan * untuk Wilayah alih-alih Wilayah tertentu. Ini diperlukan karena profil inferensi lintas wilayah dapat merutekan pemanggilan model ke model pondasi yang mendasarinya di salah satu anggotanya. Wilayah AWS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "BedrockInvokeModelStatement", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/twelvelabs.marengo-embed-3-0-v1:0", "arn:aws:bedrock:${Region}:${AccountId}:inference-profile/${InferenceProfileId}", "arn:aws:bedrock:${Region}:${AccountId}:async-invoke/*" ] }, { "Sid": "BedrockGetAsyncInvokeStatement", "Effect": "Allow", "Action": [ "bedrock:GetAsyncInvoke" ], "Resource": [ "arn:aws:bedrock:${Region}:${AccountId}:async-invoke/*" ] } ] }
catatan

Kebijakan sebelumnya menyertakan profil inferensi ARN karena di beberapa Wilayah AWS Anda harus menentukan profil inferensi untuk TwelveLabs Marengo Embed 3.0 model saat Anda membuat basis pengetahuan. Di Wilayah tersebut, basis pengetahuan menggunakan profil inferensi dan model on-demand, sehingga peran memerlukan akses ke keduanya. Jika Anda tidak menggunakan profil inferensi, Anda dapat menghilangkan profil inferensi ARN dari daftar. Resource

Untuk menentukan apakah Wilayah yang Anda gunakan memerlukan profil inferensi, lihatPemrosesan multimodal asli.

Izin untuk tujuan penyimpanan multimodal Anda

Tujuan penyimpanan multimodal adalah bucket Amazon S3 yang digunakan untuk memproses dan menelan konten multimodal ke dalam basis pengetahuan Anda. Amazon Bedrock Knowledge Bases membuat folder aws/ awalan di dalam bucket Anda untuk akses mudah.

Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk membaca, menulis, dan menghapus konten ini. Ganti amzn-s3-demo-bucket dengan nama bucket penyimpanan multimodal Anda.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3MultimodalStorageListStatement", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "S3MultimodalStorageObjectStatement", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] } ] }

Izin untuk mengakses sumber data Anda

Pilih dari sumber data berikut untuk melampirkan izin yang diperlukan untuk peran tersebut.

Izin untuk mengakses sumber data Amazon S3 Anda

Jika sumber data Anda adalah Amazon S3, lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses bucket S3 yang akan Anda sambungkan sebagai sumber data.

Jika Anda mengenkripsi sumber data dengan AWS KMS kunci, lampirkan izin untuk mendekripsi kunci ke peran dengan mengikuti langkah-langkah diIzin untuk mendekripsi AWS KMS kunci untuk sumber data Anda di Amazon S3.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "S3ListBucketStatement", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } }, { "Sid": "S3GetObjectStatement", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }

Izin untuk mengakses sumber data Confluence

Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Confluence.

catatan

secretsmanager:PutSecretValuehanya diperlukan jika Anda menggunakan otentikasi OAuth 2.0 dengan token penyegaran.

Token OAuth2.0 akses Confluence memiliki waktu kedaluwarsa default 60 menit. Jika token ini kedaluwarsa saat sumber data Anda melakukan sinkronisasi (pekerjaan sinkronisasi), Amazon Bedrock akan menggunakan token penye garan yang disediakan untuk membuat ulang token ini. Regenerasi ini menyegarkan token akses dan penyegaran. Agar token tetap diperbarui dari pekerjaan sinkronisasi saat ini ke pekerjaan sinkronisasi berikutnya, Amazon Bedrock memerlukan write/put izin untuk kredenSIAL rahasia Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${Region}:${AccountId}:secret:${SecretId}" ] }] }

Izin untuk mengakses sumber SharePoint data Microsoft Anda

Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Microsoft SharePoint.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${Region}:${AccountId}:secret:${SecretId}" ] }] }
catatan

Jika Anda menggunakan otentikasi berbasis sertifikat (X.509) dan menyimpan sertifikat Anda di bucket Amazon S3, Anda juga harus memberikan s3:GetObject izin ke peran layanan untuk bucket dan kunci tempat file sertifikat (.pfx atau.pem) disimpan. Contoh berikut menunjukkan pernyataan kebijakan tambahan yang diperlukan:

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::${CertificateBucketName}/${CertificateKeyPath}" ] }] }

Izin untuk mengakses sumber data Web Crawler Anda

Lampirkan kebijakan berikut untuk memberikan izin bagi peran mengakses situs web melalui Web Crawler. Jika situs web Anda memerlukan otentikasi, sertakan izin untuk mengakses AWS Secrets Manager rahasia yang menyimpan kredenSIAL Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${Region}:${AccountId}:secret:${SecretId}" ] }] }

Izin untuk mengakses sumber OneDrive data Microsoft Anda

Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Microsoft OneDrive.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${Region}:${AccountId}:secret:${SecretId}" ] }] }

Izin untuk mengakses sumber data Google Drive Anda

Lampirkan kebijakan berikut untuk memberikan izin bagi peran untuk mengakses Google Drive.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${Region}:${AccountId}:secret:${SecretId}" ] }] }