AWS Lambda シークレットをローテーションするために使用します。 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Lambda シークレットをローテーションするために使用します。

AWS Well-Architected Frameworkでは、シークレットを安全に保存して使用することを推奨しています。このベストプラクティスでは、認証情報のローテーションを定期的に自動化することを推奨しています。ローテーションとは、定期的にシークレット情報を更新して、攻撃者が認証情報にアクセスするのをより困難にするプロセスです。多くのコンプライアンスフレームワークや規制では、シークレットのローテーションも義務付けられています。

TerraformIaC では、 AWS Secrets Manager AWS Lambdaとを使用して自動ローテーションを設定できます。Secrets Manager では、シークレットの自動ローテーションを設定できます。Secrets Manager がシークレットをローテーションすると、シークレットおよびデータベースまたはサービスの認証情報が更新されます。

データベースの場合は、Secrets Manager でプライマリ認証情報を管理し、定期的にシークレットをローテーションすることをお勧めします。Secrets Manager には、いくつかのタイプのデータベース認証情報用のLambda用のローテーション関数テンプレートが用意されています。詳細については、Secrets Manager AWS Secrets Manager ドキュメントのローテーション関数テンプレートとのコードサンプルを参照してください GitHub。シークレットや機密データのローテーションに使用できる Terraform IaC の例を以下に示します。

resource "aws_secretsmanager_secret_rotation" "createrotation" { count = var.needrotation == true ? 1 : 0 secret_id = aws_secretsmanager_secret.initiatesecret.id rotation_lambda_arn = aws_lambda_function.rotationlambda.arn rotation_rules { automatically_after_days = 1 } }

次のアーキテクチャ図は、Secrets Manager、Amazon VPC エンドポイント、および Lambda 関数を使用して、内の機密データをローテーションする方法を示しています。 AWS アカウント

Lambda を使用してシークレットをローテーションする AWS Secrets Manager