zoukankan      html  css  js  c++  java
  • keycloak

    部署和使用

    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的modulessystemlayersaseorg路径下创建postgresqlmain文件夹,将下载的驱动包放到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.3standaloneconfigurationstandalone.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的值拼接上述的地址既可完成对应的请求 
  • 相关阅读:
    ElasticSearch权威指南学习(分布式搜索)
    ElasticSearch5.0之后的改变
    ElasticSearch权威指南学习(排序)
    ElasticSearch权威指南学习(结构化查询)
    ElasticSearch权威指南学习(映射和分析)
    ElasticSearch权威指南学习(分布式文档存储)
    ElasticSearch权威指南学习(文档)
    ElasticSearch权威指南学习(分布式集群)
    ElasticSearch核心知识总结(二)
    [书籍分享]0-006.微信从业人员推荐阅读的100本经典图书
  • 原文地址:https://www.cnblogs.com/blogphp/p/keycloak.html
Copyright © 2011-2022 走看看