提问者:小点点

如何从AWS KMS导入AWS Lambda的密钥?


我在想办法。。在AWS Lambda上运行的Python代码中,如何从AWS KMS获取密钥。我在AWS KMS中有远程服务器FTP/SFTP的密钥,现在我的AWS Lambda函数必须将文件从远程服务器镜像到S3 bucket,但有些服务器使用ssh密钥进行授权。问题是我如何导入密钥(解密它,以明文保存-因此我必须在每次运行函数时使用boto3在python代码中解密它?)在python代码中?

你好,007


共1个答案

匿名用户

从这个类似的StackOverflow问题的答案中,您只需要将具有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']

[代码还包括链接问题的答案]