Как получить токен обновления без истечения срока действия в потоке Azure B2C в React

#reactjs #azure #azure-ad-b2c #implicit-grant

Вопрос:

Я пытаюсь реализовать сценарий, при котором в моем приложении react будет маркер обновления без истечения срока действия, чтобы пользователям не нужно было повторно входить в систему каждые 24 часа. Но в текущей реализации с библиотекой MSAL js это позволяет использовать только поток кода авторизации, и это не позволяет не иметь срока действия в соответствии с этой документацией[1][2].

Есть ли какой-либо способ использовать Azure AD B2C без маркера обновления по истечении срока действия? использование приложения SPA с MSAL или любой другой библиотекой react OIDC

Высоко ценю мнение экспертов Microsoft azure b2c по этому вопросу

Спасибо

[1]https://docs.microsoft.com/en-us/azure/active-directory/develop/reference-third-party-cookies-spas#security-implications-of-refresh-tokens-in-the-browser

[2]https://docs.microsoft.com/en-us/azure/active-directory-b2c/configure-tokens?поворотные точки=b2c-поток пользователей#токен-время жизни-поведение

Ответ №1:

Как следует из документов, RT установлен на 24 часа для приложений SPA.

Вы можете использовать Keep Me для входа в систему, чтобы получать длительные сеансы.

https://docs.microsoft.com/en-us/azure/active-directory-b2c/session-behavior?pivots=b2c-user-flow#enable-keep-me-signed-in-kmsi

Ответ №2:

Согласно документу, SPAs будут выданы токены, действительные только в течение 24 часов. Одностраничные приложения, использующие поток кода авторизации с помощью PKCE, всегда имеют срок службы токена обновления 24 часа, и для других приложений мы не сталкиваемся с этим ограничением.

другого способа установить маркер обновления без истечения срока действия нет.