我在不同的域上有两个站点。我正在使用 Thinktecture IdentityModel 实现 SSO。
用户登录到站点 A。在某些时候,他们单击链接将他们带到站点 B。站点 A 使用 JWT 令牌将用户重定向到站点 B/Login.aspx?token=<token>。然后站点 B 通过调用站点 A 上的 API 对用户进行身份验证来验证令牌。如果通过身份验证,用户将自动登录到站点 B。
默认情况下,Thinktecture 令牌持续 10 小时,无法杀死令牌(据我所知)。如果用户退出站点,令牌仍然有效。我可以查看浏览器历史记录并获取“Login.aspx?token=< token >” url 并自动重新登录。有没有办法在用户注销时杀死所有用户令牌?令牌不应该作为查询字符串的一部分传递吗?防止重放攻击的最佳方法是什么?