zoukankan      html  css  js  c++  java
  • 使用xxl_sso实现单点登录

    一、实现思路

    1、客户端1在访问时会查看本地浏览器是否有cookie缓存,如果没有则将该客户端的链接URL参数传递到登录服务

    2、在登录服务中通过过滤器获取该服务中是否存在该项目的cookie缓存,如果有则直接将cookie根据客户端1的回调链接进行重定向返回,并写入客户端1的本地浏览器缓存中。如果不存在则进行登录,并生产cookie信息存在登录服务中并将该cookie信息随着客户端1的回调地址传递到客户端1服务中

    3、客户端1获取到登录服务中的cookie信息后,会根据cookieredis中验证是否存在,若存在则将该cookie信息存入到客户端1的浏览器中。

    二、进入xxl官网

    https://www.xuxueli.com/page/projects.html下载XXL-SSO|分布式单点登录框架

     

    SSO框架官方文档:https://www.xuxueli.com/xxl-sso/

    三、更改数据

    1.更改host文件

    Host文件地址:C:WindowsSystem32driversetc

    127.0.0.1 xxlssoserver.com
    127.0.0.1 xxlssoclient1.com
    127.0.0.1 xxlssoclient2.com

    xxl-sso-web-sample-springboot  xxl-sso-core xxl-sso-server对应的redis配置文件进行更改为真实的连接地址2.更改xxl-sso-serverredis配置文件

    3.更改验证用户的数据

    即更改xxl-sso-server中的userServiceImpl文件对应代码

    4.更改cookie生成方式

    默认是使用用户id进行生成,该用法存在cookie可能重复的bug

    四、注意事项

    1.注释devtools依赖jar

    注释掉xxl-sso-server服务中的devtools依赖jar包,不然会在项目发送改变时他会帮我们自动重启,容易产生报错

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>provided</scope>
        <optional>true</optional>
    </dependency>

    2.JedisUtil工具类优化 

    JedisUtil工具类中的配置也可以进行修改成配置文件的形式,里面代码可以进行优化

    3.解决maven-gpg-pluginmaven-javadoc-plugin不能进行下载

    可以添加以下依赖在中央仓库进行下载

     

    <dependency>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-gpg-plugin</artifactId>
        <version>1.6</version>
        <type>maven-plugin</type>
    </dependency>
    
    <dependency>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.2.0</version>
    </dependency>

     

    Xxl-sso-server  五、需启动服务

    xxl-sso-web-sample-springboot

    idea中同时启用多个不同端口的项目时需设置share

     

    如果对以上xxl-sso框架有什么疑问的欢迎留言探讨,转载请说明出处,本人博客地址:https://www.cnblogs.com/chenyuanbo/

  • 相关阅读:
    Extjs4.x Ext.tree.Panel基本树控件的使用案例、源码
    Extjs4 autoload和iframe的取舍
    Extjs4 文件目录结构
    IIS7.5 配置MVC3.0 伪静态,不能访问html伪静态页面
    DB2存储过程模版
    C#后台调用跨域MVC服务,带Cookie验证
    基于SenchaTouch项目案例
    EF Code First DataAnnotations
    找不到方法:“Void System.Data.Objects.ObjectContextOptions.set_UseConsistentNullReferenceBehavior(Boolean)”。
    Babylon 3D engine (Silverlight)
  • 原文地址:https://www.cnblogs.com/chenyuanbo/p/12687550.html
Copyright © 2011-2022 走看看