1

似乎找不到任何使 FusionAuth 在注销时向应用程序发送信号以终止用户会话的东西。

4

1 回答 1

1

FusionAuth 提供了一个/api/logout可能会起作用的 API。此 API 将撤销用户拥有的任何刷新令牌。当刷新令牌被撤销时,FusionAuth 将向任何已配置的 Webhook 发送一个事件。

以下是有关此 API、Webhooks 和触发事件的文档:

以下是您可以采取的粗略步骤来完成这项工作:

  1. 在您的应用程序或新的微服务中创建注销端点 ( https://example.com/global-logout)
  2. 该端点调用/api/logoutFusionAuth中的端点
  3. 每个想要被通知的应用程序然后编写一个 Webhook 并处理jwt.refresh-token.revoke事件

您可以在有关文档的链接中看到一个示例 Webhook。处理事件的 Webhookjwt.refresh-token.revoke在 Node/JavaScript 中可能如下所示:

router.route('/fusionauth-webhook').post((req, res) => {
  const request = req.body;
  if (request.event.type === 'jwt.refresh-token.revoke') {
    // Clean up all the user's stuff here
  }
});
于 2019-07-30T18:44:21.617 回答