Lambda function で Secrets Manager の値をローテーションする
Secrets Manager に格納された値を Lambda function でローテートできる
ドキュメント: https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets-lambda-function-overview.html
コードのひながた: https://github.com/aws-samples/aws-secrets-manager-rotation-lambdas/blob/master/SecretsManagerRotationTemplate/lambda_function.py
たとえば Vault/Secrets Engine/GCP を利用する場合に役立つ
ひとつのサービスアカウントに 10 コまでしか private key を保持できない
Lambda function から Vault を経由して GCP のクレデンシャルを得る場合に、同時実行数が増えると 10 コ制限にあたってしまう
そこで Lambda function からは Secrets Manager からクレデンシャルを読むことにし、この機能を利用して定期的に Vault からクレデンシャルを更新する、という実装が可能
自動ローテートの最小の日数は 1 日
テストするためには RotateSecret API を呼び出して実行させるとよさそう: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_RotateSecret.html
#AWS