keycloak_keycloak 同步用户表

keycloak_keycloak 同步用户表keycloak使用心得

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

部署和使用

keycloak是一套基于autho2.0开源授权系统。

第一步:下载keycloak安装包 https://www.keycloak.org/downloads

第二步:解压安装包

第三步:运行 windows下运行bin下的standalone.bat文件 linux下运行standalone.sh文件 

可配置运行端口和监听host 命令(standalone.bat -Djboss.socket.binding.port-offset=100  -Djboss.bind.address=192.168.112.172)

-Djboss.socket.binding.port-offset=100 表示默认端口8080的偏移量 为8180

 -Djboss.bind.address=172.168.112.172 表示的监听host默认127.0.0.1

第四步:更换数据库为pgsql,默认使用h2NoSql数据库。

下载pgsql驱动包:https://jdbc.postgresql.org/download.html

导入pgsql驱动包:在keycloak的modules\system\layers\base\org路径下创建\postgresql\main文件夹,将下载的驱动包放到main文件下,在main文件下创建文件module.xml的文件,编辑内容如下:

<?xml version=”1.0″ encoding=”UTF-8″?>

<module xmlns=”urn:jboss:module:1.5″ name=”org.postgresql”>
    <resources>
        <resource-root path=”postgresql-42.2.8.jar”/>
    </resources>
    <dependencies>
        <module name=”javax.api”/>
        <module name=”javax.transaction.api”/>
        <module name=”javax.servlet.api” optional=”true”/>
    </dependencies>
</module>
其中name是pgsql驱动包名,resource-root是驱动板文件名
 修改keycloak-11.0.3\standalone\configuration\standalone.xml
查找 drivers 标签增加pgsql驱动
 <driver name=”postgresql” module=”org.postgresql”>
  <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
</driver>
module为之前module.xml中的name,此处的name为driver的名称
此处注意:xa-datasource-class的值会随着jdbc版本变化而不同,可从jar包中寻找到正确的路径。

向上查找标签 datasource
注释掉名称为keycloakDS的数据源,并加上pgsql的:
<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:postgresql://localhost:5432/postgres</connection-url>
  <driver>postgresql</driver>
  <pool>
    <max-pool-size>20</max-pool-size>
  </pool>
  <security>
    <user-name>postgres</user-name>
    <password>root</password>
  </security>
</datasource>
此处注意:需要手工建立keycloak库。启动keycloak即可。在pgsql中可查看到创建数据库和表。
 
开发使用的接口文档:
此处为授权码方式的接口:
获取code:”/protocol/openid-connect/auth”  [get]
获取token和刷新token:”/protocol/openid-connect/token”  [post]     
获取用户信息:”/protocol/openid-connect/userinfo”    [get]
域名/auth/realms/realms的值拼接上述的地址既可完成对应的请求 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166868.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Matlab绘制折线图详细方法

    Matlab绘制折线图详细方法Matlab绘制折线图属于非常基本的功能,首先给出一个示例代码,有详细的解释,可以根据自己需求进行修改。x=1:1:5;%x轴上的数据,第一个值代表数据开始,第二个值代表间隔,第三个值代表终止a=[203.024,113.857,256.259,244.888,293.376];%a数据y值b=[334.4,143.2,297.4,487.2,596.2];%b数据y值pl…

    2022年4月27日
    54
  • 查看80端口:_如何查看自己80端口开放

    查看80端口:_如何查看自己80端口开放查看80端口:netstat-ano|findstr80添加端口:netshhttpaddiplistenipaddress=xxx.xxx.xxx.xxx删除端口:netshhtt

    2022年8月3日
    2
  • UI自动化平台_ui自动化是什么意思

    UI自动化平台_ui自动化是什么意思这里写自定义目录标题Pycharm创建Django项目讲解一、新建一个django项目1、Location:是项目路径;2、Projectinterceptor:是选择使用的python版本,除了电脑中已经暗转过的python,也可以选择新的版本(新版本pycharm会自动下载);3、Templatelanguage:是模板语言,我们选择django,其他的不用管;4、Templatefolder:是模板路径,默认是templates;5、Applicationname:是应用程序名称

    2025年6月14日
    0
  • 从CentOS官网下载系统镜像详细教程[通俗易懂]

    从CentOS官网下载系统镜像详细教程[通俗易懂]1、CentoS简介    CentOS(CommunityEnterpriseOperatingSystem,社区企业操作系统)是一个基于RedHatLinux提供的可自由使用源代码的企业级Linux发行版本,以高效、稳定著称。它使用与RedHat相同的源代码编译而成,而且是开源免费的,因此有些要求高度稳定性的服务器以CentOS替代商业版的RedHatEnterpris…

    2022年5月3日
    61
  • ubuntu服务器硬件配置

    ubuntu服务器硬件配置1.系统cat/etc/issue2.内存free-h3.硬盘df-h4.CPUcat/proc/cpuinfocpu个数cat/proc/cpuinfo|grep”physicalid”|sort|uniq|wc-l

    2022年10月21日
    0
  • IOS 与ANDROID框架及应用开发模式对照一[通俗易懂]

    IOS 与ANDROID框架及应用开发模式对照一

    2022年1月20日
    145

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号