【问题标题】:Azure SSO JWT token is still valid after signing outAzure SSO JWT 令牌在退出后仍然有效
【发布时间】:2017-11-18 15:23:16
【问题描述】:

我有一个 JWT 令牌,它在客户端生成并存储在会话存储中。它被传递到用 Authorize 属性修饰的 ASP.NET WebApi 端点。如果用户从我的应用程序中注销,那么我可以删除令牌并将用户从 Azure 中注销。

但是,如果用户转到不同的 Azure 站点并注销,那么我的应用程序中使用的令牌仍然有效(尽管用户已注销。)如何强制 WebApi 回调 Azure 并重新验证令牌每个请求?

谢谢,

【问题讨论】:

  • 你找到解决方案了吗?

标签: azure asp.net-web-api jwt


【解决方案1】:

Azure AD JWT 访问令牌是自签名的,并且有效负载包含 exp 时间戳、日期时间,直到令牌有效为止。信赖方应用程序不与 Azure AD 通信以验证令牌,而是使用自签名信息。
正如您所提到的,注销的唯一方法是删除令牌。

当您从 Azure AD SSO 注销时,您只能注销创建新的访问令牌,但已颁发的访问令牌将继续工作,直到它们过期.
尝试从 Azure AD SSO 注销,但保留应用程序的访问令牌:您仍然可以访问它。

因此,如果您想从两个应用程序中注销,则需要删除两个应用程序的访问令牌。

【讨论】:

  • 感谢您的回答。因此,如果我在一个选项卡中访问类似 microsoftonline 的内容,然后在第二个选项卡中访问 azure 门户。然后我退出 microsoftonline 并在 azure 门户中按刷新,我也立即退出了 Azure 门户。他们是否只是设置了一个非常短的令牌到期时间并继续重新发行令牌?
  • 他们可能正在实施单点注销,如本示例中所述:github.com/Azure-Samples/…。应用可以使用那里的技术检查 AAD 会话是否处于活动状态。
猜你喜欢
  • 1970-01-01
  • 2017-08-20
  • 1970-01-01
  • 2012-05-16
  • 1970-01-01
  • 1970-01-01
  • 2020-01-09
  • 1970-01-01
  • 2019-01-20
相关资源
最近更新 更多