我正在尝试找出问题。.如何在AWS Lambda上运行的Python代码中从AWS KMS获取密钥。我在AWS KMS中具有用于远程服务器FTP / SFTP的密钥,现在我的AWS Lambda函数必须将文件从远程服务器镜像到S3存储桶,但是某些服务器使用ssh-key进行授权。问题是如何在python代码中导入密钥(解密,以明文形式保存-因此我必须在每次运行函数时都使用boto3在python代码内部解密密钥)?
关于, Null007
答案 0 :(得分:0)
在answers to this similar StackOverflow question中,您只需将具有KMS密钥检索权限的角色附加到Lambda函数即可。
之后,您应该可以使用boto3客户端访问KMS密钥:
with open('encrypted_pem.txt', 'r') as encrypted_pem:
pem_file = encrypted_pem.read()
kms = boto3.client('kms', region_name=REGION)
return kms.decrypt(CiphertextBlob=b64decode(pem_file))['Plaintext']
[代码还提供链接的StackOverflow问题的答案]