这是我想出的。我正在使用AWS KMS将我的机密加密到一个文件中,该文件与代码一起上传到AWS Lambda。然后在需要使用它们时将其解密。
这是要遵循的步骤。
首先创建一个KMS密钥。您可以在这里找到文档:http : //docs.aws.amazon.com/kms/latest/developerguide/create-
keys.html
然后加密您的秘密,并将结果放入文件中。可以使用以下命令从CLI实现:
aws kms encrypt --key-id some_key_id --plaintext "This is the scret you want to encrypt" --query CiphertextBlob --output text | base64 -D > ./encrypted-secret
然后,您需要将此文件作为Lambda的一部分上传。您可以按以下步骤解密和使用Lambda中的机密。
var fs = require('fs');var AWS = require('aws-sdk');var kms = new AWS.KMS({region:'eu-west-1'});var secretPath = './encrypted-secret';var encryptedSecret = fs.readFileSync(secretPath);var params = { CiphertextBlob: encryptedSecret};kms.decrypt(params, function(err, data) { if (err) console.log(err, err.stack); else { var decryptedSecret = data['Plaintext'].toString(); console.log(decryptedSecret); }});
希望您会觉得有用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)