Ограничение претензий при регистрации приложений Azure? - PullRequest
1 голос
/ 22 октября 2019

В Azure Active Directory я создал регистрацию приложения.

Для большинства пользователей это прекрасно работает. Они могут войти в мое приложение через федерацию из Azure AD, и их претензии принимаются.

Однако для некоторых пользователей у них более 150 групповых членств в Azure AD. Для них они получают неверный запрос HTTP 400. Я увеличил maxRequestBytes и maxFieldLength моего сервера в соответствии с этим постом: https://support.microsoft.com/en-us/help/820129/http-sys-registry-settings-for-windows,, но это не решило проблему для всех пользователей. Некоторые получили доступ после этого, но есть несколько, которые по-прежнему не могут войти в систему.

У моего приложения есть только ~ 10 групп в Azure AD, о которых оно заботится. Я настроил в манифесте регистрации своего приложения значение "groupMembershipClaims": "SecurityGroup".

Можно ли ограничить заявки, поступающие из Azure AD, только на 10 групп, которые мне нужны?

1 Ответ

0 голосов
/ 24 октября 2019

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

Насколько я знаю, нет способасделай это. Но здесь будет два обходных пути:

1. этот официальный документ , в котором указаны претензии о groups и hasgroups, возможно, даются некоторые советы по работе с вашимсценарий. Как указано в документе, он предложил вам вызвать API для выборки всех групп пользователей, если у пользователя слишком много групповых заявок.

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

2. Использование заявки на роли приложений Azure AD вместо заявки на группы. В приложении Azure AD мы можем создать Добавить роли приложения и назначить эту роль пользователям или группам. После назначения роли в токен пользователя будет добавлено требование role. Поскольку вас заботит только 10 групп, вы можете создавать соответствующие роли приложений и назначать роли интересующим вас группам (например, role1 назначается для group1). При этом пользователи в группах будут иметь соответствующую заявку на роль (i, eпользователи из группы 1 будут иметь утверждение роли: role1), чтобы мы могли использовать это утверждение для замены groups утверждения.

Более того

, за исключением увеличения maxRequestBytes и maxFieldLength вашего сервера, вы можете попробовать изменить maxAllowedContentLength, подробности см. в этом посте .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...