將許可政策連接至 AWS Secrets Manager 秘密 - AWS Secrets Manager

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

將許可政策連接至 AWS Secrets Manager 秘密

在資源型政策中,您可以指定能夠存取秘密的人員,以及他們可以對秘密執行的動作。您可以使用資源型政策:

  • 將單一秘密的存取權授予多個使用者和角色。

  • 將存取權授與其他 AWS 帳戶中的使用者或角色。

請參閱AWS Secrets Manager 的許可政策範例

在將資源型政策連接至主控台中的秘密時,Secrets Manager 會使用自動推理引擎 Zelkova 和 API ValidateResourcePolicy,防止您將秘密的存取權授予各種 IAM 委託人。您也可以透過 CLI 或開發套件呼叫帶有 BlockPublicPolicy 參數的 PutResourcePolicy API。

重要

資源原則驗證和BlockPublicPolicy參數可防止透過直接附加至密碼的資源原則授予公用存取權,協助保護您的資源。除了使用這些功能之外,請仔細檢查下列原則,以確認它們不會授予公開存取權:

  • 附加至關聯 AWS 主體 (例如 IAM 角色) 的身分識別型政策

  • 附加至關聯 AWS 資源的以資源為基礎的政策 (例如, AWS Key Management Service (AWS KMS) 鍵)

若要檢閱密碼的權限,請參閱判斷誰有存取 秘密的許可

若要檢視、變更或刪除秘密的資源政策 (主控台)
  1. https://console.aws.amazon.com/secretsmanager/ 開啟 Secrets Manager 主控台。

  2. 從秘密清單中選擇秘密。

  3. 在秘密詳細資訊頁面的概觀分頁上,在資源許可區段中,選擇編輯許可

  4. 在程式碼欄位中,執行以下其中一項作業,然後選擇 Save (儲存):

    • 若要連接或修改資源政策,請輸入該政策。

    • 若要刪除政策,請清除程式碼欄位。

AWS CLI

範例 擷取資源政策

下列 get-resource-policy 範例會擷取連接至機密的以資源為基礎的政策。

aws secretsmanager get-resource-policy \ --secret-id MyTestSecret
範例 刪除資源政策

下列 delete-resource-policy 範例會刪除連接至機密的以資源為基礎的政策。

aws secretsmanager delete-resource-policy \ --secret-id MyTestSecret
範例 新增資源政策

下列 put-resource-policy 範例會將許可政策新增至機密,首先檢查政策是否不提供機密的廣泛存取權限。系統會從檔案讀取政策。若要取得更多資訊,請AWS CLI 參閱《 AWS CLI 使用指南》中的〈從檔案載入參數〉。

aws secretsmanager put-resource-policy \ --secret-id MyTestSecret \ --resource-policy file://mypolicy.json \ --block-public-policy

mypolicy.json 的內容:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }

AWS SDK

若要擷取與秘密相連的政策,請使用 GetResourcePolicy

若要刪除與秘密相連的政策,請使用 DeleteResourcePolicy

若要將政策連接至秘密,請使用 PutResourcePolicy。如果原本就已連接政策,命令會以新政策取而代之。政策必須格式化為 JSON 結構化文字。請參閱 JSON 政策文件結構。使用 AWS Secrets Manager 的許可政策範例 開始撰寫政策。

如需更多詳細資訊,請參閱 AWS 開發套件