翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アクセス許可ポリシーを AWS Secrets Manager シークレットにアタッチする
リソースベースのポリシーで、シークレットにアクセスできるユーザーと、ユーザーがそのシークレットで実行できるアクションを指定します。リソースベースのポリシーを使用して、以下を行うことができます。
-
単一のシークレットへのアクセスを複数のユーザーまたはロールに許可します。
-
AWS 他のアカウントのユーザーまたはロールにアクセス権を付与します。
のアクセス許可ポリシーの例 AWS Secrets Manager を参照してください。
コンソールでリソースベースのポリシーをシークレットにアタッチすると、Secrets Manager は自動化された推論エンジン ZelkovaValidateResourcePolicy
を使用して、シークレットへのアクセス許可を幅広い範囲の IAM プリンシパルに付与しないようにします。または、CLI または SDK からの BlockPublicPolicy
パラメータを含む PutResourcePolicy
API を呼び出しします。
重要
BlockPublicPolicy
リソースポリシーの検証とパラメータは、シークレットに直接関連付けられているリソースポリシーによってパブリックアクセスが許可されるのを防ぐことで、リソースを保護するのに役立ちます。これらの機能を使用することに加えて、以下のポリシーを注意深く調べて、パブリックアクセスを許可していないことを確認してください。
AWS 関連するプリンシパル (IAM ロールなど) にアタッチされている ID ベースのポリシー
AWS 関連リソースにアタッチされたリソースベースのポリシー (() キーなど) AWS Key Management Service AWS KMS
シークレットへの権限を確認するには、を参照してください。 シークレットへのアクセス許可を持つユーザーを特定する
シークレットのリソースポリシーを表示、変更、または削除するには (コンソール)
Secrets Manager のコンソール (https://console.aws.amazon.com/secretsmanager/
) を開きます。 シークレットのリストから、自分のシークレットを選択します。
-
シークレットの詳細ページの [概要] タブの [リソース許可] セクションで、[許可を編集] を選択します。
-
[Code] (コード) フィールドで、次のいずれかの操作を行い、[Save] (保存する) をクリックします。
-
リソースポリシーをアタッチまたは変更するには、ポリシーを入力します。
-
ポリシーを削除するには、[Code] (コード) フィールドをクリアします。
-
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 SDKs」を参照してください。