AWS Parameters and Secrets Lambda Extension で特定の階層のパラメータをすべて取得することはできますか?

AWS Parameters and Secrets Lambda Extension で特定の階層のパラメータをすべて取得することはできますか?

2023.12.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

AWS Parameters and Secrets Lambda Extension を使用して Systems Manager Parameter Store の値を取得するロジックを検討しています。
アプリケーション側では Parameter Store の特定の階層のパラメータをすべて取得したいのですが、AWS Parameters and Secrets Lambda Extension での実装は可能ですか?

どう対応すればいいの?

AWS Parameters and Secrets Lambda Extension では特定の階層のパラメータをすべて取得することはできません。

AWS Parameters and Secrets Lambda Extension で使用される API は Systems Manager の GetParameter API であり、当該 API では特定の階層のパラメータをすべて取得することができません。

関数の実行に使用する AWS Identity and Access Management (IAM) ロールには、Parameter Store と対話するための次の権限が必要です。

・ssm:GetParameter — Parameter Store からパラメータの取得に必要
・kms:Decrypt — Parameter Store から SecureString パラメータを取得するために必要

AWS 公式ドキュメントより

特定の階層のパラメータをすべて取得する必要がある場合には AWS Parameters and Secrets Lambda Extension ではなく、Systems Manager の GetParametersByPath API を使用し、Recursiveオプションを付与してください。

参考資料


AWSテクニカルサポートノートについて

過去にクラスメソッドのAWS総合支援サービスで頂いたお問合せの中から、通常のAWS利用時でも有益になりうる情報をテクニカルサポートチームがTIPSとしてご紹介しています。技術サポートは、無料でご提供しております。詳細は下記ボタンからご覧ください。

クラスメソッドのAWSサポートの詳細を見る

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事