本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 管理 Amazon Redshift 管理員密碼 AWS Secrets Manager
Amazon Redshift 可與 整合 AWS Secrets Manager ,以在加密的秘密內產生和管理管理員憑證。使用 AWS Secrets Manager,您可以將管理員密碼取代為 API呼叫,以程式設計方式在需要時擷取秘密。使用機密而非硬式編碼憑證可降低這些憑證遭到洩露或遭到入侵的風險。如需 的詳細資訊 AWS Secrets Manager,請參閱 AWS Secrets Manager 使用者指南。
當您執行下列其中一個操作 AWS Secrets Manager 時,您可以指定 Amazon Redshift 使用 管理密碼:
-
建立佈建叢集或無伺服器命名空間
-
編輯、更新或修改佈建叢集或無伺服器命名空間的管理員憑證
-
從快照還原叢集或無伺服器命名空間
當您指定 Amazon Redshift 在 中管理管理員密碼時 AWS Secrets Manager,Amazon Redshift 會產生密碼並將其儲存在 Secrets Manager 中。您可以直接在 中存取秘密 AWS Secrets Manager ,以擷取管理員使用者的憑證。或者,如果您需要從另一個 AWS 帳戶存取秘密,您可以指定客戶受管金鑰來加密秘密。您也可以使用 AWS Secrets Manager 提供的KMS金鑰。
Amazon Redshift 會管理機密的設定,並依預設每 30 天輪換一次密碼。您可以隨時手動輪換機密。如果您刪除在 中管理秘密的佈建叢集或無伺服器命名空間 AWS Secrets Manager,則也會刪除秘密及其相關聯的中繼資料。
若要使用秘密管理的憑證連線至叢集或無伺服器命名空間,您可以使用 AWS Secrets Manager Secrets Manager 主控台或 Secrets Manager API呼叫來擷取GetSecretValue
秘密。如需詳細資訊,請參閱 AWS Secrets Manager 使用者指南 中的從 擷取秘密 AWS Secrets Manager,並使用 AWS Secrets Manager 秘密中的憑證連線至SQL資料庫。
AWS Secrets Manager 整合所需的許可
使用者必須具有必要的權限,才能執行與 AWS Secrets Manager 整合相關的操作。建立IAM政策,授予許可,以對所需的指定資源執行特定API操作。然後將這些政策連接到需要這些許可的IAM許可集或角色。如需詳細資訊,請參閱Amazon Redshift 中的身分和存取管理。
指定 Amazon Redshift 在 中管理管理員密碼的使用者 AWS Secrets Manager 必須具有執行下列操作的許可:
-
secretsmanager:CreateSecret
-
secretsmanager:RotateSecret
-
secretsmanager:DescribeSecret
-
secretsmanager:UpdateSecret
-
secretsmanager:DeleteSecret
-
secretsmanager:GetRandomPassword
-
secretsmanager:TagResource
如果使用者想要在佈建叢集的 MasterPasswordSecretKmsKeyId
參數中傳遞KMS金鑰,或無伺服器命名空間的 AdminPasswordSecretKmsKeyId
參數中傳遞金鑰,除了上述許可之外,還需要下列許可。
-
kms:Decrypt
-
kms:GenerateDataKey
-
kms:CreateGrant
-
kms:RetireGrant
管理員密碼秘密輪換
根據預設,Amazon Redshift 會每 30 天自動輪換您的機密,以確保您的憑證不會長時間保持不變。當 Amazon Redshift 輪換管理員密碼秘密時, 會 AWS Secrets Manager 更新現有的秘密以包含新的管理員密碼。Amazon Redshift 會變更叢集的管理員密碼,以符合已更新之機密中的密碼。
您可以使用 AWS Secrets Manager立即輪換機密,而無需等待排程的輪換。如需輪換機密的相關資訊,請參閱《AWS Secrets Manager 使用者指南》中的輪換 AWS Secrets Manager 機密。
搭配使用 AWS Secrets Manager 與 Amazon Redshift 的考量
使用 AWS Secrets Manager 管理佈建叢集或無伺服器命名空間的管理員憑證時,請考慮下列事項:
-
當您暫停由 管理管理員憑證的叢集時 AWS Secrets Manager,將不會刪除叢集的秘密,而且您將繼續收到秘密的帳單。只有刪除叢集時才會刪除機密。
-
如果您的叢集在 Amazon Redshift 嘗試輪換其附加的機密時暫停了,輪換會失敗。在這種情況下,即使您繼續叢集,Amazon Redshift 還是會停止自動輪換,而且不會嘗試再次輪換。您必須使用
secretsmanager:RotateSecret
API 呼叫重新啟動自動輪換排程,才能繼續 AWS Secrets Manager 自動輪換秘密。 -
如果在 Amazon Redshift 嘗試輪換其附加的機密時,您的無伺服器命名空間沒有相關聯的工作群組,則輪換會失敗,且不會嘗試再次輪換,即使在您附加工作群組之後也是如此。您必須使用
secretsmanager:RotateSecret
API 呼叫重新啟動自動輪換排程,才能繼續 AWS Secrets Manager 自動輪換秘密。