😊
Secrets Manager 利用から Parameter Store 利用に変えたメモ
- ECSで利用する機密情報の管理に、よく調べもせずSecrets Managerを使っていた
- ある日コストを見たら数ドル/月かかっていた
- 個人開発的には特に見過ごせない
- System Manager Parameter Store利用に変更して数ドル節約した
- Secrets Manager 料金
-
シークレットあたり USD 0.40/月
-
- AWS Systems ManagerParameter Store でも、SecureStringパラメータを利用して機密情報を管理できます
-
機密データを管理するために、SecureString パラメータを作成できます。Parameter Store は、SecureString パラメータを作成または変更する際に、AWS KMS keysを使用してそのパラメータ値を暗号化します。
-
- System Manager Parameter Store 料金
- パラメータストア
-
スタンダード: 追加料金なし
アドバンスド: 1 か月ごとにアドバンスドパラメータ当たり 0.05 USD (パラメータの保存期間が 1 か月に満たない場合は 1 時間ごとに按分されます)
-
- API インタラクション
- パラメータの種類がスタンダードで、スループット上限を引き上げない場合は、無料
- パラメータの種類がスタンダードでも、スループット上限を引き上げると、
パラメータストア API インタラクション 1 万回ごとに 0.05 USD
- パラメータストア
- アドバンスドとは
- 多くのパラメータ合計数や、パラメータ値の最大サイズを上げたい時などに利用する
- 少なくとも自分のユースケースではアドバンスドにする必要はなかった
- スループット上限について
- GetParameter等の参照のスループットの上限
- デフォルトだと40TPS(Transaction per second)
- GetParameterは10000TPSに引き上げることができる
- 例えば、ECSで複数タスクを一斉に起動してrate limitに引っかかって起動できず、というケースが有り、これの対処として引き上げを行える
- この引き上げも自分のケースでは不要だった
- ↓参考情報
- ECSでの設定
-
機密情報は、環境変数としてコンテナに渡すことが、セキュリティ上のベストプラクティスです。Amazon ECS タスク定義内のコンテナ定義にある、AWS Systems Manager Parameter Store または AWS Secrets Manager に格納されている値を参照することで、コンテナにデータを安全に挿入できます。その後、機密情報を環境変数として、またはコンテナのログ設定の中で公開することができます。
- ↓具体的な手順
-
- Secrets Manger と Parameter Store の使い分け
- 自動ローテーションが必要な場合はSecrets Managerを利用する
Discussion