vue.js - 即使删除了会话/本地存储,Msal auth 也会让您登录
问题描述
我对 Azure AD 会话有一个小问题。我使用 vue-msal 3.2.0 作为 JavaScript 的 msal lib 的包装器。我不确定它是否与这个特定的库或一般的 msal 有关。
当前行为:
- 如果我从 this.$msal 全局对象中使用 signOut 方法注销,我肯定会被注销,并且应用程序将需要新的身份验证(这部分工作 100% 正确)
- 如果我的令牌过期,我会被重定向到新的登录流程,这很棒。但是,如果我没有完成登录流程,我只是手动转到我的 URL(localhost:8080,但其他域的示例相同),vue-msal 将尝试使用旧令牌登录我,它会刷新它,然后让我登录,这很奇怪,因为我的令牌已过期......所以它不是 100% 预期的行为
- 我尝试了一个小解决方法-> 我尝试清空本地存储和 cookie。但是现在事情变得更奇怪了->没有任何关于我的用户令牌的线索(页面已刷新,因此 vue-msal 中的数据也被重置),vue-msal 正在尝试让我登录,我猜微软有一些缓存记住来自某个客户端的最后一个令牌,所以我再次登录,本地存储、cookie 甚至会话存储中没有任何数据(因为我尝试将本地切换到会话存储);
如果我的令牌已过期或我的令牌未存储在本地/会话存储或 cookie 中,我能否以某种方式确保我不会登录?
解决方案
推荐阅读
- javascript - ER_TRUNCATED_WRONG_VALUE,在没有重新加载 MYSQL 的情况下发出 post 请求后 ID 未定义
- python - 循环通过 ROS 包文件消息的矢量化方式
- php - 带有 XML 文件的数据库
- javascript - componentWillUnmount 不运行,因为 webpack 太快或覆盖
- javascript - Typedoc 不会为导入的模块生成 doc
- c++ - 如果 C++ 中没有 printf() 会禁用同步效果时间吗?
- python - Python:如何在 7.7872 中抓取字符串 7.7872
- python - 在 leetcode 中,为什么会出现错误“NameError: global name 'climbStairs' is not defined”?但在没有“自我”和“对象”的情况下工作?
- docker - 将 rasbperry pi 设置为代理服务器(安全)
- python - Python 'guild' 无法转换为 MySQL 类型