本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管理員設定
Amazon Quick 管理員必須先完成下列設定任務,使用者才能建立 Amazon S3 整合和知識庫。
授予 Amazon Quick 對 Amazon S3 儲存貯體的存取權
授予 Amazon Quick 存取您組織所需的 Amazon S3 儲存貯體。無論儲存貯體位於相同 AWS 帳戶或不同帳戶中,這都會套用。
-
在 Amazon Quick admin 主控台的許可下,選擇AWS 資源。
-
在允許這些資源的存取和自動探索下,選取 Amazon S3 核取方塊。
-
選擇選取 S3 儲存貯體。
-
在選取 Amazon S3 儲存貯體對話方塊中,選擇符合您儲存貯體位置的標籤:
-
連結至快速帳戶的 S3 儲存貯體 – 從清單中選取您希望 Amazon Quick 存取的儲存貯體。根據預設,選取的儲存貯體具有唯讀許可。
-
您可以跨帳戶存取的 S3 儲存貯 AWS體 – 對於跨帳戶儲存貯體,請確定帳戶擁有者已授權您的帳戶。選擇使用不同的儲存貯體,輸入儲存貯體名稱,然後選擇新增 S3 儲存貯體。
-
-
(選用) 對於跨帳戶儲存貯體,選取限制儲存貯體存取知識庫建立者以限制存取,以便只有建立知識庫的使用者才能使用儲存貯體。
-
選擇完成。
使用者現在可以在知識庫建立期間存取選取的儲存貯體。
準備 IAM 角色和政策設定
Amazon S3 整合使用 AWS 身分驗證來存取您的 Amazon S3 儲存貯體。在使用者設定整合之前,準備您的 IAM 角色和政策組態。
所需的 IAM 許可
請確定 AWS 您的帳戶具有下列 Amazon S3 儲存貯體的最低許可:
s3:GetObject– 從儲存貯體讀取物件。s3:ListBucket– 列出儲存貯體內容。s3:GetBucketLocation– 取得儲存貯體區域資訊。s3:GetObjectVersion– 取得物件版本。s3:ListBucketVersions– 列出儲存貯體版本。
設定跨帳戶存取的 Amazon S3 儲存貯體許可
如果您要在不同 AWS 帳戶中存取 Amazon S3 儲存貯體,您必須在來源 AWS 帳戶中設定 IAM 政策。
設定跨帳戶存取的 Amazon S3 儲存貯體許可
-
登入包含 Amazon S3 儲存貯體之帳戶的 AWS 管理主控台。
-
開啟位於 https://console.aws.amazon.com/s3/
的 Amazon S3 主控台。 -
選擇您要授予存取權的儲存貯體。
-
選擇 Permissions (許可),然後選擇 Bucket Policy (儲存貯體政策)。
-
使用下列元素新增儲存貯體政策:
Version– 設定為 "2012-10-17"Statement– 陣列包含具有下列項目的政策陳述式:Sid–「AllowQuickSuiteS3Access」Effect–「允許」Principal–您帳戶中 Amazon Quick 服務角色的 AWS ARN。例如,委託人看起來應該如下所示:"Principal": { "AWS": "arn:aws:iam::<quick_account_id>:role/service-role/aws-quicksight-service-role-v0" }Action– Amazon S3 許可陣列:s3:GetObject、s3:ListBucket、s3:GetBucketLocation、s3:GetObjectVersion、s3:ListBucketVersionsResource– "*" (適用於目前的金鑰),Amazon S3 儲存貯體路徑應如下所示:"Resource": [ "arn:aws:s3:::bucket_name"]
-
選擇儲存變更。
設定 KMS 金鑰許可 (如果您的儲存貯體使用加密)
如果您的 Amazon S3 儲存貯體使用 AWS KMS 加密,請完成下列步驟。
設定 KMS 金鑰許可
-
在 https://https://console.aws.amazon.com/kms
開啟 AWS Key Management Service (AWS KMS) 主控台。 -
選擇用於加密 Amazon S3 儲存貯體的 KMS 金鑰。
-
選擇 Key policy (金鑰政策),然後選擇 Edit (編輯)。
-
使用下列結構元素將陳述式新增至金鑰政策:
Sid–「AllowQuickSuiteKMSAccess」Effect–「允許」Principal–您帳戶中 Amazon Quick 服務角色的 AWS ARN。例如,委託人看起來應該如下所示:"Principal": { "AWS": "arn:aws:iam::<quick_account_id>:role/service-role/aws-quicksight-service-role-v0" }Action– KMS 許可陣列: kms:Decrypt、 kms:DescribeKeyResource– "*" (適用於目前的金鑰),Amazon S3 儲存貯體路徑應如下所示:"Resource": [ "arn:aws:s3:::bucket_name"]
-
選擇儲存變更。
-
等待 2-3 分鐘,讓政策變更傳播。
在 Amazon Quick 中設定 Amazon S3 Connector 的 VPC 存取
VPC 許可可確保 Amazon Quick 只能透過安全的 VPC 或 VPC 端點連線存取您的 Amazon S3 儲存貯體。
必要的政策變更
將此陳述式新增至您的儲存貯體存取政策,以允許 Amazon Quick 透過 VPC 端點存取您的儲存貯體:
{ "Sid": "Allow-Quick-access" , "Principal": "arn:aws:iam::Quick Account:role/service-role/aws-quicksight-service-role-v0", "Action": "s3:*", "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ], "Condition": { "Null": { "aws:SourceVpce": "false" } } }
-
將 取代
amzn-s3-demo-bucket為您的儲存貯體名稱。 -
將 取代
Quick Account為您的 Amazon Quick 帳戶。
"aws:SourceVpce": "false" 條件可確保 Amazon Quick 只能透過 VPC 端點存取您的儲存貯體,以維護您的安全需求。
拒絕政策
如果您的儲存貯體具有透過拒絕政策將流量限制在特定 VPC 或 VPC 端點的政策,您必須反轉此政策,因為拒絕政策優先於允許政策。
例如:
{ "Version":"2012-10-17" , "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*"], "Condition": { "StringNotEquals": { "aws:SourceVpce": "vpce-0abcdef1234567890" } } } ] }
應該反轉為:
{ "Version":"2012-10-17" , "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Allow", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*"], "Condition": { "StringEquals": { "aws:SourceVpce": "vpce-0abcdef1234567890" } } } ] }
最佳實務
限制對 Amazon Quick 角色的存取
存取政策應強制執行發起人是您的 Amazon Quick 角色 ARN 或至少您的 Amazon Quick 帳戶。這可確保即使允許 VPC 流量,呼叫仍僅來自預期的來源。
安全建議
-
針對最安全的流量,將政策限制在您的 Amazon Quick 角色
-
定期檢閱您的儲存貯體政策,以確保它們遵循最低權限原則
使用 IAM 政策指派限制 Amazon S3 儲存貯體存取
您可以透過建立 IAM 政策,並透過 Amazon S3 Quick IAM 政策指派特定使用者、群組或所有使用者,來控制 Amazon Quick 使用者可用來建立知識庫的 Amazon S3 儲存貯體。這可讓您限制誰可以針對特定儲存貯體建立知識庫,包括 ACL 感知知識庫。
注意
透過 Amazon Quick 指派的 IAM 政策優先於 AWS 資源層級政策。為了確保符合您的存取需求,請適當設定您的 IAM 政策。
例如,您可以將限制性政策指派給需要存取 ACL 感知儲存貯體的特定使用者,同時將更廣泛的政策指派給非 ACL 儲存貯體的所有使用者。
步驟 1:在 IAM 中建立 Amazon S3 存取政策
在 IAM 主控台中建立 IAM AWS 政策,定義使用者可以存取哪些 Amazon S3 儲存貯體來建立知識庫。下列範例政策會授予兩個特定儲存貯體的存取權:
{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "arn:aws:s3:::*" }, { "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-1", "arn:aws:s3:::amzn-s3-demo-bucket-2" ] }, { "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-1/*", "arn:aws:s3:::amzn-s3-demo-bucket-2/*" ] }, { "Action": [ "s3:ListBucketMultipartUploads", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-1", "arn:aws:s3:::amzn-s3-demo-bucket-2" ] }, { "Action": [ "s3:PutObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-1/*", "arn:aws:s3:::amzn-s3-demo-bucket-2/*" ] } ] }
將 amzn-s3-demo-bucket-2 amzn-s3-demo-bucket-1和 取代為您要授予存取權的 Amazon S3 儲存貯體名稱。
步驟 2:在 Amazon Quick 中指派政策
建立 IAM 政策後,將其指派給 Amazon Quick 使用者或群組。
-
在 Amazon Quick admin 主控台的許可下,選擇 IAM 政策指派。
-
選擇新增指派。
-
輸入指派的名稱。
-
在選取 IAM 政策頁面上,搜尋並選取您在步驟 1 中建立的 IAM 政策。選擇下一步。
-
在指派使用者和群組頁面上,選擇下列其中一項:
-
選取指派給所有使用者和群組,將政策套用至所有目前和未來的使用者。
-
搜尋並選取要指派政策的特定使用者或群組。
選擇下一步。
-
-
在檢閱並啟用變更頁面上,驗證您的指派詳細資訊,然後選擇儲存並啟用。
未透過 IAM 政策指派明確授予存取權的使用者,將無法存取受限的 Amazon S3 儲存貯體來建立整合或知識庫。