Lamdba上で秘密情報を扱う方法を調べてみた

調査
スポンサーリンク

AWS Lambda関数で秘密情報を取り扱う方法を調べました。

 

目次

 


 

「Lambda 秘密情報」でググってみた

「Lambda 秘密情報」でググってみた。

 

参考元1:SSMのパラメータストアを活用して Lambda で機密情報 (SecureString) を扱う with AWS SAM

  • Systems Managerのパラメータストアを使っている。
  • Lambda関数ポリシーはテンプレートでの記載になっているので、参考にしにくい。

SSMのパラメータストアを活用して、Lambdaで機密情報(Secure String)を扱ってみました。 サンプルとして、SlackのWebhookURLをパラメータストアに格納してみました。

https://dev.classmethod.jp/articles/secure-string-with-lambda-using-parameter-store/
SSMのパラメータストアを活用して Lambda で機密情報 (SecureString) を扱う with AWS SAM | DevelopersIO
SSMのパラメータストアを活用して、Lambdaで機密情報(Secure String)を扱ってみました。 サンプルとして、SlackのWebhookURLをパラメータストアに格納してみました。

 

 

参考元2:機密情報をLambdaで使いたいとき

  • Systems Managerのパラメータストアを使っている。
  • Systems Managerのパラメータストアの設定方法はGUIの操作なので、割愛されている。
  • Lambda関数のサンプルとIAMポリシーの例がある。

AWS Systems Manager パラメータストアを使いましょう。

https://qiita.com/kter/items/0b504213a2f338f1c022
機密情報をLambdaで使いたいとき - Qiita
AWS Systems Manager パラメータストアを使いましょう。ソースコードに書きたくない、環境変数にも残したくない。そういったときにパラメータストアが役に立ちます。パラメータストアでは…

 

 

 

参考元3:AWS Secrets Managerによる機密情報の管理

  • 「AWS Secrets Manager」を使っている。

Amazon Web Services (AWS)はシークレット管理サービスとして「AWS Secrets Manager」を提供しており、シークレット管理に要する手間を大きく軽減します。

AWS Secrets ManagerはAWSのシークレット管理サービスであり、AWS Secrets Managerを利用することによってシークレットの保管・更新・監視などの手間を軽減することができます。

https://business.ntt-east.co.jp/content/cloudsolution/column-84.html
AWS Secrets Managerによる機密情報の管理|コラム|クラウドソリューション|サービス|法人のお客さま|NTT東日本
AWS Secrets Managerの概要について解説すると共に、AWS Secrets Managerの基本的な使い方を解説します。

 

 

 

「Systems Managerのパラメータストア AWS Secrets Manager」でググってみた

「Systems Managerのパラメータストア AWS Secrets Manager」でググってみた。

 

参考元1:AWS Secrets Manager パラメータからの Parameter Store シークレットの参照

  • 「AWS Secrets Manager」を使っている。
  • AWS Systems Manager の一機能である Parameter Store は Secrets Manager と統合されたとのこと。

AWS Systems Manager の一機能である Parameter Store は Secrets Manager と統合されたため、

Parameter Store パラメータへの参照がすでにサポートされている他の AWS のサービスを使用するときに、Secrets Manager シークレットを取得できます。

https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/integration-ps-secretsmanager.html
Parameter Store パラメータからの AWS Secrets Manager シークレットの参照 - AWS Systems Manager
Parameter Store パラメータへの参照を既にサポートしている他の AWS のサービスを使用する際に、Secrets Manager のシークレットを取得します。

 

 

 

参考元2:AWS の Parameter Store と Secrets Manager はどのように使い分けますか?

ざっくりとした理解ですが、私が重要そうだと思った違いは以下の 2 点です:
・Parameter Store のスタンダードタイプは追加料金無しで利用できる。
・Secret Manger では秘匿値のローテーションとデータベース統合ができる。

https://ja.stackoverflow.com/questions/68897/aws-%E3%81%AE-parameter-store-%E3%81%A8-secrets-manager-%E3%81%AF%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E4%BD%BF%E3%81%84%E5%88%86%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B
AWS の Parameter Store と Secrets Manager はどのように使い分けますか?
AWS で秘匿値を扱う方法には、AWS Systems Manager Parameter Store と AWS Secrets Manager のふたつがあると知りました。 この両者はどのように違い、どのように使い分けるべきなのでしょう...

 

 

 

まとめ

Lambda上で秘密情報を扱う方法は、「Systems Managerのパラメータストア」と「AWS Secrets Manager」の方法があることが分かった。
AWS Systems Manager の一機能である Parameter Store は Secrets Manager と統合されたとのことなので、どちらでやっても問題なさそう。
また、AWS Secrets Managerは有料に対して、Parameter Storeはスタンダードであれば無料

→「Systems Managerのパラメータストア」を使うことにする。

 

本調査の結果、System MangerのパラメータストアでLambda関数上で秘密情報を扱うことができました。その方法を以下のブログにまとめたので、よろしければご覧ください。

Lamdba上で秘密情報を扱ってみる
AWS Lambda関数で秘密情報を取り扱う方法をまとめました。

 

以上!

コメント

タイトルとURLをコピーしました