【问题标题】:Serverless: [AWS] Unable to create role resource with policy无服务器:[AWS] 无法使用策略创建角色资源
【发布时间】:2019-10-05 01:04:02
【问题描述】:

我正在学习如何使用无服务器框架,并且我正在创建角色,一些特定功能将承担这些角色,但 cloudformation 会引发错误,指示:

An error occurred: LambdaAdminRole - Unknown field Policies (Service: AmazonIdentityManagement; Status Code: 400; Error Code: MalformedPolicyDocument; Request ID: 07cb3916-78c5-11e9-b0f6-37c9c6cd9547).

在 serverless 中资源的定义方式是这样的:

resources:
  Resources:
    LambdaAdminRole:
      Type: AWS::IAM::Role
      Properties:
        RoleName: ${self:service}-${self:provider.stage}-lambda-admin-role
        AssumeRolePolicyDocument:
          Version: '2017'
          Statement:
            - Effect: Allow
              Principal:
                Service:
                  - lambda.amazonaws.com
              Action: sts:AssumeRole
          Policies:
            - PolicyName: ${self:service}-${self:provider.stage}-lambda-cognito-admin-policy
              PolicyDocument:
                Version: '2017'
                Statement:
                  - Effect: Allow
                    Action:
                      - cognito-idp:ListUsersInGroup
                      - cognito-idp:ListUsers
                    Resource:
                      - 'Fn::Join':
                          - ':'
                          - - 'arn:aws:cognito-idp'
                            - ${self:provider.region}
                            - Ref: 'AWS::AccountId'
                            - 'userpool/*'

这不是使用无服务器创建角色的正确方法吗?我按照无服务器文档显示的示例进行操作:https://serverless.com/framework/docs/providers/aws/guide/iam/

【问题讨论】:

    标签: amazon-web-services amazon-cloudformation amazon-iam serverless-framework


    【解决方案1】:

    您的缩进不正确,Policies 属性属于Properties,而不是AssumeRolePolicyDocument,您的文档中就是这种情况。

    (将整个 Policies 部分缩进一个)

    【讨论】:

    • 它工作了,谢谢.. 但很奇怪.. 这是从无服务器文档中复制/粘贴的修改代码,它也给了我关于策略版本无效的错误,我当然修复了,但再次感谢。
    【解决方案2】:

    正如official documentation中提到的Policies属于Properties而不是AssumeRolePolicyDocument

    【讨论】:

      猜你喜欢
      • 2018-11-02
      • 1970-01-01
      • 2019-08-31
      • 2021-08-17
      • 2019-08-16
      • 2020-09-17
      • 2019-12-23
      • 2021-09-26
      • 2021-01-05
      相关资源
      最近更新 更多