【问题标题】:Generate keycloak user setting page URL生成 keycloak 用户设置页面 URL
【发布时间】:2015-05-08 22:07:30
【问题描述】:

我知道用户设置页面是:

https://DOMAIN:PORT/auth/realms/REALM/account/?referrer=APPLICATION

是否可以在没有硬编码服务器 DOMAIN 和其他参数的情况下在 servlet 上生成此 URL(从 keycloak.json 或通过任何提供的 API 从应用程序服务器获取这些参数)?

【问题讨论】:

    标签: jakarta-ee wildfly keycloak


    【解决方案1】:

    这可以通过从 ServletContext 中获取 Keycloak AdapterDeploymentContext 来实现:

    AdapterDeploymentContext deploymentContext = (AdapterDeploymentContext) getServletContext().getAttribute(AdapterDeploymentContext.class.getName());
    KeycloakDeployment deployment = deploymentContext.resolveDeployment(null);
    

    然后可以查询部署以获取 getAuthServerBaseUrl() 和 getRealm()。我让它可以在 TomEE 1.7.1(又名 Tomcat 7 和 Keycloak 的 1.1.0-Final)中工作,我相信它也可以在 Java-EE Wildfly 中工作。

    为此,您需要 maven 提供这些工件:

        <dependency>
            <groupId>org.keycloak</groupId>
            <artifactId>keycloak-adapter-core</artifactId>
            <version>1.1.0.Final</version>
            <scope>provided</scope>
        </dependency>
    

    【讨论】:

      猜你喜欢
      • 2018-12-10
      • 2019-11-03
      • 2020-02-01
      • 2021-04-19
      • 2016-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多