本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon S3
Amazon S3 是將資料當做物件存放在儲存貯體中的物件儲存服務。您可以連接 Amazon S3 儲存貯體做為受管知識庫的資料來源,以擷取您存放在其中的物件。
支援的功能
-
透過個別中繼資料檔案記錄中繼資料欄位
-
使用檔案模式和 S3 金鑰字首來包含和排除內容篩選條件
-
新增、更新和刪除內容的增量內容同步
-
跨帳戶 Amazon S3 儲存貯體存取
-
文件層級存取控制 (ACLs),搭配客戶提供的 ACL 檔案
先決條件
在 Amazon S3 中,請確定您:
-
請注意 Amazon S3 儲存貯體名稱和儲存貯體擁有者 AWS 的帳戶 ID。儲存貯體必須是與您知識庫位於相同 AWS 區域中的一般用途儲存貯體,而且您必須具有存取該儲存貯體的許可。
-
如果儲存貯體位於與知識庫不同的 AWS 帳戶中,或使用客戶受管 KMS 金鑰加密,請設定儲存貯體政策和 (如果適用) KMS 金鑰政策,以允許從您的知識庫服務角色存取。請參閱 跨帳戶和 KMS 加密存取的儲存貯體政策。
在您的帳戶中 AWS ,請確定您:
-
在知識庫的 AWS Identity and Access Management (IAM) 角色/許可政策中包含連接到資料來源的必要許可。如需必要許可的資訊,請參閱 存取您的資料來源的許可。
跨帳戶和 KMS 加密存取的儲存貯體政策
如果您的 Amazon S3 儲存貯體位於與知識庫不同的 AWS 帳戶中,或者使用客戶受管 KMS 金鑰加密,請新增資源型政策來授予知識庫服務角色存取權。下列範例顯示所需的最低陳述式。
跨帳戶儲存貯體政策
在擁有 Amazon S3 儲存貯體的帳戶中,將下列陳述式新增至儲存貯體政策。將 kb-account-id 取代為建立知識庫的帳戶 ID、將 kb-service-role 取代為知識庫服務角色的名稱,將 bucket-name 取代為儲存貯體名稱。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBedrockKnowledgeBaseAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::kb-account-id:role/kb-service-role" }, "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket-name", "arn:aws:s3:::bucket-name/*" ] } ] }
如需更多一般指引,請參閱設定對 Amazon S3 儲存貯體的存取。
加密儲存貯體的 KMS 金鑰政策
如果您的 Amazon S3 儲存貯體使用客戶受管 KMS 金鑰加密,請將下列陳述式新增至金鑰政策。使用與跨帳戶儲存貯體政策中相同的預留位置。金鑰政策變更需要幾分鐘的時間才能傳播。
{ "Sid": "AllowBedrockKnowledgeBaseKmsAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::kb-account-id:role/kb-service-role" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
"Resource": "*" 此處的範圍為政策所連接的金鑰。
如何設定 Amazon S3 資料來源
設定 Amazon S3 資料來源包含下列步驟:
建立資料來源
連接器參數
資料來源組態使用下列連接器參數。若要連線至 Amazon S3,請在 中將 指定S3為連接器類型connectorParameters。如需包裝的欄位 connectorParameters(例如 deletionProtectionConfiguration和 mediaExtractionConfiguration),請參閱 連接資料來源。
| 欄位 | 必要 | 描述 |
|---|---|---|
bucketName |
是 | Amazon S3 儲存貯體的名稱。 |
bucketOwnerAccountId |
有條件 | 儲存貯體擁有者的帳戶 AWS ID。跨帳戶存取時需要。 |
| 欄位 | 必要 | 說明 |
|---|---|---|
inclusionPrefixes |
否 | 要包含的 Amazon S3 金鑰字首清單 (例如 documents/)。 |
exclusionPrefixes |
否 | 要排除的 Amazon S3 金鑰字首清單 (例如 archive/)。 |
inclusionPatterns |
否 | 規則表達式的清單。只會擷取其金鑰符合至少一個模式的物件。 |
exclusionPatterns |
否 | 規則表達式的清單。金鑰符合任何模式的物件不會擷取。 |
maxFileSizeInMegaBytes |
否 | 連接器擷取之任何單一檔案的大小上限,以 MB 為單位。提供 做為數值字串 (例如,"500")。預設為 "500"。 |
| 欄位 | 必要 | 說明 |
|---|---|---|
metadataFilesPrefix |
否 | 存放文件中繼資料檔案 (.metadata.json) 的 Amazon S3 字首。 |
aclEnabled |
否 | 設定為 true以啟用文件層級存取控制。您無法在建立資料來源後變更此設定。如需詳細資訊,請參閱文件層級存取控制。 |
aclConfiguration |
有條件 | 包含 globalAccessControlListS3Uri — JSON 檔案的 Amazon S3 URI,會將金鑰字首映射至存取控制項目。當 aclEnabled為 時必填true;當 aclEnabled為 時忽略false。請參閱 文件層級存取控制。 |
文件中繼資料檔案
您可以上傳附屬檔案,將中繼資料連接到每個文件。針對每個文件,在相同的 Amazon S3 路徑中建立名為 的檔案。中繼資料檔案不得超過 10 KB。例如,除了 之外filename.extension.metadata.jsonreport.pdf,report.pdf.metadata.json使用下列內容上傳 :
{ "metadataAttributes": { "company": { "value": { "type": "STRING", "stringValue": "BioPharm Innovations" } }, "created_date": { "value": { "type": "NUMBER", "numberValue": 20221205 } }, "author": { "value": { "type": "STRING", "stringValue": "Lisa Thompson" } } } }
如需支援的屬性資料類型和您可以在查詢時間套用的篩選運算子的相關資訊,請參閱中繼資料和篩選。