簡體   English   中英

如何使用 IAM 身份驗證從 NodeJS 中的 AWS Lambda 調用 Hashicorp Vault

[英]How to call Hashicorp Vault from AWS Lambda in NodeJS with IAM Authentication

有誰知道是否有一個好的 NodeJS 庫可以使用 IAM 身份驗證從 AWS Lambda 連接到 hashicorp 保險庫。

類似於 Python 的HVAC的東西會很好。

我曾嘗試使用node-vault-client ,但沒有任何好的 IAM 身份驗證示例,而且它似乎自 2019 年以來沒有更新,所以我不確定它是否得到積極維護。

我設法使用node-vault-client讓它工作,但我不得不對庫進行更改,因為它不允許您傳遞命名空間標頭。 我提出了一個PR ,它添加了一個新字段來解決這個問題。

這是我的代碼示例:

 const VaultClient = require('node-vault-client'); const vaultClient = VaultClient.boot('main', { api: { url: 'https://my-vault-url.com' }, auth: { type: 'iam', config: { role: 'my-role', iam_server_id_header_value: 'my-vault-url.com', namespace: 'my-namespace', // new option added in my pull request credentials: new AWS.Credentials({ accessKeyId: process.env.AWS_ACCESS_KEY_ID, secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, sessionToken: process.env.AWS_SESSION_TOKEN, }), }, }, }); vaultClient .read('secrets/data/path/to/secret') .then((secrets: any) => { console.log(`MY SECRET IS ${secrets.__data.data['MY_SECRET_KEY']}`); }) .catch((e: Error) => { console.error('Error connecting to vault .....'); console.error(e); });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM