在 中存放資料庫登入資料AWS Secrets Manager - Amazon Redshift

Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊,請參閱部落格文章

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

在 中存放資料庫登入資料AWS Secrets Manager

當您呼叫資料 API 時,您可以透過在 AWS Secrets Manager 中使用機密來傳遞叢集或無伺服器工作群組的憑證。若要這樣傳遞登入資料,請指定秘密的名稱或秘密的 Amazon Resource Name (ARN)。

若要使用 Secrets Manager 來儲存憑證,您需要 SecretManagerReadWrite 受管政策許可。如需最低許可的詳細資訊,請參閱AWS Secrets Manager《 使用者指南》中的使用 Secrets Manager 建立和管理AWS秘密

將憑證儲存在 Amazon Redshift 叢集的機密中
  1. 使用 AWS Secrets Manager主控台建立包含叢集登入資料的秘密:

    • 當您選擇儲存新的機密時,請選擇 Redshift 叢集的憑證

    • 使用者名稱 (資料庫使用者)、密碼資料庫叢集 (叢集識別碼) 的值儲存在機密中。

    • 使用索引鍵 RedshiftDataFullAccess 標記機密。AWS受管政策AmazonRedshiftDataFullAccess僅允許secretsmanager:GetSecretValue以金鑰 標記的秘密執行 動作RedshiftDataFullAccess

    如需說明,請參閱《AWS Secrets Manager 使用者指南》中的建立基本秘密

  2. 使用 AWS Secrets Manager主控台來檢視您建立之秘密的詳細資訊,或執行 aws secretsmanager describe-secretAWS CLI命令。

    記下秘密的名稱和 ARN。您可以在呼叫資料 API 時使用這些資料。

將憑證儲存在無伺服器工作群組的機密中
  1. 使用 AWS Secrets ManagerAWS CLI命令來存放秘密,其中包含無伺服器工作群組的登入資料:

    • 在檔案中建立您的秘密,例如名為 mycreds.json 的 JSON 檔案。在檔案中提供使用者名稱 (資料庫使用者) 和密碼的值。

      { "username": "myusername", "password": "mypassword" }
    • 將值儲存在機密中,並使用索引鍵 RedshiftDataFullAccess 標記機密。

      aws secretsmanager create-secret --name MyRedshiftSecret --tags Key="RedshiftDataFullAccess",Value="serverless" --secret-string file://mycreds.json

      以下將顯示輸出。

      { "ARN": "arn:aws:secretsmanager:region:accountId:secret:MyRedshiftSecret-mvLHxf", "Name": "MyRedshiftSecret", "VersionId": "a1603925-e8ea-4739-9ae9-e509eEXAMPLE" }

    如需詳細資訊,請參閱《AWS Secrets Manager 使用者指南》中的使用 AWS CLI 建立基本機密

  2. 使用 AWS Secrets Manager主控台來檢視您建立之秘密的詳細資訊,或執行 aws secretsmanager describe-secretAWS CLI命令。

    記下秘密的名稱和 ARN。您可以在呼叫資料 API 時使用這些資料。