Мне было интересно, как использовать simulate-principal-policy
с помощью интерфейса командной строки AWS для предполагаемой роли.
Чтобы обеспечить некоторый контекст, в рамках запуска моего приложения я хочу убедиться, что у приложения есть необходимые разрешения для доступа ко всем необходимым ресурсам AWS. Я делаю это, получая идентификатор вызывающего абонента с помощью aws sts get-caller-identity
и использую возвращенный идентификатор вызывающего абонента в качестве источника политики для запроса simulate-principal-policy
.
Когда наше приложение работает на EC2, оно использует предполагаемую роль. Итак, get-caller-identity
возвращает предполагаемую роль ар.
Если я попытаюсь выполнить simulate-principal-policy
, используя имя пользователя в качестве источника политики, команда будет работать нормально.
aws iam simulate-principal-policy --action-names "sqs:Receivemessage" --policy-source-arn "arn:aws:sts::123456789021:user/divesh"
Однако при попытке выполнить приведенную выше команду с использованием предполагаемой роли возникает ошибка.
aws iam simulate-principal-policy --action-names "sqs:Receivemessage" --policy-source-arn "arn:aws:sts::123456789021:assumed-role/development/development-session"
An error occurred (InvalidInput) when calling the SimulatePrincipalPolicy operation: Invalid Entity Arn: arn:aws:sts::123456789021:assumed-role/development/development-session does not clearly define entity type and name.
Наше приложение работает в кластере Kubernetes и использует kiam для связывания ролей IAM с модулями.
...456789021:assumed-role/dev...
) Вы пробовали использовать арн роли? - person Daniel Farrell   schedule 23.10.2018get-caller-identity
возвращает предполагаемую роль arn. - person divesh premdeep   schedule 23.10.2018implicitDeny
с"MissingContextValues": ["aws:username"]
- person divesh premdeep   schedule 23.10.2018$ aws --profile xxxx iam simulate-principal-policy --policy-source-arn arn:aws:iam::1234567890987:role/admin --action-names "sqs:ReceiveMessage"
- person Daniel Farrell   schedule 23.10.2018siulate-principal-policy
. Как я уже сказал, я смог вызвать taht с ролью arn и получить ожидаемые результаты (в моем случае это разрешено как часть политики доступа администратора). - person Daniel Farrell   schedule 23.10.2018simulate-principal-policy
- person divesh premdeep   schedule 23.10.2018simulate-principal-policy
- person divesh premdeep   schedule 29.04.2019