代码之家  ›  专栏  ›  技术社区  ›  Pedro Arantes

AWS IAM-仅允许用户为假定的服务创建角色

  •  0
  • Pedro Arantes  · 技术社区  · 6 年前

    我正在处理一个申请,我正在为一个问题而挣扎。我的应用程序有Lambdas和DynamoDBs服务,前者需要权限才能调用后者。我通过创建角色来解决这个问题 Principal 等于 Service: lambda.amazonaws.com .

    我想让其他开发人员也可以创建角色,这种方式允许开发人员只创建其主体是服务或联合的角色,如果是用户或帐户则拒绝。

    例如,允许此角色:

        Type: AWS::IAM::Role
        Properties:
          AssumeRolePolicyDocument:
            Version: 2012-10-17
            Statement:
              - Effect: Allow
                Principal:
                  Federated: cognito-identity.amazonaws.com
                Action:
                  - sts:AssumeRoleWithWebIdentity
          Path: ...
          Policies: ...
    

    这是不允许的:

        Type: AWS::IAM::Role
        Properties:
          AssumeRolePolicyDocument:
            Version: 2012-10-17
            Statement:
              - Effect: Allow
                Action: sts:AssumeRole
                Principal:
                  AWS: arn:aws:iam::<accountid>:user/<username>
          Path: ...
          Policies: ...
    

    我试图达到这一点,因为用户可以创建一个具有管理员访问权限的角色,并假设它。

    另外,有没有其他方法来解决这个问题?

    0 回复  |  直到 6 年前