AWS-Parameters-and-Secrets-Lambda-Extensionレイヤーを追加してSecrets Managerにアクセスする方法 -node.js v18

AWS-Parameters-and-Secrets-Lambda-Extensionレイヤーを追加してSecrets Managerにアクセスする方法 -node.js v18

AWS-Parameters-and-Secrets-Lambda-Extensionレイヤーを追加します。

AWS-Parameters-and-Secrets-Lambda-Extensionレイヤーを追加してSecrets Managerにアクセスする方法 -node.js

このレイヤーを使う事によって@aws-sdk/client-secrets-managerモジュール(SDK)を使わずにLambdaからURLをたたくだけでSecrets Managerの情報を取得することができるようになります。

axiosを使用してlocalhost:2773をたたきます。デフォルトポートは2773になります。

$ npm init -y
$ npm i axios
$ touch index.mjs

index.mjs

import axios from 'axios'
export async function handler() {
  const secretId = '<シークレット名>'
  const results = await axios({
    method: 'GET',
    headers: { 'X-Aws-Parameters-Secrets-Token': process.env['AWS_SESSION_TOKEN'] },
    url: `http://localhost:2773/secretsmanager/get?secretId=${secretId}`
  })
  console.log(results.data.SecretString) // 取得
  const response = {
    statusCode: 200,
    body: ''
  }
  return response
}

ログです。

AWS-Parameters-and-Secrets-Lambda-Extensionレイヤーを追加してSecrets Managerにアクセスする方法 -node.js

参考サイト

AWS Parameters and Secrets Lambda Extension を発表
Use AWS Secrets Manager secrets in AWS Lambda functions - AWS Secrets Manager
Learn how to access secrets in Lambda functions.

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

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