使用AWS Sam Local测试Lambda政策的工作流程



AWS SAM本地文档指出,SAM Local将使用我的本地配置的IAM凭据调用功能。

我想测试一个由lambda函数组成的云形式模板和该功能附加的角色,该模板允许访问访问一个特定S3桶的内容。存储键名既是模板参数,又是lambda函数的参数。(不确定它是否重要,但我不使用CFN模板中的无服务器转换。(

我避免使用我的管理配置文件测试此功能,因为存储桶名中的错别字将删除错误的存储桶的所有内容。

测试此类功能的建议工作流是什么?

我目前在做什么:

  • 创建一个临时IAM用户/组
  • 将要测试的策略附加到该组
  • 在调用sam local invoke
  • 之前导出访问环境变量

是否有更快的方法?

用dryrun

调用lambda

用Dryrun调用该功能以请求AWS lambda不执行该功能,但要进行一些验证,例如,呼叫者被授权调用该功能,并且输入是否有效。

aws lambda invoke --function-name <name> --invocation-type DryRun

为云形式创建更改集:更改集=干式运行模式

使用" Create-Crange-Set"创建更改集并查看控制台UI或CLI中的更改,然后使用CLI或UI使用执行更改应用更改。

创建更改:

aws cloudformation create-change-set --stack-name example --template-body file://templates/instance_and_route53.yml --parameters file://parameters/instance_and_route53.json --change-set-name changeset-1

执行更改

aws cloudformation execute-change-set --stack-name example --change-set-name changeset-1

相关内容

  • 没有找到相关文章

最新更新