控跨帳户資料庫的存取 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

控跨帳户資料庫的存取

以下是控制跨賬户數據保護訪問的注意事項。

在不同狀態管理數據庫

使用跨賬户數據庫,數據庫的不同狀態需要您採取行動。數據保護的狀態可以是「活動」、「需要操作」或「非活動」。

下面介紹了每個數據保護狀態及其必需的操作:

  • 創建者羣集管理員創建數據保護時,生產者羣集上的數據保護狀態為等待授權。創建者羣集管理員可以授權數據使用者訪問數據保護。使用者羣集管理員沒有任何操作。

  • 創建者羣集管理員授權數據保護時,數據保護狀態將變為已授權在生產者羣集上。生產者羣集管理員沒有任何操作。當數據保護的數據使用者至少存在一個關聯時,數據保護狀態將從已授權作用中

    數據保護共享狀態將變為可用(需要在 Amazon Redshift 控制台上執行操作)在使用者羣集上。使用者羣集管理員可以將數據保護與數據使用者關聯,也可以拒絕數據保護。使用者羣集管理員還可以使用AWS CLI命令describeDatashareforConsumer以查看資料庫的狀態。或者,管理員可以使用 CLI 命令describeDatashare並提供資料保護 Amazon Resource Name (ARN),以查看資料保護的狀態。

  • 當使用者羣集管理員將數據保護與數據使用者關聯時,數據保護狀態將變為作用中在生產者羣集上。當數據保護的數據使用者至少存在一個關聯時,數據保護狀態將從已授權作用中。生產者羣集管理員不需要執行任何操作。

    數據保護狀態變為作用中在使用者羣集上。使用者羣集管理員不需要執行任何操作。

  • 當使用者羣集管理員從數據保護中刪除使用者關聯時,數據保護狀態將變為作用中或者已授權。成為作用中當數據保存與另一個數據使用者至少存在一個關聯時。成為已授權當生產者羣集上的數據保護沒有任何消費者關聯時。生產者羣集管理員沒有任何操作。

    數據保護狀態變為需執行的動作(如果刪除了所有關聯)。當數據保護可供使用者使用時,使用者羣集管理員可以將數據保護與數據使用者重新關聯。

  • 當使用者羣集管理員拒絕數據保護時,生產者羣集上的數據保護狀態將變為需執行的動作已拒絕在使用者羣集上。創建者羣集管理員可以重新授權數據保護。使用者羣集管理員沒有任何操作。

  • 當生產者羣集管理員從數據保護中刪除授權時,數據保護的狀態將變為需執行的動作在生產者羣集上。如有必要,生產者羣集管理員可以選擇重新授權數據保護。使用者羣集管理員不需要執行任何操作。

使用 IAM 策略管理對數據共享 API 操作的訪問

要控制對數據共享 API 操作的訪問,請使用基於 IAM 操作的策略。如需如何管理 IAM 政策的詳細資訊,請參管理 IAM 政策中的IAM User Guide

如需使用資料共享 API 操作所需的權限,請參使用數據共享 API 操作所需的權限中的卓越 Amazon Redshift 叢集管理指南

為了使跨賬户數據共享更加安全,您可以使用條件密鑰ConsumerIdentifier(針對)AuthorizeDataShareDeauthorizeDataShareAPI 操作。通過這樣做,你可以明確控制哪些AWS 帳戶可以調用兩個 API 操作。

您可以拒絕授權或取消授權任何不屬於您自己帳户的消費者的數據共享。若要執行此操作,請指定AWS 帳戶IAM 政策中的編號。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Deny", "Action": [ "redshift:AuthorizeDataShare", "redshift:DeauthorizeDataShare" ], "Resource": "*", "Condition": { "StringNotEquals": { "redshift:ConsumerIdentifier": "555555555555" } } } ] }

您可以允許具有 DataShareArn testshare2顯式與消費者共享AWS 帳戶中的一個項目。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "redshift:AuthorizeDataShare", "redshift:DeauthorizeDataShare" ], "Resource": "arn:aws:redshift:us-east-1:666666666666:datashare:af06285e-8a45-4ee9-b598-648c218c8ff1/testshare2", "Condition": { "StringEquals": { "redshift:ConsumerIdentifier": "111122223333" } } } ] }

管理叢集加密

跨AWS 帳戶,則必須對生產者羣集和使用者羣集進行加密。

在 Amazon Redshift 中,您可以為您的叢集啟用資料庫加密,以幫助保護靜態資料。啟用叢集的加密時,叢集及其快照的資料塊和系統元數據會加密。您可以在啟動叢集時啟用加密,或修改未加密的叢集來使用AWS Key Management Service(AWS KMS) 加密保存。如需 Amazon Redshift 資料庫加密的詳細資訊,請參Amazon Redshift 資料庫加密中的卓越 Amazon Redshift 叢集管理指南

為了保護傳輸中的數據,所有傳輸中的數據都會通過生產者羣集的加密架構進行加密。加載數據時,使用者羣集會採用此加密模式。然後,使用者羣集作為普通加密集羣運行。生產者和使用者之間的通信也會使用共享密鑰架構加密。如需在傳輸途中加密的詳細資訊,傳輸中加密