Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Aression/JavaEnterpriseExpSSO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

10 Commits

Repository files navigation

JavaEnterpriseExpSSO

基于Springboot框架实现的单点登录系统

说明

  • 本项目实现了基于OAuth2.0协议的SSO(Single Sign On)单点登陆系统,采用授权码模式(Authorization Code)实现
  • 子系统功能:
    • 简单起见, 只设置两个很小的功能
    • A8081子系统负责: 输入一个数A, 返回其二进制字符串Str.
    • B8082子系统负责: 输入一个数A, 返回其十六进制字符串Str.

预计实现路径

  • 页面的展示: springboot+thymeleaf实现
  • 登陆验证逻辑: OAuth2.0协议. 服务器(Server)承担验证服务器和服务供给方两个角色, 客户端(Client)需要向Server申请到登录态后才能执行其功能.
  • 服务器(Server)用于传输token和提供服务.

目前的实现和使用:

在主域(localhost:8084)认证中心创建session全局对话(如果关闭浏览器则会失效,后续可以改进(存储在cookie或者local的存储中,在前端用ajex请求用token作为文件头)),在子模块中定义一个拦截器没有token或者session则会访问(认证模块)。如果一个子模块访问认证模块登录成功,则会创建令牌和session全局对话,重定向并将token返回原来的子模块,并进行token信息的验证,验证成功则会创建局部session,如果此时其他的子模块访问,则会访问认证模块直接获取session中的token,避免了重复登录的操作。

使用:

  • 启动mongodb, 确保有一个名为root, 密码123456的用户拥有管理员权限
  • 启动三个springboot项目 app8081, app8082, app_server
  • 进入localhost:8081/sysA/wel进入系统A
  • 进入localhost:8082/sysB/wel进入系统B

About

基于Springboot框架的单点登录系统

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /