amazon-web-services - 如何在 cloudformation 中创建托管策略,允许 lambda 访问 aws 环境中的所有 s3 容器
问题描述
我正在尝试为 lambda 创建一个托管策略,允许它访问我环境中的所有 s3 存储桶。这个 lambda 基本上扫描每个存储桶的内容,如果超过 30 天,则使用前缀 archive/ 键入任何对象。我正在尝试在 cloudformation 中创建策略,但在打包时我一直收到错误消息,预计流或文档分隔符的结尾。我知道这是一个 yaml 错误,但不确定如何纠正它。
LambdaArchiveAccessPolicy:
Type: AWS::IAM::ManagedPolicy
Properties:
ManagedPolicyName: LambdaArchiveAccessPolicy
Description: Policy for allowing lambda to access s3 containers
PolicyDocument:
Version: 2012-10-17
Statement:
Effect: Allow
Action: 's3:*'
Resource: !Sub 'arn:aws:s3:::*'
我怀疑我如何定义资源是错误的。我将不胜感激任何指导或建议
解决方案
根据此处的 YAML 规范,间距在 YAML 文件中很重要,更具体地说:
所有兄弟节点必须使用完全相同的缩进级别。
在您的 YAML 中,您的第一行缩进了三个空格,但随后的缩进只有 2 个空格。将间距纠正一,您将解决您的问题。
推荐阅读
- laravel - Phpmydamin docker 容器试图连接到本地 apache
- react-native - React Native SwitchSelector 在选择时更改图标颜色
- flutter - Flutter:PanAndZoomBehavior 在图表中不起作用
- python - 带有用于正值和负值的单独条形的条形图
- firebase - 我可以从 Firestore 集合中只导出一个文档吗?
- latex - LaTeX 中的表格:使用两列模板将表格放在单列中
- regex - tcl中的正则表达式太复杂错误
- python - 从外部获取输入而不是直接在代码中提供
- javascript - Mixpanel 与 async/await 函数冲突
- c++ - 如何在 MFC 中检查 ListBox 垂直滚动条的结尾