基于OAuth2.0
中的授权码模式
和JavaEE
中的SSM框架
进行开发的单点登陆系统
The system of Single sign-on
based on OAuth2.0
and SSM
.
序号 | 术语 | 详情 |
---|---|---|
1 | Resource Server(RS) |
资源服务器,理解为SSO的客户端 |
2 | Authenticate Server(AS) |
授权服务器,理解为SSO的服务器 |
3 | code |
授权码 |
4 | Access Token |
访问令牌 |
5 | Refresh Token |
刷新令牌 |
序号 | 参数名 | 参数解释 |
---|---|---|
1 | SSO_SERVER_IP |
SSO服务器应用所部署服务器的ip地址 |
2 | SSO_SERVER_PORT |
SSO服务器应用所占用的端口 |
3 | SSO_CLIENT_IP |
SSO客户端应用所部署服务器的ip地址(与所在第三方应用一致) |
4 | SSO_CLIENT_PORT |
SSO客户端应用所占用的端口(与所在第三方应用一致) |
5 | CLIENT$ID |
客户端id |
6 | CLIENT$SECRET |
客户端密钥 |
7 | SSO_CLIENT_URI |
重定向地址,即redirectURI(SSO服务器重定向回SSO客户端所在的第三方系统) |
7 | returnURI |
目标地址returnURI(用户要访问的资源) |
- Spring+SpringMVC+Mybatis、MySQL数据库
- 第三方系统接入界面为基于Bootstrap的Hui前端框架
Servlet、HttpClient
描述 | 向SSO服务器申请接入第三方应用 |
---|---|
URL | http://IP地址:端口号/sso-server/common/client/switch-on-sso.jsp |
示例 | http://127.0.0.1:8080/sso-server/common/client/switch-on-sso.jsp |
URL | 客户端ID |
描述 | SSO服务器管理人员审核并同意第三方系统接入 |
---|---|
URL | http://IP地址:端口号/sso-server/common/login.jsp |
示例 | http:// 127.0.0.1:8080/sso-server/common/login.jsp |
参数 | username=admin password=admin |
- 将sso-client打成jar包,并导入到第三方系统中
- 编写servlet继承并重写OAuthServlet中的回调方法
- 配置filter和servlet