在我的SpringBoot应用程序中,我在application.properties文件中传递了keycloak配置参数。但是,我想知道是否有办法让keycloak从代码而不是application.properties中读取这些参数。
例如,我从数据库中检索Realm,Server URL,ClientID和其他参数,我想告诉keycloak直接从数据库中读取,或者从我在启动时声明的String中读取。
这可能吗?
谢谢
答案 0 :(得分:1)
与KeycloakSpringBootConfigResolver类似,您的数据库读取器类必须实现KeycloakConfigResolver
,并且应该以bean的形式提供。
public class KeycloakDBConfigResolver implements org.keycloak.adapters.KeycloakConfigResolver {
@Override
public KeycloakDeployment resolve(OIDCHttpFacade.Request request) {
//Read keycloak configuration from Database
}
}
resolve()
方法应该从数据库读取keycloak配置并构建KeycloakDeployment。