MSAL - идентификатор пользователя и idToken.oid - PullRequest
0 голосов
/ 31 октября 2019

Я использую MSAL для проверки пользователя по Microsoft Azure AD и получаю верный токен.

Библиотека MSAL возвращает мне объект User, который содержит свойство с именем userIdentifier.

Это строка, а не GUID.

В документации говорится об использовании поля с именем oid для уникальной идентификации пользователей на платформе Microsoft Identity. У меня есть это свойство в User.idToken.oid.

Это значение является GUID, как сказано в документации.

Мой вопрос: что это за User.userIdentifier и мне следует его использовать? Мне нужно знать, что хранить на стороне базы данных, чтобы связать этого локального пользователя с пользователем Azure AD.

1 Ответ

1 голос
/ 01 ноября 2019

Глядя на исходный код (https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-core/src/Account.ts),, нет userIdentifier, но есть accountIdentifier. Может быть, у вас более старая версия, и в этом случае это может быть неправильно для этого.

// create accountIdentifier
const accountIdentifier: string = idToken.objectId ||  idToken.subject;

Это требование oid или sub, в зависимости от того, какое значение имеет. Если вы хотите oid, вы должны получить его из свойства idTokenClaims в Account.

...