AWS Secrets Manager の認証とアクセスコントロール
Secrets Manager は AWS Identity and Access Management (IAM) を使用して、シークレットへのアクセスを保護します。IAM は認証とアクセスコントロールを提供します。認証は、リクエストを実行するアイデンティティを検証するものです。Secrets Manager は、パスワード、アクセスキー、および多要素認証 (MFA) トークンでのサインインプロセスを使用して、ユーザーのアイデンティティを検証します。AWS へのサインインを参照してください。アクセスコントロールは、シークレットなどの AWS リソースで、承認された個人のみがオペレーションを実行できるようにします。Secrets Manager は、ポリシーを使用して、リソースにアクセスできるユーザー、およびそのアイデンティティがそれらのリソースに対して実行できるアクションを定義します。IAM でのポリシーとアクセス許可を参照してください。
トピック
AWS Secrets Manager のアクセス許可に関するリファレンス
Secrets Manager のアクセス許可リファレンスは、サービス認証リファレンスの AWS Secrets Manager のアクション、リソース、条件キーで利用できます。
Secrets Manager 管理者のアクセス許可
Secrets Manager 管理者のアクセス許可を付与するには、[Adding and removing IAM identity permissions] (IAM アイデンティティのアクセス許可の追加および削除) をクリックし、次のポリシーをアタッチします。
エンドユーザーには管理者のアクセス許可を付与しないことをお勧めします。これを付与すると、ユーザーはシークレットを作成および管理できますが、ローテーションを有効にするために必要なアクセス許可 (IAMFullAccess) により、エンドユーザーには適切ではない重要なアクセス許可が付与されます。
シークレットへのアクセス許可
IAM アクセス許可ポリシーを使用すると、シークレットにアクセスできるユーザーまたはサービスを制御できます。アクセス許可のポリシーは、誰がどのアクションをどのリソースで実行できるかを示します。次のようにできます:
Lambda ローテーション関数のアクセス許可
Secrets Manager は AWS Lambda 関数を使用してシークレットをローテーションします。Lambda 関数には、シークレットと、シークレットにその認証情報が含まれているデータベースまたはサービスへのアクセス許可が必要です。ローテーションへのアクセス許可 を参照してください。
暗号化キーのアクセス許可
Secrets Manager は AWS Key Management Service (AWS KMS) キーを使用してシークレットを暗号化します。AWS マネージドキー aws/secretsmanager には正しいアクセス許可が自動的に割り当てられています。別の KMS キーを使用する場合、Secrets Manager にはそのキーに対するアクセス許可が必要です。KMS キーのアクセス許可 を参照してください。
レプリケーション権限
IAM アクセス許可ポリシーを使用すると、どのユーザーまたはサービスがシークレットを他のリージョンに複製できるかを制御できます。AWS Secrets Manager レプリケーションを防止する を参照してください。