AWS IAM - разрешить пользователю создавать роли только для сервисов - PullRequest
1 голос
/ 17 марта 2019

Я работаю над приложением и пытаюсь решить проблему.Мое приложение имеет службы 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: ...

Я пытаюсь достичь этого, потому что пользователь может создать роль с правами администратора и принять это.

Кроме того, есть ли другой способ решить эту проблему?

...