1.安裝配置
下載地址:
啓動:
Keycloak 的本地訪問地址爲:http://localhost:8080/auth/,訪問該地址,點擊頁面中的“Administration Console“,創建 Keycloak 的管理員賬戶,該賬戶用於在 Keycloak 中進行配置,管理用戶、角色等。
2.配置mysql數據庫
1.下載JDBC驅動,可從官網或maven倉庫直接下載,不再贅述。
2.將驅動打包放入Keycloak的classpath中
2.1在路徑keycloak\modules\system\layers\base。。。。下新建目錄com\mysql\main,並將下載的Jar放入此目錄。目錄名稱可隨意修改,不過官方推薦使用包路徑作爲目錄。例如:D:\soft\keycloak-9.0.3\modules\system\layers\base\com\mysql\main
jar同級目錄下新建文件module.xml,文件內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="com.mysql">
<resources>
<resource-root path="mysql-connector-java-8.0.13.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true" statistics-enabled="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
<security>
</datasource>
<datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true" statistics-enabled="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}">
<!--<connection-url>jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
<security>-->
<connection-url>jdbc:mysql://192.168.43.105/keycloak?useSSL=false&serverTimezone=GMT%2B8&characterEncoding=UTF-8</connection-url>
<driver>mysql</driver>
<security>
<user-name>root</user-name>
<password>root</password>
<curity>
</datasource>
<drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="mysql" module="com.mysql">
<xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
啓動後生成數據庫的表如下:
keycloak單點配置及樣例:
鏈接:https://pan.baidu.com/s/188xvNKy_YGS0oC9KIZYdhQ
提取碼:c2dy
注意此處的role對應的keycloak中client中的role: ROLE_user