Azure AD B2C — Отключить / заблокировать вход для социальных / объединенных пользователей

#azure-ad-b2c #azure-ad-graph-api

#azure-ad-b2c #azure-ad-graph-api

Вопрос:

Я приношу извинения, если об этом спрашивали в прошлом. Последнее сообщение (которое я нашел) здесь и на UserVoice, в котором задавался этот вопрос, было в 2017 году, поэтому я хотел убедиться, что с тех пор ничего не изменилось. Я могу отключить / заблокировать локальные учетные записи в B2C через Graph, установив для AccountEnabled значение false. Когда пользователь пытается войти в систему, появляется сообщение: «Ваша учетная запись заблокирована. Обратитесь в свою службу поддержки, чтобы разблокировать его, затем повторите попытку «. Пожалуйста, поправьте меня, если это не то, как это сделать. Однако, похоже, то же самое не работает для объединенных учетных записей.

Как можно отключить / заблокировать вход для объединенной / социальной учетной записи? Спасибо вам за вашу помощь.

Ответ №1:

Это потому, что они всегда отключены, и проверка пропускается, поскольку эта проверка происходит, когда B2C проверяет серверную часть на наличие кредитов.

Используйте этот пример https://github.com/azure-ad-b2c/samples/tree/master/policies/disable-social-account-from-logon

Комментарии:

1. Спасибо @Jas! Какие варианты у меня есть, кроме как скрыть фиктивное текстовое поле? HTML / CSS?

2. Да, настройте страницу блокировки с помощью CSS. Убедитесь, что на странице блокировки указан хотя бы один outputclaim, для которого в заявке должно быть установлено значение required=true.

3. Как следует обрабатывать атрибут «extension_accountEnabled»? Вероятно, я что-то упускаю, но я не вижу, как / где это устанавливается, поэтому я предполагаю, что для его установки следует использовать powershell или вызов GraphAPI. Моя проблема в том, что я делаю это, я не вижу никаких изменений в поведении примера…

4. Вам необходимо установить атрибут с помощью powershell / graph api. Убедитесь, что вы нацелены на атрибут расширения, а не на собственный атрибут accountEnabled.

5. Спасибо @JasSuri-MSFT! Мне удалось заставить это работать, как только я понял, что имя свойства расширения было неправильным. Мне пришлось добавить идентификатор приложения к имени, например «extension_<идентификатор приложения>_accountEnabled. Не уверен, почему, но он получил это имя, даже создав его на портале.