【问题标题】:react-aad-masal token renewal issuereact-aad-msal 令牌更新问题
【发布时间】:2022-01-08 22:40:54
【问题描述】:

在我的一个反应项目中,我使用react-aad-msal 进行身份验证。但是,我似乎遇到了以下问题:

  1. 第一次尝试登录,成功了
  2. 一小时后令牌过期,无法访问应用
  3. 需要清除缓存/浏览器历史并再次重新运行 react 应用才能访问页面

有没有人遇到过类似的问题。这是 authProvider.js 文件的样子:

 const config = {
  auth: {
    authority: `https://login.microsoftonline.com/${authority}`,
    clientId,
    validateAuthority: false,
    redirectUri: window.location.origin,
  },
  cache: {
    cacheLocation: 'localStorage',
    storeAuthStateInCookie: true,
  },
};

const authenticationParameters = {
  scopes: ['profile', 'offline_access'],
};

const options = {
  loginType: LoginType.Redirect,
  tokenRefreshUri: `${window.location.origin}/auth.html`,
};

提前感谢您的帮助。

【问题讨论】:

  • 令牌过期令牌超时应设置为 3600 秒,并且不会发出刷新令牌以扩展访问令牌。请检查一次。
  • 是的,设置了令牌过期的超时,令牌应该再次更新,但为什么没有?
  • 嘿,感谢 cmets。我认为我们在 azure 门户中进行了正确设置,但实际问题是 react-aad-msal 最新版本无法按预期工作,但降级软件包解决了我们的问题
  • 你好@saon,如果我的回答对你有帮助,你可以投票并接受它作为答案(点击答案旁边的复选标记,将其从灰色切换为填充。)。这对其他社区成员可能是有益的。谢谢。
  • 嘿,抱歉没有解决问题。我们在我们的应用注册中有类似的配置,但问题是我们需要降级 react-aad-msal 库才能成功更新令牌。

标签: reactjs azure-active-directory react-aad-msal


【解决方案1】:

• 请检查分配给您的应用程序身份验证和登录机制的任何条件访问策略,就好像该策略应用于您的应用程序的服务主体、您的组织或您的应用程序一样,然后它将优先于默认值刷新令牌超时和颁发以及访问令牌。

因此,要检查 Azure AD 中条件访问的身份验证会话控制,请检查 Security --> 条件访问中配置的会话控制设置,如下所示,因为这些设置定义了刷新令牌和会话行为:-

此外,请确保根据您的要求在您的策略中正确设置或未启用条件访问策略中的某些设置,例如登录频率控制、持久浏览器会话控制。请在下面找到参考图像以配置这些设置:-

更多详情请参考以下链接:-

https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/howto-conditional-access-session-lifetime

https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/concept-conditional-access-session

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-22
    • 1970-01-01
    • 2021-10-15
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多