通过 CLI 配置 Keycloak eventsListener
Posted
技术标签:
【中文标题】通过 CLI 配置 Keycloak eventsListener【英文标题】:Configure Keycloak eventsListener via CLI 【发布时间】:2020-12-27 22:29:13 【问题描述】:我已经为Keycloak
实现了一个自定义事件侦听器,并且能够使用standalone-ha.xml
提供其配置
<!-- This works -->
<subsystem xmlns="urn:jboss:domain:keycloak-server:1.1">
...
<spi name="eventsListener">
<provider name="custom-listener" enabled="true">
<properties>
<property name="host" value="http://host.docker.internal:9999"/>
</properties>
</provider>
</spi>
...
现在我正在尝试使用 CLI 实现相同的配置。
我打电话给jboss-cli.sh
[disconnected /] connect
[standalone@localhost:9990 /] /subsystem=keycloak-server/spi=eventsListener/provider=custom-listener/:map-put(name=properties,key=host,value=http://host.docker.internal:9999)
并得到错误:
"outcome" => "failed",
"failure-description" => "WFLYCTL0216: Management resource '[
(\"subsystem\" => \"keycloak-server\"),
(\"spi\" => \"eventsListener\")
]' not found",
"rolled-back" => true
当我通过 CLI 浏览到适当的文件夹时,我看不到所有可用于 Keycloak
的 SPI:
[standalone@localhost:9990 /] cd subsystem=keycloak-server/spi
[standalone@localhost:9990 spi] ls
connectionsHttpClient connectionsJpa hostname publicKeyStorage timer userSessionPersister
connectionsInfinispan eventsStore jta-lookup realmCache userCache x509cert-lookup
问题是:其余的 SPI 在哪里?或者更具体地说,如何通过 CLI 配置eventsListener
SPI?
【问题讨论】:
【参考方案1】:最后,我想通了。
subsystem=keycloak-server/spi
的内容与standalone-ha.xml
文件完全匹配。因此,eventsListener
在您明确创建之前不可用。
此 CLI 指令序列有效:
/subsystem=keycloak-server/spi=eventsListener/:add
/subsystem=keycloak-server/spi=eventsListener/provider=custom-listener:add(enabled=true)
/subsystem=keycloak-server/spi=eventsListener/provider=custom-listener/:map-put(name=properties,key=host,value=http://host.docker.internal:9999)
【讨论】:
以上是关于通过 CLI 配置 Keycloak eventsListener的主要内容,如果未能解决你的问题,请参考以下文章
是否可以通过 CLI - GUI 在(Keycloak 或 RH-SSO)中创建领域?
Keycloak:Admin-cli 添加 SMTP 服务器详细信息?
为啥 keycloak 隐藏“用户”部分下的“服务帐户管理员 cli”用户?