AWS Secrets Manager シークレットへのアクセス許可を持つユーザーを特定する
デフォルトでは、IAM アイデンティティにはシークレットへのアクセス許可がありません。シークレットへのアクセスを承認する時、Secrets Manager はシークレットにアタッチされたリソースベースのポリシー、およびリクエストを送信している IAM ユーザーまたは IAM ロールにアタッチされたすべてのアイデンティティベースのポリシーを評価します。これを行うために、Secrets Manager は、IAM ユーザーガイドの [Determining whether a request is allowed or denied] (リクエストの許可または拒否を決定する) に記載されているものと類似したプロセスを使用します。
複数のポリシーが 1 つのリクエストに適用される場合、Secrets Manager は階層を使用してアクセス許可を制御します。
-
ポリシー内のステートメントに明示的な
denyが含まれている場合、リクエストアクションとリソースに一致します。この明示的な
denyによって、他のすべての内容が上書きされ、アクションがブロックされます。 -
明示的な
denyはないが、ステートメントに明示的なallowが含まれている場合、リクエストアクションとリソースに一致します。この明示的な
allowによって、リクエスト内のアクションにステートメント内のリソースへのアクセスが付与されます。アイデンティティとシークレットが 2 つの異なるアカウントにある場合は、シークレットのリソースポリシーとアイデンティティにアタッチされたポリシーの両方で
allowが含まれている必要があります。含まれていない場合、AWS はリクエストを拒否します。詳しくは、「クロスアカウントアクセス」を参照してください。 -
リクエストアクションとリソースに一致する明示的な
allowが含まれているステートメントがない場合AWS はデフォルトでリクエストを拒否します。これは暗黙的拒否と呼ばれます。
シークレットのリソースベースのポリシーを表示するには
-
次のいずれかを行います:
-
Secrets Manager のコンソール (https://console.aws.amazon.com/secretsmanager/
) を開きます。シークレットの詳細ページの [Resource permissions] (リソースに対するアクセス許可) セクションで、[Edit permissions] (アクセス許可の編集) をクリックします。 -
get-resource-policyを呼び出す場合は AWS CLI を、GetResourcePolicyを呼び出す場合はAWS SDK を使用します。
-
アイデンティティベースのポリシーを使用してアクセスできるユーザーを特定するには
-
IAM ポリシーシミュレーターを使用します。IAM Policy Simulator を使用した IAM ポリシーのテストを参照してください。