Jakarta ee keydeport和JBoss:编辑配置文件keydeport.json的位置
我正在使用JBoss EAP 6.2、JavaEE 6.0和keydepot-eap6-adapter-dist 6.0.1对keydepate进行身份验证 json当前打包在已部署的war归档文件中(在WEB-INF下),因此不能为每个客户互换 您知道如何将keydeport.json的路径更改为外部路径,以使其在每个安装/阶段都可以互换(例如,使用Docker)Jakarta ee keydeport和JBoss:编辑配置文件keydeport.json的位置,jakarta-ee,jboss,keycloak,Jakarta Ee,Jboss,Keycloak,我正在使用JBoss EAP 6.2、JavaEE 6.0和keydepot-eap6-adapter-dist 6.0.1对keydepate进行身份验证 json当前打包在已部署的war归档文件中(在WEB-INF下),因此不能为每个客户互换 您知道如何将keydeport.json的路径更改为外部路径,以使其在每个安装/阶段都可以互换(例如,使用Docker) 解决方案:多亏了ravthiru,我们实现了如下自定义配置解析器: public class CustomKeycloakRes
解决方案:多亏了ravthiru,我们实现了如下自定义配置解析器:
public class CustomKeycloakResolver implements KeycloakConfigResolver {
private KeycloakDeployment deployment;
@Override
public KeycloakDeployment resolve(OIDCHttpFacade.Request request) {
if (deployment != null) {
return deployment;
}
InputStream is;
try {
is = new FileInputStream(System.getenv("KEYCLOAK_CONFIG_FILE"));
} catch (FileNotFoundException e) {
throw new RuntimeException(e);
}
deployment = KeycloakDeploymentBuilder.build(is);
return deployment;
}
}
<context-param>
<param-name>keycloak.config.resolver</param-name>
<param-value>my.package.CustomKeycloakResolver</param-value>
</context-param>
并在WEB-INF/WEB.xml
中注册如下:
public class CustomKeycloakResolver implements KeycloakConfigResolver {
private KeycloakDeployment deployment;
@Override
public KeycloakDeployment resolve(OIDCHttpFacade.Request request) {
if (deployment != null) {
return deployment;
}
InputStream is;
try {
is = new FileInputStream(System.getenv("KEYCLOAK_CONFIG_FILE"));
} catch (FileNotFoundException e) {
throw new RuntimeException(e);
}
deployment = KeycloakDeploymentBuilder.build(is);
return deployment;
}
}
<context-param>
<param-name>keycloak.config.resolver</param-name>
<param-value>my.package.CustomKeycloakResolver</param-value>
</context-param>
keydape.config.resolver
my.package.customKeyClope解析程序
现在,您可以使用Docker容器中的环境变量直接指定路径。一个选项是在
web.xml
您可以在KeyClope和示例实现中找到有关此配置的更多信息