Keycloak 通过CLI配置KeyClope eventsListener

Keycloak 通过CLI配置KeyClope eventsListener,keycloak,jboss-cli,Keycloak,Jboss Cli,我已经为keydove实现了一个自定义事件监听器,并且能够使用standalone ha.xml <!-- This works --> <subsystem xmlns="urn:jboss:domain:keycloak-server:1.1"> ... <spi name="eventsListener"> <provider name="custom-listene

我已经为
keydove
实现了一个自定义事件监听器,并且能够使用
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>
    ...
和获取错误:

{
    "outcome" => "failed",
    "failure-description" => "WFLYCTL0216: Management resource '[
    (\"subsystem\" => \"keycloak-server\"),
    (\"spi\" => \"eventsListener\")
]' not found",
    "rolled-back" => true
}
当我通过CLI浏览到相应的文件夹时,我看不到可用于
keydape
的所有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?

最后,我解决了这个问题

subsystem=keydape 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)
/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)