【发布时间】:2018-04-13 00:30:34
【问题描述】:
我已阅读 Lambda 常见问题解答,它说它将我的代码存储在 S3 中并且已加密。
它存储在 S3 的什么位置,我可以解密它以编辑我的代码吗?
【问题讨论】:
标签: amazon-web-services amazon-s3 aws-lambda microservices
我已阅读 Lambda 常见问题解答,它说它将我的代码存储在 S3 中并且已加密。
它存储在 S3 的什么位置,我可以解密它以编辑我的代码吗?
【问题讨论】:
标签: amazon-web-services amazon-s3 aws-lambda microservices
如果您在创建 Lambda 函数之前将源代码上传到自己的 S3 存储桶,那么您将知道源代码的路径。请注意,仅在 S3 中编辑代码不会更新您的 Lambda 函数。请参阅下面的链接。 Amazon 会将您的代码从您的存储桶复制到 Amazon 的 S3 存储桶。
如果您在创建 Lambda 函数时在 AWS 控制台中上传代码,则它会存储在您无法访问的 Amazon S3 位置。
最终结果是您的代码位于您无法访问的私有 Amazon S3 存储桶中。
【讨论】:
此代码将允许您阅读您的函数:
import requests
import boto3
client = boto3.client('lambda')
function = client.get_function(FunctionName='my_function_name_or_arn')
code_location = function['Code']['Location']
with open("my_function.zip", "wb") as out:
out.write(res.content)
如果您尝试读取其他人的函数,您将收到 AccessDeniedException。
【讨论】: