【发布时间】:2021-09-09 01:16:14
【问题描述】:
我尝试了 auth0,但遇到了无法阻止或强制注销用户的问题。
在我从 auth0 控制台阻止用户后,登录的用户仍然可以访问路由。
我使用了 express-openid-connect 中间件和 requiresAuth()
我想这是基于 JWT 的服务的常见问题?我应该实施一个有状态的会话来管理这些用例的用户吗?
【问题讨论】:
标签: auth0
我尝试了 auth0,但遇到了无法阻止或强制注销用户的问题。
在我从 auth0 控制台阻止用户后,登录的用户仍然可以访问路由。
我使用了 express-openid-connect 中间件和 requiresAuth()
我想这是基于 JWT 的服务的常见问题?我应该实施一个有状态的会话来管理这些用例的用户吗?
【问题讨论】:
标签: auth0
在基于 JWT 的服务中,通常的做法是缩短访问令牌的生命周期,例如10-15 分钟。这样用户仍然可以在一个短窗口内访问 api,但很快需要刷新令牌。当令牌刷新发生时,身份验证服务会被调用,并且可以拒绝授予新令牌。
因此,您可以确保访问令牌的生命周期足够短,并且足以满足安全要求。
当然,从技术上讲,您可以实现有状态会话来检查每个请求的用户信息,但在这种情况下您不应该调用 Auth0 api,因为您将达到他们的速率限制器并且它会减慢您的 api 请求。需要与您的服务器端快速读取数据库/缓存进行某种同步。
【讨论】: