#amazon-web-services #amazon-cognito #amazon-iam
Вопрос:
Предположим, у меня есть 1 userPool
и 2 группы: group_a
и group_b
.
Пользователь может быть в group_a
группе, в group_b
группе или без группы.
Используя API cognito, как я могу реализовать управление доступом, следуя следующему правилу:
group_a
пользователи могут ListUsers
каждого пользователя в пуле.
group_b
пользователи могут ListUsers
использовать пользователей из group_b
группы и без группы.
Пользователи без группы не могут ListUsers
.
Читая документы AWS, я не мог найти способ обойтись без управления 2 userPool
s и пересечения пулов удостоверений и ролей.
Возможно ли это сделать в одном пуле пользователей?
Ответ №1:
Я не верю, что это поддерживается из коробки. В политиках IAM нет условий запроса, которые проверяют группу, к которой принадлежит пользователь. Кроме того, пользователь списка возвращает всех пользователей, и если вам нужна какая-либо фильтрация, вам нужно сделать это после извлечения всех пользователей. Я бы предложил вам создать API для обработки этого, которые проверяют наличие группы в маркере, а затем возвращают пользователей, на просмотр которых у группы есть разрешение.