Изменить имя пользователя с помощью пользовательской политики в Azure AD B2C - PullRequest
0 голосов
/ 14 января 2020

Я использую username в пользовательских политиках для аутентификации, в качестве имени пользователя можно использовать либо электронную почту, либо телефон: signInNames.emailAddress или signInNames.phoneNumber. Теперь мне нужно включить редактирование профиля, там пользователь меняет адрес электронной почты и телефон. Проблема, которую я получаю, заключается в том, что пользователь уже существует. Позволяет ли B2 C изменить имя пользователя или что-то не так в этом профиле?

Вот технический профиль для обновления профиля:

                    <TechnicalProfile Id="AAD-UserWriteProfileUsingObjectId">
                    <Metadata>
                        <Item Key="Operation">Write</Item>
                        <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">false</Item>
                        <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
                    </Metadata>
                    <IncludeInSso>false</IncludeInSso>
                    <InputClaims>
                        <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
                    </InputClaims>
                    <PersistedClaims>
                        <!-- Required claims -->
                        <PersistedClaim ClaimTypeReferenceId="objectId" />
                        <PersistedClaim ClaimTypeReferenceId="signInNames.emailAddress" />
                        <PersistedClaim ClaimTypeReferenceId="signInNames.phoneNumber"  />

                        <!-- Optional claims -->
                        <PersistedClaim ClaimTypeReferenceId="givenName" />
                        <PersistedClaim ClaimTypeReferenceId="surname" />

                    </PersistedClaims>
                    <IncludeTechnicalProfile ReferenceId="AAD-Common" />
                </TechnicalProfile>

1 Ответ

0 голосов
/ 15 января 2020

Я проверил его и могу успешно изменить имя пользователя.

Вы можете обратиться к Использовать новое свойство расширения или пользовательский атрибут в пути пользователя для его настройки. Просто игнорируйте шаг 3, потому что это не пользовательский атрибут.

Когда я изменяю текущее имя пользователя на существующее имя пользователя, будет отображаться:

Пользователь с указанным идентификатором уже существует , Пожалуйста, выберите другой.

Поэтому убедитесь, что имя пользователя, которое вы хотите изменить, не существует в арендаторе.

...