# [SSO](https://kawhii.github.io/sso/index.html) [![Build Status](https://travis-ci.org/kawhii/sso.svg?branch=master)](https://travis-ci.org/kawhii/sso) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/kawhii/sso/master/LICENSE) [![GitHub issues](https://img.shields.io/github/issues/kawhii/sso.svg)](https://github.com/kawhii/sso/issues)
打造一个单点登录平台,其中包括以下子系统
* CAS SERVER
* 配置中心
* 服务管理系统
* 监控平台
* 客户端集成(cas client、pac4j、shiro)
并且在博客中记录整个搭建过程以及注意事项,目前教程如下:
![目前教程](http://img.blog.csdn.net/20171129213711953?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDQ3NTA0MQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![监控系统](http://img.blog.csdn.net/20171115154701467?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDQ3NTA0MQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
# 特性
* Docker快速启动
* GitHub授权登录
* Cas Clint、Shiro Pac4j Client集成
* jdbc用户密码加密
* 自定义主题
* 配置统一管理
* 根据官网5.1.x新版本迭代
* 各阶段发布博客教程
* 密码管理
* 一键启动
* 第三方登录接入(QQ,WeChat,CSDN,GitHub)
* 绑定用户
* 验证码输出
* 自定义校验器
* 多属性返回
* 验证码发送、校验(注册发送邮箱验证码)
* 服务监控检测
* 校验码登录
* 单用户登录
## Tutorial: [![Csdn Blog Tutorial](https://img.shields.io/badge/csdn%20blog-tutorial-orange.svg)](http://blog.csdn.net/u010475041/article/category/7156505)
* [Blog](http://blog.csdn.net/u010475041/article/category/7156505)
* [Support](https://github.com/kawhii/sso/wiki)
域名:localhost
用户:
| 用户名 |密码|是否可登录|备注|
|:-------|:-------|:-------|:-------|
|admin|123|√||
|zhangsan|12345678|√||
|zhaosi|1234|×|禁用|
|wangwu|12345|√|需修改密码|
---
### [Docker 快速启动](https://hub.docker.com/r/kawhii/sso/)
*目前仅部署了配置中心及cas服务到docker环境中*
```cmd
docker run -d --restart=always -p 8443:8443 kawhii/sso
```
若采用docker启动,访问为:http://dockerip:8443/cas
### 注意
* 由于修改密码功能目前是发送到笔者的邮箱,若调整,需要修改`sso-server/src/main/resources/profile/dev/sql/data-dev.sql`
* 密码修改功能可以关闭问题回答功能
## 模块介绍
| 模块名 |模块介绍|端口情况|必须https|path|启动循序
|:-------|:-------|:----|:-------|:-----|:--|
|sso-server|cas服务|8443|√|cas|2|
|sso-config|配置中心|8888|×|config|1|
|sso-management|service管理|8081|×|cas-management|3|
|sso-cas-client-demo|cas-client-demo|8080|×|/sample|4|
|sso-client-shiro-demo|shiro-client-demo|8083|×|/|5|
|sso-client-proxy-demo|OAuth2代理转发客户端|8808|×|/|6|
|sso-monitor|监控服务|8444|×|/|7|
## 代码下载 [![码云](https://img.shields.io/badge/download-码云-yellowgreen.svg)](https://git.oschina.net/Kawhi-Carl/sso) [![Github](https://img.shields.io/badge/download-GitHub-brightgreen.svg)](https://github.com/kawhii/sso)
1. 每一个阶段都会封版打一个tag,需要的进行[下载](https://github.com/kawhii/sso/releases)
2. 原始构建文件存在于original-files目录下
## Development [![Dependency Status](https://www.versioneye.com/user/projects/59b6afd60fb24f004e1a656b/badge.svg?style=flat-square)](https://www.versioneye.com/user/projects/59b6afd60fb24f004e1a656b) [![codebeat badge](https://codebeat.co/badges/4b430ffd-0cb8-4310-b081-955a66e65c76)](https://codebeat.co/projects/github-com-laomazi2006-sso-master)
* jdk8
* maven3
### 帮助
```cmd
build.cmd help
```
输出以下帮助信息
```cmd
"Usage: build.bat [help|sso-server|sso-management|sso-config|cas-client-demo|shiro-client-demo|run-all|hosts]"
1. sso-config: Config Server
2. sso-server: CAS Server
3. sso-management: Cas Management
4. cas-client-demo: CasClient Demo
5. shiro-client-demo: ShiroDemo
6. run: Run all server
7. init: set '127.0.0.1 passport.sso.cm' to HOSTS, import cert to D:\soft\work\java\jdk1.8-144\jre\lib\security\cacerts
```
### 初始化
<!--
1. 负责把`passport.sso.com`设置到host文件
2. 把域名自签名证书导入到java环境(提示信息,第一个需要输入密码为**123456**,第二个导入密码为**changeit**)
-->
```cmd
build.cmd init
```
### 启动服务
> 由于启动服务多,开始占用CPU、内容稍高
```cmd
build.cmd run
```
* sso-config [配置中心](http://localhost:8888/config)
* sso-server [单点登录服务](http://localhost:8443/cas)
* cas-client-demo [cas客户端](http://localhost:8080/sample)
* shiro-client-demo [shiro客户端](http://localhost:8083)
* sso-management [服务管理客户端](http://localhost:8081/cas-management)
* sso-monitor [服务监控](http://localhost:8444)
```cmd
#server-id 为上面的各服务名称,
#如启动sso-management为,build.cmd sso-management
build.cmd [server-id]
```
# 联系方式
如果技术的交流或者疑问可以联系或者提出issue。
邮箱:huang.wenbin@foxmail.com
QQ: 756884434 (请注明:SSO-github)
> 如果项目对你有技术上的提升、工作上的帮助或者一些启示,不妨请小编喝杯咖啡,小编更会满怀激情的为大家讲解和输出博文哦。
微信
<img src="http://img.blog.csdn.net/20170908092906735?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDQ3NTA0MQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" width="230" height="230"/>
支付宝
<img src="http://img.blog.csdn.net/20170908100804669?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDQ3NTA0MQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" width="230" height="230"/>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Java是一种高性能、跨平台的面向对象编程语言。它由Sun Microsystems(现在是Oracle Corporation)的James Gosling等人在1995年推出,被设计为一种简单、健壮、可移植、多线程、动态的语言。Java的主要特点和优势包括以下几个方面: 跨平台性(Write Once, Run Anywhere): Java的代码可以在不同的平台上运行,只需编写一次代码,就可以在任何支持Java的设备上执行。这得益于Java虚拟机(JVM),它充当了代码和底层硬件之间的中介。 面向对象: Java是一种纯粹的面向对象编程语言,支持封装、继承和多态等面向对象的概念。这使得Java编写的代码更加模块化、可维护和可扩展。 多线程支持: Java内置了对多线程的支持,允许程序同时执行多个任务。这对于开发需要高并发性能的应用程序(如服务器端应用、网络应用等)非常重要。 自动内存管理(垃圾回收): Java具有自动内存管理机制,通过垃圾回收器自动回收不再使用的对象,使得开发者不需要手动管理内存,减轻了程序员的负担,同时也减少了内存泄漏的风险。
资源推荐
资源详情
资源评论
收起资源包目录
cas单点登录系统,其中包括cas认证服务,配置中心,监控平台,服务管理的高可用项目.zip (186个子文件)
mvnw.bat 6KB
mvnw.cmd 5KB
mvnw.cmd 5KB
mvnw.cmd 5KB
build.cmd 3KB
build.cmd 3KB
build.cmd 2KB
demo.css 82B
Dockerfile 1KB
spring.factories 213B
spring.factories 190B
spring.factories 184B
spring.factories 130B
.gitignore 3KB
casLoginView.html 3KB
layout.html 3KB
index.html 1KB
github.html 664B
maven-wrapper.jar 46KB
maven-wrapper.jar 46KB
ShiroConfiguration.java 5KB
ValidateWebflowConfiguation.java 3KB
ValidateWebflowConfigurer.java 3KB
AccessTokenController.java 3KB
SSOMailValidateConfiguration.java 3KB
ValidateCaptchaAction.java 3KB
ThirdPartyLoginAspect.java 3KB
ValidateLoginCaptchaAction.java 3KB
MailInformative.java 2KB
UsernamePasswordSystemAuthenticationHandler.java 2KB
CustomAuthenticationEventExecutionPlanConfiguration.java 2KB
TriggerLogoutService.java 2KB
CaptchaController.java 2KB
BindController.java 2KB
CustomerAuthWebflowConfiguration.java 2KB
CustomWebflowConfigurer.java 2KB
TGTCreateEventListener.java 2KB
ClientConfiguration.java 2KB
MailProperties.java 2KB
SingleLogoutTriggerConfiguration.java 1KB
DefaultValidateService.java 1KB
GitHubClientStrategy.java 1KB
MailValidator.java 1KB
UserController.java 1KB
MailInformativeGenerator.java 1KB
PasswordSaltTest.java 1KB
MailTest.java 1KB
NotBindException.java 1KB
SessionCaptchaResultProvider.java 1KB
CaptchaConfiguration.java 1KB
ClientProxyApplication.java 1KB
ValidateSenderException.java 1KB
CageCaptchaController.java 1KB
GitHubMemoryPrincipalBindResolver.java 1KB
MailSender.java 1KB
SessionCaptchaResultAware.java 992B
DefaultCaptchaAware.java 946B
UsernamePasswordSysCredential.java 915B
MailCredential.java 885B
ClientStrategy.java 875B
MailValidateCredential.java 869B
CaptchaAwareFactory.java 858B
NotBindExceptionController.java 837B
UserController.java 835B
MailMemoryStore.java 800B
UserIdObtainServiceImpl.java 776B
SSOValidateConfigurationProperties.java 771B
IndexController.java 729B
GithubProperties.java 723B
CageStringCaptchaWriter.java 721B
SSOValidateConfiguration.java 686B
SimpleUrlPatternMatcherStrategy.java 667B
PrincipalBindResolver.java 635B
MonitorApplication.java 625B
StringCaptchaResultAware.java 594B
ClientStrategyFactory.java 585B
ICaptchaResultProvider.java 582B
ShiroClientApplication.java 557B
CageStringTokenGenerator.java 555B
IValidateService.java 535B
RealmConfiguration.java 489B
ICaptchaWriter.java 486B
IUserIdObtainService.java 485B
ISender.java 484B
SsoConfigApplication.java 481B
IStore.java 473B
Informative.java 428B
IValidator.java 427B
ICaptchaAware.java 414B
CaptchaConstants.java 402B
InformativeGenerator.java 389B
ICaptchaResultAware.java 350B
ValidateResult.java 341B
StringTokenGenerator.java 331B
StringCaptchaWriter.java 321B
Credential.java 317B
ITokenGenerator.java 306B
ValidateCredential.java 288B
package-info.java 200B
package-info.java 185B
共 186 条
- 1
- 2
资源评论
JJJ69
- 粉丝: 6135
- 资源: 5674
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Qt开发知识、经验总结 包括Qss,数据库,Excel,Model/View等
- IV数据.xlsx
- 一些深度学习中的小例子,适合新手学习使用
- foldcraftlauncher_262944.apk
- 珍藏多年的基于matlab实现潮流计算程序源代码集合,包含多个潮流计算程序.rar
- 使用FPGA实现串-并型乘法器
- 基于matlab实现针对基于双曲线定位的DV-Hop算法中误差误差出一种基于加权双曲线定位的DV-Hop改进算法.rar
- 基于matlab实现由遗传算法开发的整数规划,车辆调度问题.rar
- 电视家7.0(对电视配置要求高).apk
- 免费计算机毕业设计-基于JavaEE的医院病历管理系统设计与实现(包含论文+源码)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功