gpt4 book ai didi

node.js - 使用证书、私钥和 CA 的 AWS Lambda NodeJS 请求

转载 作者:行者123 更新时间:2023-12-04 22:37:24 26 4
gpt4 key购买 nike

要连接到特定的 API,我们需要包含证书、私钥和来自部署到 AWS Lambda 的 NodeJS 函数的 CA。

在测试环境中,我们可以只使用 fs.readFileSync 到测试服务器上的本地路径,但这当然不适用于 AWS Lambda。

我们的调用如下:

return request({
method: args.method,
uri: this.baseUrl,
headers: {
"User-Agent": "XXXX-Wrapper"
},
form: this.queryParams,
json: false,
cert: this.cert,
key: this.key,
ca: this.ca
}, callback);

有没有办法从 AWS KMS 读取证书信息,或者是将这些证书上传到私有(private) S3 存储桶并从那里读取它们的唯一方法?

我们还尝试将原始证书作为加密值存储在 Parameter Store 中,并从那里作为 NodeJS 进程变量读取它们,但这似乎不起作用。

最佳答案

可能有更好的方法,但我们决定将证书放在具有严格访问和对象锁定控制的安全存储桶中。
在 TypeScript/NodeJS lambda 中,我们现在可以启动 S3 客户端并执行这样的请求

const cert = await S3.getFile(Config.get('...'), 'certificate.crt')
const key = await S3.getFile(Config.get('...'), 'private.key')
const ca = await S3.getFile(Config.get('...'), Config.get('ca_path'))

return request({
method: args.method,
uri: this.baseUrl,
headers: {
....
},
form: formData,
json: false,
cert:cert,
key:key,
ca:ca
}, callback);
S3 服务只是 aws-node 库的包装器。

关于node.js - 使用证书、私钥和 CA 的 AWS Lambda NodeJS 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54630124/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com