Сбор атрибутов пользователя во время регистрации
Упражнение. Сбор атрибутов пользователя во время регистрации
Атрибуты пользователей — это значения, собранные пользователем во время самостоятельной регистрации. В параметрах пользовательского потока вы можете выбрать из набора встроенных атрибутов пользователя, которые должны предоставлять клиенты. Вы также можете создать настраиваемые атрибуты пользователя и добавить их в поток пользователя во время регистрации. На странице регистрации пользователь вводит сведения и сохраняется с его профилем в каталоге. Для целей веб-сайта онлайн продуктовых продуктов мы будем использовать сочетание встроенных атрибутов и настраиваемый атрибут, называемый специальной диетой.
Примечание.
Для настройки атрибутов пользователя во время регистрации потребуется по крайней мере роль администратора атрибутов внешнего потока идентификаторов .
У вас есть отзывы? Пожалуйста, сообщите нам, как будет идти подтверждение проекта концепции. Мы хотели бы услышать ваше мнение!
Начнем с создания настраиваемого пользовательского атрибута специальной диеты. Для этого войдите в Центр администрирования Microsoft Entra и перейдите к Внешние удостоверения>Обзор. Затем выберите настраиваемые атрибуты пользователя.
Список содержит все атрибуты пользователя, доступные в клиенте, включая все пользовательские атрибуты пользователя, созданные. Столбец типа атрибута указывает, является ли атрибут встроенным или настраиваемым. Нажмите кнопку "Добавить ", чтобы добавить новый атрибут.
В области "Добавление атрибута" введите имя настраиваемого атрибута. Например, SpecialDiet. В разделе «Тип данных» выберите «Строка». В поле "Описание" введите описание пользовательского атрибута для внутреннего использования. Это описание невидимо для пользователя.
После добавления пользовательского атрибута пользователя в клиент перейдите к включению пользовательского атрибута пользователя в поток регистрации. Перейдите к Идентификации>Внешним идентификациям>пользователей. Затем выберите поток пользователя из списка.
Выберите атрибуты пользователя. Этот список содержит все пользовательские атрибуты пользователя, определенные в предыдущем разделе. Например, новая функция SpecialDiet теперь отображается в списке. Выберите все атрибуты, которые нужно собрать от пользователя во время регистрации, и нажмите кнопку "Сохранить".
В качестве последнего шага вы настроите макет страницы регистрации. В макетах страниц можно указать необходимые атрибуты и упорядочить отображаемый порядок. Вы также можете изменять метки атрибутов, создавать переключатели или флажки и многое другое. Для нашего продуктового веб-сайта мы добавим метку в атрибут с именем SpecialDiet. В разделе "Настройка" выберите макеты страниц. Будут отображаться атрибуты, которые вы выбрали для сбора. Измените метку для любого атрибута, выбрав значение в столбце Label и изменив текст.
Отличная работа! Вы добавили настраиваемый атрибут своему арендатору, включили этот атрибут в пользовательский поток, а затем добавили метку к атрибуту.
1. Создание настраиваемого атрибута
Чтобы создать пользовательский атрибут, выполните следующий запрос Microsoft Graph.
POST https://graph.microsoft.com/beta/identity/userFlowAttributes
{
"displayName": "SpecialDiet",
"description": "Customer's special diet",
"dataType": "string"
}
1.1 Копирование пользовательского атрибута
Скопируйте из ответа значение атрибута с пользовательским идентификатором. Например:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/userFlowAttributes/$entity",
"id": "extension_a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1_SpecialDiet",
"displayName": "SpecialDiet",
"description": "Customer's special diet",
"userFlowAttributeType": "custom",
"dataType": "string"
}
2. Добавление атрибута в поток пользователя
Чтобы добавить атрибут в поток пользователя, выполните приведенный ниже запрос Microsoft Graph. Замените {user-flow-ID}идентификатором потока пользователя. Замените {attribute-ID}идентификатором атрибута из предыдущего шага.
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAttributeCollection/microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp/attributes/$ref
{
"@odata.id":"https://graph.microsoft.com/beta/identity/userFlowAttributes/{attribute-ID}"
}
Пример
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAttributeCollection/microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp/attributes/$ref
{
"@odata.id":"https://graph.microsoft.com/beta/identity/userFlowAttributes/{attribute-ID}"
}
3. Обновление макета страницы (необязательно)
Обычно атрибут отображается в нижней части страницы регистрации. Вы можете обновить макет страницы регистрации. В макетах страниц можно указать необходимые атрибуты и упорядочить порядок отображения. Вы также можете изменять метки атрибутов, создавать переключатели или флажки и многое другое.
Для этого необходимо обновить поток пользователя. В тексте запроса укажите только значения свойств, которые должны быть обновлены. Существующие свойства, не включенные в текст запроса, сохраняют предыдущие значения или пересчитываются на основе изменений в других значениях свойств.
Предупреждение
Коллекция входных данных должна содержать все атрибуты. Чтобы добавить или удалить атрибуты, обязательно включите все остальные атрибуты.
Замените {user-flow-ID}идентификатором потока пользователя. Замените {attribute-ID}идентификатором атрибута.
PATCH https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}
{
"@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",
"onAttributeCollection": {
"@odata.type": "#microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp",
"attributeCollectionPage": {
"customStringsFileId": null,
"views": [
{
"title": null,
"description": null,
"inputs": [
{
"attribute": "email",
"label": "Email Address",
"inputType": "text",
"defaultValue": null,
"hidden": true,
"editable": false,
"writeToDirectory": true,
"required": true,
"validationRegEx": "^[a-zA-Z0-9.!#$%&’'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$",
"options": []
},
{
"attribute": "displayName",
"label": "Display Name",
"inputType": "text",
"defaultValue": null,
"hidden": false,
"editable": true,
"writeToDirectory": true,
"required": true,
"validationRegEx": "^.*",
"options": []
},
{
"attribute": "country",
"label": "Country/Region",
"inputType": "radioSingleSelect",
"defaultValue": null,
"hidden": false,
"editable": true,
"writeToDirectory": true,
"required": false,
"validationRegEx": "^.*",
"options": [
{
"label": "Australia",
"value": "au"
},
{
"label": "Spain",
"value": "es"
},
{
"label": "United States",
"value": "us"
}
]
},
{
"attribute": "city",
"label": "City",
"inputType": "text",
"defaultValue": null,
"hidden": false,
"editable": true,
"writeToDirectory": true,
"required": true,
"validationRegEx": "^.*",
"options": []
}, {
"attribute": "{attribute-ID}",
"label": "Special diet",
"inputType": "text",
"defaultValue": null,
"hidden": false,
"editable": true,
"writeToDirectory": true,
"required": false,
"validationRegEx": "^.*",
"options": []
}
]
}
]
}
}
}