creating-secrets-using-best-practices について
creating-secrets-using-best-practicesは、セキュリティ制御を用いてAWS Secrets Managerのシークレットを作成・管理するスキルです。一般的なシークレットの種類、KMS暗号化、ローテーション、IAM権限、監査、ライフサイクル管理を扱います。
主な機能
- 01データベース、API、OAuth、カスタムシークレットの構成
- 02専用KMSキーによる暗号化
- 03自動ローテーションの設定
- 04最小権限のIAMポリシー適用
- 05CloudTrail監査とライフサイクル管理
活用シーン
- 01安全なデータベース認証情報の作成
- 02APIキーやOAuthトークンの保管
- 03シークレットローテーションの設定
- 04KMS、ローテーション、アクセス問題の調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ aws/ agent-toolkit-for-aws --skill creating-secrets-using-best-practicesインストール後、Claude Code で/creating-secrets-using-best-practicesを入力して読み込まれたか確認します。
同梱ファイルreferences/create-secrets-using-best-practices.md
詳細
ベストプラクティスに沿ったシークレットの作成
概要
本番環境レベルのセキュリティ制御(KMS による暗号化、自動ローテーション、最小権限の IAM ポリシー、CloudTrail による監査、ライフサイクル管理)を用いた、AWS Secrets Manager でのシークレットの作成と管理に関するドメイン知識です。
ベストプラクティスに沿ったシークレットの作成
AWS Secrets Manager で適切に保護されたシークレットを作成するには、手順に正確に従ってください。 詳しくは、シークレットの作成手順を参照してください。
この手順では、データベース認証情報、API キー、OAuth トークン、カスタムシークレットの 4 種類をサポートしています。それぞれの種類に適した形式で構成され、専用の KMS キーで暗号化されます。
トラブルシューティング
KMS キーへのアクセスに関する問題
IAM プリンシパルに kms:CreateKey および kms:PutKeyPolicy のアクセス許可があること、また、キーのポリシーで kms:ViaService を secretsmanager.<region>.amazonaws.com に制限したうえで、kms:GenerateDataKey、kms:Decrypt、kms:DescribeKey が許可されていることを確認してください。詳しくは、手順全体を参照してください。
ローテーション設定の失敗
Lambda ローテーション関数が存在し、適切なアクセス許可があり、対象システムに接続できることを確認してください。ローテーション関数の CloudWatch ログを確認してください。
シークレットへのアクセス拒否
IAM ポリシーが正しいプリンシパルにアタッチされていること、KMS キーのポリシーで復号(書き込み/ローテーションの場合は kms:GenerateDataKey も)が許可されていること、プリンシパルが HTTPS を使用していることを確認してください。詳しくは、手順全体を参照してください。