我正在尝试通过无服务器模板创建IAM角色和策略。
当我尝试部署它时,出现错误-
发生错误:SQSConnectPolicy-策略中的语法错误。 (服务:AmazonIdentityManagement;状态代码:400;错误代码: 格式错误的政策文件
这是我的serverless.yml文件的摘录
SQSConnectRole:
Type: 'AWS::IAM::Role'
Properties:
RoleName: SqSConnectRole
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Action:
- 'sts:AssumeRole'
Effect: Allow
Principal:
Service:
- iot.amazonaws.com
Path: /service-role/
SQSConnectPolicy:
Type: 'AWS::IAM::Policy'
Properties:
PolicyName: SqSConnectPolicy
Roles:
- !Ref SQSConnectRole
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Action: 'sqs:SendMessage'
Resources:
- arn:aws:sqs:${self:provider.region}:#{AWS::AccountId}:connectDeviceSQSDemo
在同一Serverless.yml文件中创建策略和角色是否有效?
我需要添加依赖项吗?对上述问题有任何投入吗?
答案 0 :(得分:2)
您的IAM政策中有错字。 Resources
一词应更改为Resource
。