【AWS】Secrets Manager ~ 入門編 ~

■ はじめに

https://dk521123.hatenablog.com/entry/2020/01/31/231636

の続き。
今回は、『【2】AWS Secrets Manager』を扱う。

目次

【1】AWS Secrets Manager
 補足:シークレットとは?
【2】パラメータストアとの比較
【3】シークレットキー作成
 1)作成前の準備
 2)作成手順
【4】設定値の取得
 1)AWS CLI
 2)boto3 API

【1】AWS Secrets Manager

* 認証情報(シークレット)を所有する暗号化キーで暗号化し、
   AWS Key Management Service (KMS) に保管するサービス
 => シークレット情報(RDSの認証情報など)をセキュアに一元管理できる

※ KMSについては、以下の関連記事を参照。

AWS Key Management Service (KMS)
https://dk521123.hatenablog.com/entry/2020/02/27/232553

補足:シークレットとは?

 AWS Secrets Manager における「シークレット」とは、
RDSの認証情報など、ユーザがSecrets Manager 上で
管理したい情報のオブジェクト(みたいなものだと理解している)

【2】パラメータストアとの比較

項目 パラメータストア Secrets Manager 備考
料金 無料 有料
自動ローテーション機能 なし あり

詳細

以下を参照のこと

https://qiita.com/tomoya_oka/items/a3dd44879eea0d1e3ef5

【3】シークレットキー作成

1)作成前の準備

* 独自のKMSを使用する場合は、事前にKMSキーを作成しておくこと

2)作成手順

https://qiita.com/mm-Genqiita/items/f93285a6058c64b39f23

が参考になる

Step1)シークレットタイプの選択

* RDS/Redshiftなど用途にあったサービスを選択する

Step2)シークレットの名前設定

* シークレット名、必要であれば説明などを記入

Step3)自動ローテーションを設定

* あり・なしを選択

Step4)レビュー

* 設定を確認し問題なければ、保存して完了

【4】設定値の取得

1)AWS CLI
2)boto3 API
etc...

補足

* EC2などの実行する環境には、Secrets Managerに
 アクセスするIAMロールを事前にアタッチしておくこと
* 「2)boto3 API」については、
 作成時に各プログラム言語(Java, Python etc)のサンプルが
 AWSマネージメントコンソール上から参照できる

1)AWS CLI

以下の関連記事を参照のこと。

機密データの管理 ~ Secrets Manager / AWS CLI 編 ~
https://dk521123.hatenablog.com/entry/2022/06/14/110641

2)boto3 API

以下の関連記事を参照のこと。

機密データの管理 ~ Secrets Manager / boto3 編 ~
https://dk521123.hatenablog.com/entry/2021/10/05/105550

参考文献

https://dev.classmethod.jp/cloud/aws/secrets-manager-tutorials/
https://qiita.com/mm-Genqiita/items/f93285a6058c64b39f23
https://dev.classmethod.jp/cloud/aws/about-secrets-manager/
http://nopipi.hatenablog.com/entry/2019/02/12/233435#AWS-Secrets-Manager%E3%81%A8%E3%81%AF
https://qiita.com/inductor/items/ac8f4a1a947f0d3bbaa6

関連記事

機密データの管理 ~ Secrets Manager / boto3 編 ~
https://dk521123.hatenablog.com/entry/2021/10/05/105550
機密データの管理 ~ Secrets Manager / AWS CLI 編 ~
https://dk521123.hatenablog.com/entry/2022/06/14/110641
機密データの管理 ~ パラメータストア 編 ~
https://dk521123.hatenablog.com/entry/2020/01/31/231636
AWS Key Management Service (KMS)
https://dk521123.hatenablog.com/entry/2020/02/27/232553
CodeBuild で パラメータストア / Secrets Manager を使う
https://dk521123.hatenablog.com/entry/2020/02/18/230358
Terraform ~ AWS Secrets Manager ~
https://dk521123.hatenablog.com/entry/2023/04/11/152801
AWS CloudFormation ~ 認証情報の扱い ~
https://dk521123.hatenablog.com/entry/2021/12/28/224501
jq コマンド ~ コマンドで JSON を扱う ~
https://dk521123.hatenablog.com/entry/2020/02/01/000000