Keycloak:订阅诸如创建用户之类的事件以触发网络服务

Posted

技术标签:

【中文标题】Keycloak:订阅诸如创建用户之类的事件以触发网络服务【英文标题】:Keycloak: Subscribe events like create user to trigger a webservice 【发布时间】:2019-12-17 06:09:37 【问题描述】:

我需要从 Keycloak 更新到另一个专有数据存储有关已创建用户的信息(无论是直接在 Keycloak 中创建还是在连接的 LDAP/Active 目录中创建)。 我试图增强日志记录,但似乎这并没有记录所有内容。

Keycloak 中是否有办法订阅某些事件(如创建用户)并从该事件触发一些日志记录/Web 服务调用——以便传输所有信息? 这样做的正确点是什么?

【问题讨论】:

【参考方案1】:

您可以通过实现 EventListenerProvider 和 EventListenerProviderFactory 接口来编写自己的事件监听器,更多可以在server development 文档中找到。

您还可以在keycloak-quickstarts 中找到将事件写入 System.out 的示例事件侦听器

【讨论】:

这看起来很有希望 - 如果联合用户也可以工作,则必须验证访问本地用户(表单会话)的工作。下一个问题是在插件中发送一个 Web 请求表单而不拉取外部依赖项。

以上是关于Keycloak:订阅诸如创建用户之类的事件以触发网络服务的主要内容,如果未能解决你的问题,请参考以下文章

Symfony:事件订阅者。当路由要求用户必须经过身份验证时触发 404 页面(取决于 .env var)

使用内置触发器或事件网格的 Azure 函数

Richfaces 列过滤器:如何在介绍键上触发事件

如果按下键,则不会触发鼠标交互的 JavaFX 事件

如何创建 CloudKit 订阅通知以触发记录属性更新?

使用 ASP.NET 处理订阅付款 [关闭]