MSAL возвращает сбой операции обновления токена в Chrome, как решить эту проблему? - PullRequest
0 голосов
/ 24 сентября 2019

Я использую ReactJS и MSAL 1.1.3 для аутентификации Azure AD.Я часто получаю сообщение об ошибке «Операция обновления токена не удалась».Я очистил кеш, и все равно он появляется.Я также пытался использовать его в режиме инкогнито, иногда это позволяло мне войти, но в большинстве случаев возвращало ошибку.Процедура прекрасно работает в Chrome и не работает должным образом в IE, Edge, Firefox и Opera.Любая помощь будет принята с благодарностью.

Я также добавил loadFrameTimeout, но он не будет работать.Ниже приводится моя конфигурация, которую я использовал для создания msalInstace и процедуры входа в систему:

const msalConfig = {
  auth: {
    clientId: my_client_id,
    authority: 'https://login.microsoftonline.com/tenant_id',
    scopes: [`${websiteURL}/user_impersonation`],
    redirectUri: `${websiteURL}/`,
    postLogoutRedirectUri: `${websiteURL}/`,
    loadFrameTimeout: 10000,
  },
  cache: {
    cacheLocation: "sessionStorage",
  },
  navigateToLoginRequestURL: false,
  storeAuthStateInCookie: true,
};

msalInstance = new Msal.UserAgentApplication(msalConfig);

const loginRequest = {
            scopes: [`${websiteURL}/user_impersonation`],
            authority: 'https://login.microsoftonline.com/tenant_id',
        };

msalInstance.loginPopup(loginRequest)
    .then(response => {
        msalInstance.acquireTokenSilent(loginRequest)
            .then(responseToken => {
                this.setState({
            redirect: true
        })
            })
            .catch(err => {
                console.log(err);
            })
    })
    .catch(err => {
        console.log(err);
    })

После успешного входа пользователь перенаправляется на другую страницу.

...