【问题标题】:default configuration with embedded keycloak and spring boot app带有嵌入式 keycloak 和 spring boot 应用程序的默认配置
【发布时间】:2021-03-20 18:31:15
【问题描述】:
我正在使用嵌入式 keycloak 和 Spring Boot 应用程序
我创建了一个领域,然后创建了一个客户端:
Access Type:confidential
Authorization Enabled:enabled
然后我创建了具有权限和策略的资源
我的问题是:
我想将此配置导出到配置文件(java config 或 json config)中,这样当我重新启动 keycloak 服务器时,不必每次都必须在开始时配置 keycloak
我该怎么做?
【问题讨论】:
标签:
java
spring-boot
security
keycloak
keycloak-rest-api
【解决方案1】:
您可以使用Keycloak Admin REST API 导入/导出领域。要导入使用端点:
POST <KEYCLOAK_HOST>/auth/admin/realms/<REALM_NAME>/partialImport
并提供领域的JSON 表示。您可以通过单击 Realm > Export > Export 通过管理控制台 API 获得该表示。或者使用端点:
POST <KEYCLOAK_HOST>/auth/admin/realms/<REALM_NAME>/partial-export?exportClients=true&exportGroupsAndRoles=true
或者,对于导出/导入,您可以使用:
POST <KEYCLOAK_HOST>/auth/admin/realms
和
GET <KEYCLOAK_HOST>/auth/admin/realms/<REALM_NAME>
分别。
但是您需要单独导出/导入客户端:
GET <KEYCLOAK_HOST>/auth/admin/realms/<REALM_NAME>/clients
和
POST <KEYCLOAK_HOST>/auth/admin/realms/<REALM_NAME>/clients
并提供客户端的JSON 表示。