簡體   English   中英

18.0.0 版 Keycloak 的自定義事件監聽器

[英]Custom Event Listener for Keycloak of version 18.0.0

我正在嘗試為 Keycloak 創建一個事件偵聽器:項目結構和 META-INF.services.org.keycloak.events.EventListenerProviderFactory

CustomEventListenerProviderFactory:

public class CustomEventListenerProviderFactory implements EventListenerProviderFactory {

    private static final String LISTENER_ID = "event-listener-extension";

    @Override
    public EventListenerProvider create(KeycloakSession session) {
        return new CustomEventListenerProvider();
    }

    @Override
    public void init(Config.Scope scope) {

    }

    @Override
    public void postInit(KeycloakSessionFactory keycloakSessionFactory) {

    }

    @Override
    public void close() {

    }

    @Override
    public String getId() {
        return LISTENER_ID;
    }

}

自定義事件監聽器提供者:

@Slf4j
@NoArgsConstructor
public class CustomEventListenerProvider implements EventListenerProvider {

    @Override
    public void onEvent(Event event) {
      log.info("Caught event {}", EventUtils.toString(event));
    }

    @Override
    public void onEvent(AdminEvent adminEvent, boolean b) {
        log.info("Caught admin event {}", EventUtils.toString(adminEvent));

        List<CustomAdminEvent> events = new LinkedList<>();
        events.add(new PasswordResetEvent(adminEvent));

        events.stream().filter(CustomAdminEvent::isValid).forEach(CustomAdminEvent::process);
    }

    @Override
    public void close() {

    }
}

但是當我運行mvn clean package在 mvn 命令之后將目標文件夾復制到部署文件夾的路徑中,然后運行命令在 cmd 中啟動 Keycloak

kc.bat start-dev --http-port 8082

不顯示自定義事件。

鑰匙斗篷中的事件

PNG

只是提供者文件夾中的提供者。 主題文件夾中的主題。 不多也不少。 還要閱讀這些文件夾中的 READMNE.md....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM