Keycloak-Tomcat-Adapter:'keycloak.json'有替代路径吗?

时间:2016-04-28 10:52:15

标签: java tomcat keycloak

我尝试用keycloak来保护我的Java Servlet应用程序。一切正常,但我不喜欢我的'keycloak.json'文件位于我的发行版内。原因是,如果keycloak定义在我的战争中,那么我需要在不同的安装上不同的安装不同的构建过程或相同的客户端凭证。

我的想法是将'keycloak.json'放在我的WEB-INF之外。这可能吗?其他想法也可以解决这个问题。

2 个答案:

答案 0 :(得分:5)

如果您检查KeycloakOIDCFilter,则会看到有三个附加参数。

  • keycloak.config.resolver
  • keycloak.config.file
  • keycloak.config.path

我们正在使用文件参数,其工作方式与魅力相似。

答案 1 :(得分:2)

不需要上述Servlet-Filter。

设置一个上下文参数就足够了,就像@OkieOth在他的评论中说的那样。

例如设置这样的参数

<Parameter name="keycloak.config.file" value="MY-PATH/keycloak.json" override="false"/>

在您的上下文中(在配置了keycloak的Valve旁边)或Web应用程序部署描述符(/WEB-INF/web.xml)中的“ context-param”:

<context-param>
    <param-name>keycloak.config.file</param-name>
    <param-value>MY-PATH/keycloak.json</param-value>
</context-param>

有关上下文参数的更多详细信息,请参见“上下文参数”一节中的The Context Container