我读过Lambda常见问题解答,它说它将我的代码存储在S3中,并且它是加密的。
它存储在S3中的什么地方,我可以解密它来编辑我的代码吗?
发布于 2017-11-01 02:38:00
如果您在创建Lambda函数之前将源代码上传到您自己的S3存储桶中,那么您将知道源代码的路径。请注意,简单地在S3中编辑代码不会更新您的Lambda函数。请参阅下面的链接。亚马逊会将你的代码从你的存储桶复制到亚马逊的S3存储桶中。
如果您在创建Lambda函数时在亚马逊网络服务控制台上传您的代码,那么它将存储在您无法访问的亚马逊S3位置。
最终结果是您的代码位于您无法访问的私有亚马逊S3存储桶中。
AWS Lambda Function Code
发布于 2017-11-01 02:35:14
Lambda服务将加密的代码存储在S3存储桶中。AWS不会提供比这更具体的信息。服务可能有自己的S3存储桶,它们单独加密存储在那里的所有对象。
不能,您不能直接访问Lambda服务的S3存储桶,但您可以下载之前上传到Lambda函数的代码。转到AWS Lambda控制台,选择您的Lambda函数,然后单击操作|导出函数,然后单击下载部署包。注意:如果您的代码是用Java (或其他编译语言)编写的,那么下载文件将包含编译文件,而不是原始源代码。

发布于 2019-03-12 21:47:35
此代码将允许您读取您的函数:
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。
https://stackoverflow.com/questions/47042162
复制相似问题