我想从python编写的aws lambda函数代码中隐藏我的秘密密钥和访问ID。我该怎么办?
我已经在代码中对其进行了硬编码,但这不是一个好习惯。有什么办法可以做到这一点?
答案 0 :(得分:0)
我的建议是不要为Lambda使用IAM密钥和IAM机密。请改用Lambda角色。
授予IAM用户本应拥有的Lambda role权限。
出于多种原因,使用IAM角色是最佳做法:
您的Lambda将始终具有角色,要使用它而不是IAM密钥/秘密,请像这样从代码源中删除凭据
之前
s3_client = boto3.client('s3',
aws_access_key_id=$KEY,
aws_secret_access_key=$SECRET_KEY,
region_name=REGION_NAME
)
之后
s3_client = boto3.client('s3',
region_name=REGION_NAME
)
答案 1 :(得分:0)
我已经在代码中对其进行了硬编码,但这不是一个好习惯。有什么办法可以做到这一点?
是的,有更好的方法。
您应该使用AWS Lambda execution role来授予您的函数必要的权限以完成其工作。