実現したいこと
CloudFormationでLambda用実行ロールを作成してみようとしています。
発生している問題・分からないこと
CloudFormation LinterをVSCodeの拡張機能で導入し、構文チェックを行った際にエラーが出ています。
フォーマットバージョンの行にもエラーが出ていてどうしてか皆目わかりません。
エラーメッセージ
error
1cfn-lint iam.yml 2E0002 Unknown exception while processing rule E1029: "'str_node' object has no attribute 'get'" 3iam.yml:1:1 4 5E3001 'AWS::IAM::Role' is not of type 'object' 6iam.yml:5:3 7 8E3001 Exception "'str_node' object has no attribute 'get'" raised while validating 'cfnLint' 9iam.yml:5:3 10 11E3001 'Type' is a required property 12iam.yml:6:3 13 14E3001 Additional properties are not allowed ('AssumeRolePolicyDocument' was unexpected) 15iam.yml:7:5 16 17E3001 Additional properties are not allowed ('Policies' was unexpected) 18iam.yml:16:5
該当のソースコード
CloudFormation
1AWSTemplateFormatVersion: 2010-09-09 2Description: tst-hashimoto-cfn 3 4Resources: 5 Type: AWS::IAM::Role 6 Properties: 7 AssumeRolePolicyDocument: 8 Version: "2012-10-17" 9 Statement: 10 - Effect: Allow 11 Principal: 12 Service: 13 - lambda.amazonaws.com 14 Action: 15 - sts:AssumeRole 16 Policies: 17 - PolicyName: "LambdaExecutionPolicy" 18 PolicyDocument: 19 Version: "2012-10-17" 20 Statement: 21 - Effect: Allow 22 Action: 23 - logs:CreateLogGroup 24 - logs:CreateLogStream 25 - logs:PutLogEvents 26 - sns:Publish 27 Resource: "*" 28
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
フォーマットバージョンは公式のものをそのままコピペ
以降のコードはLambda用実行ロールを作成しているサイトを参考し記述しました。
補足
特になし
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。