Я защитил свое приложение Angular 7 с помощью msal.js. Я создал собственную политику, которая возвращает настраиваемые типы утверждений в id_token и access_token. Чтобы добиться этого, я следовал этому руководству: https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-custom-rest-api-netfw. Когда я использую метод acquireTokenSilent()
msal.js, токен JWT не содержит пользовательских утверждений (contract, fileUploadAllowed).
Когда я использую кнопку «Выполнить сейчас» на панели настраиваемой политики в Azure, я получаю access_token с пользовательскими утверждениями.
Полезная нагрузка токена JWT, генерируемая при запуске политики в Azure (изменились некоторые значения):
{
"iss": "https://login.microsoftonline.com/guid/v2.0/",
"exp": 1548416392,
"nbf": 1548455092,
"aud": "c152h904-835a-496f-8919-e74f5013374c",
"contract": "Contract03",
"fileUploadAllowed": false,
"sub": "25a6ec11-16fd-477a-8917-e0728c69e1db",
"nonce": "defaultNonce",
"scp": "portal.read user_impersonation",
"azp": "c154c904-835a-496f-8919-e74f5087384c",
"ver": "1.0",
"iat": 1542213053
}
Полезная нагрузка токена JWT (access_token), сгенерированного msal.js:
{
"iss": "https://login.microsoftonline.com/guid/v2.0/",
"exp": 1548416396,
"nbf": 1548455092,
"aud": "c152h904-835a-496f-8919-e74f5013374c",
"sub": "25a6ec11-16fd-477a-8917-e0728c69e1db",
"nonce": "e6df86c9-7c19-4cb5-a4ac-1aa2a89b1951",
"scp": "portal.read user_impersonation",
"azp": "c154c904-835a-496f-8919-e74f5087384c",
"ver": "1.0",
"iat": 1542213953
}
Я хочу получить пользовательские утверждения в access_token, который генерируется msal.js. Кто-нибудь знает, что я должен сделать, чтобы сделать эту работу?
Спасибо.