Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения
Разрешения с наименьшими привилегиями
Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись)
IdentityUserFlow.ReadWrite.All
Недоступно.
Делегированные (личная учетная запись Майкрософт)
Не поддерживается.
Не поддерживается.
Приложение
IdentityUserFlow.ReadWrite.All
Недоступно.
Важно!
В делегированных сценариях с рабочими или учебными учетными записями вошедшему пользователю должна быть назначена поддерживаемая роль Microsoft Entra или настраиваемая роль с разрешением поддерживаемой роли.
Внешняя идентификация администратор потока пользователей — это наименее привилегированная роль, поддерживаемая для этой операции.
HTTP-запрос
POST /identity/b2xUserFlows/{id}/userAttributeAssignments
Отображаемое имя identityUserFlowAttribute в потоке пользователя.
isOptional
Логический
Определяет, является ли identityUserFlowAttribute необязательным.
true означает, что пользователю не нужно предоставлять значение.
false означает, что пользователь не может завершить регистрацию, не указав значение.
requiresVerification
Логический
Определяет, требуется ли проверка identityUserFlowAttribute. Используется только для проверки номера телефона или адреса электронной почты пользователя.
Параметры ввода для атрибута потока пользователя. Применимо только в том случае, если userInputType имеет значение radioSingleSelect, dropdownSingleSelectили checkboxMultiSelect.
userInputType
identityUserFlowAttributeInputType
Тип входных данных атрибута потока пользователя. Возможные значения: textBox, dateTimeDropdown, radioSingleSelect, dropdownSingleSelect, emailBox, checkboxMultiSelect.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new IdentityUserFlowAttributeAssignment
{
IsOptional = false,
RequiresVerification = false,
UserInputType = IdentityUserFlowAttributeInputType.TextBox,
DisplayName = "Shoe size",
UserAttributeValues = new List<UserAttributeValuesItem>
{
},
UserAttribute = new IdentityUserFlowAttribute
{
Id = "extension_guid_shoeSize",
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Identity.B2xUserFlows["{b2xIdentityUserFlow-id}"].UserAttributeAssignments.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
IdentityUserFlowAttributeAssignment identityUserFlowAttributeAssignment = new IdentityUserFlowAttributeAssignment();
identityUserFlowAttributeAssignment.setIsOptional(false);
identityUserFlowAttributeAssignment.setRequiresVerification(false);
identityUserFlowAttributeAssignment.setUserInputType(IdentityUserFlowAttributeInputType.TextBox);
identityUserFlowAttributeAssignment.setDisplayName("Shoe size");
LinkedList<UserAttributeValuesItem> userAttributeValues = new LinkedList<UserAttributeValuesItem>();
identityUserFlowAttributeAssignment.setUserAttributeValues(userAttributeValues);
IdentityUserFlowAttribute userAttribute = new IdentityUserFlowAttribute();
userAttribute.setId("extension_guid_shoeSize");
identityUserFlowAttributeAssignment.setUserAttribute(userAttribute);
IdentityUserFlowAttributeAssignment result = graphClient.identity().b2xUserFlows().byB2xIdentityUserFlowId("{b2xIdentityUserFlow-id}").userAttributeAssignments().post(identityUserFlowAttributeAssignment);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\IdentityUserFlowAttributeAssignment;
use Microsoft\Graph\Generated\Models\IdentityUserFlowAttributeInputType;
use Microsoft\Graph\Generated\Models\UserAttributeValuesItem;
use Microsoft\Graph\Generated\Models\IdentityUserFlowAttribute;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new IdentityUserFlowAttributeAssignment();
$requestBody->setIsOptional(false);
$requestBody->setRequiresVerification(false);
$requestBody->setUserInputType(new IdentityUserFlowAttributeInputType('textBox'));
$requestBody->setDisplayName('Shoe size');
$requestBody->setUserAttributeValues([ ]);
$userAttribute = new IdentityUserFlowAttribute();
$userAttribute->setId('extension_guid_shoeSize');
$requestBody->setUserAttribute($userAttribute);
$result = $graphServiceClient->identity()->b2xUserFlows()->byB2xIdentityUserFlowId('b2xIdentityUserFlow-id')->userAttributeAssignments()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.identity_user_flow_attribute_assignment import IdentityUserFlowAttributeAssignment
from msgraph.generated.models.identity_user_flow_attribute_input_type import IdentityUserFlowAttributeInputType
from msgraph.generated.models.user_attribute_values_item import UserAttributeValuesItem
from msgraph.generated.models.identity_user_flow_attribute import IdentityUserFlowAttribute
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = IdentityUserFlowAttributeAssignment(
is_optional = False,
requires_verification = False,
user_input_type = IdentityUserFlowAttributeInputType.TextBox,
display_name = "Shoe size",
user_attribute_values = [
],
user_attribute = IdentityUserFlowAttribute(
id = "extension_guid_shoeSize",
),
)
result = await graph_client.identity.b2x_user_flows.by_b2x_identity_user_flow_id('b2xIdentityUserFlow-id').user_attribute_assignments.post(request_body)