Какой API нам следует использовать, чтобы получить назначенные роли из ключа доступа AWS и секретного ключа доступа AWS?

Мне дали пару ключа доступа AWS и секрета доступа AWS. Я хотел бы подтвердить, что пользователь AWS, связанный с ключом, имеет соответствующие разрешения и не имеет других неожиданных ролей. Но я не смог найти хорошего API для этого. Есть ли какой-нибудь хороший API для определения ролей, прикрепленных к самому пользователю?

Хотя я прочитал документ и погуглил его, я не смог найти хорошего способа. Я знаю, что можно протестировать, вызывая сам API один за другим. Но я хотел бы получить исчерпывающий список ролей, прикрепленных к пользователю, если это возможно.

Решено:

Это получить идентификатор вызывающего абонента, который мне нужно было знать. Команда возвращает учетную запись AWS, идентификатор пользователя AWS и ARN пользователя, чтобы я мог использовать рекомендуемые команды, чтобы узнать его политики, группы и т. д.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
52
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Роли IAM не «прикреплены» к пользователям. Вместо этого пользователи могут запросить AssumeRole(). Если у них есть необходимые разрешения, им будут предоставлены временные учетные данные для использования роли IAM.

Таким образом, чтобы определить, может ли конкретный пользователь IAM использовать определенную роль IAM, вам необходимо посмотреть:

  • Политики, прикрепленные к пользователю IAM
  • «Политика доверия», связанная с ролью IAM

Однако если вы использовали слово «роли» для обозначения разрешений в целом, вам нужно будет просмотреть политики, прикрепленные к пользователю IAM, чтобы узнать, какие разрешения им были предоставлены. Вы можете использовать Интерфейс командной строки (CLI) AWS с такими командами, как:

  • get-user-policy: извлекает указанный встроенный документ политики, встроенный в указанного пользователя IAM.
  • list-attached-user-policy: список всех управляемых политик, прикрепленных к указанному пользователю IAM.
  • Затем для каждой прикрепленной политики вы можете вызвать get-policy: извлекает информацию об указанной управляемой политике.

Пользователи также могут наследовать разрешения от групп IAM, поэтому вам следует проверить, входит ли пользователь в группу IAM и какие разрешения прикреплены к этой группе.

Чтобы просмотреть приведенную выше информацию, вам также необходимо иметь разрешение на выполнение этих вызовов API. Возможно, у вас нет таких разрешений, поэтому вы не сможете просмотреть фактически предоставленные вам разрешения.

Ответ принят как подходящий

Чтобы получить список ролей и политик IAM, прикрепленных к конкретному пользователю AWS, вы можете использовать интерфейс командной строки AWS.

перечисляет управляемые политики, прикрепленные к пользователю.

aws iam list-attached-user-policies --user-name <username>

перечисляет встроенные политики, встроенные в пользователя.

aws iam list-user-policies --user-name <username>

Если пользователь принадлежит к каким-либо группам, эта команда выводит список этих групп.

aws iam list-groups-for-user --user-name <username>

Хотя пользователям IAM не могут быть напрямую прикреплены к ним роли, вам необходимо проверить политики, если вы хотите проверить, какие роли может выполнять пользователь. В частности, вам следует искать политики, прикрепленные к пользователю или его группам, включая действия sts:AssumeRole.

Другие вопросы по теме