`

SSO(身份认证)

    博客分类:
  • Java
阅读更多
SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。

SSO技术实现机制
  当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭据--ticket;用户再访问别的应用的时候就会将这个ticket带上,作为自己认证的凭据,应用系统接受到请求之后会把ticket送到认证系统进行效验,检查ticket的合法性。如果通过效验,用户就可以在不用再次登录的情况下访问应用系统2和应用系统3了。

目标:整合现有邮件系统、论坛系统、博客系统,实现单点登陆。

面临问题:跨域;应用系统由不同的开发语言编写(如jsp、asp、php、cgi)。


整合要求:考虑历史数据的兼容性、完整性;尽量使应用系统的客户化改造最小、涉及的影响面最小;考虑未来可能使用的系统,预留接口。


方案:整合过程中需新开发统一认证系统,负责用户信息管理。用户信息注册由统一认证系统完成,邮件系统、论坛系统、博客系统中的用户ID与统一认证系统中的用户ID保持一致。即统一认证系统每产生一个用户ID邮件系统、论坛系统、博客系统也要产生相应的用户ID。

采用CAS实现统一验证,用户信息同步应用CAS的Proxy模式。这里重点阐述用户信息同步策略。同步过程主要有两方面,如下:
1、注册新用户
统一认证系统进行用户ID唯一性检查,检查过程依赖于邮件系统、论坛系统、博客系统获取信息,只有全部通过唯一性检查方可注册。
2、登陆应用系统
a、统一认证系统进行身份验证后重定向到应用系统。
b、应用系统获取用户ID,检测本地是否存在该用户ID,如不存在则创建,然后执行登陆操作。
分享到:
评论

相关推荐

    java二次开发源码下载-identity-agent-sso:身份代理sso

    springmvcjava二次开发源码下载弃用通知 此存储库已弃用,所有工作已移至以下存储库。 . . ...对于服务提供商,在入站身份验证配置下配置 SAML2 Web SSO。 在此配置中,使用以下参数和选项, Issue

    dyalna-identity:简单的SSO身份验证授权服务器

    Dyalna身份简单的SSO身份验证/授权服务器为什么Dyalna Identity旨在成为具有以下内置功能的独立SSO身份验证/授权和许可服务: 处理用户身份验证处理用户订阅根据用户角色和帐户计划处理功能授权根据帐户计划处理...

    统一身份认证系统+sso单点登录服务端及sso客户端源代码

    java+springboot+oauth2 写的统一身份认证系统+sso服务端及客户端程序,包括数据库及操作步骤及如何进行部署操作等,确保大家对统一身份认证有个深刻的认识,数据库已提供,需要大家自己导入到自己的系统中。...

    sso单点登陆1

    1. 用户访问应用系统,系统检查用户是否已经拥有有效的SSO身份验证Cookie。 2. 如果没有有效的Cookie,用户会被重定向到统一的SSO登录页面进行登录。 3. 用户输入用户名和密码,系统验证这些凭证。如果验证成功,...

    Java 单点登录开发教程(SSO)

    2. 应用重定向至SSO身份验证中心(例如CAS服务器)。 3. 用户在SSO服务器上输入凭证并验证。 4. 验证成功后,SSO服务器生成一个票据(Ticket Granting Ticket,TGT)并存储在服务器端,同时向用户返回一个服务票据...

    sso_统一身份认证及访问控制解决方案(

    - **身份认证服务**:向应用系统提供认证接口,中转认证请求,完成用户身份验证。 - **访问控制服务**:在单点登录过程中,控制用户对特定资源的访问。 #### 五、总结 综上所述,SSO单点登录系统通过实现统一的...

    Laravel开发-sso

    【描述】:“Laravel开发-sso Laravel 5和Lumen的SSO身份验证” 这个描述表明我们将探讨如何在Laravel 5版本以及Lumen微型框架中实现SSO身份验证。Laravel 5是Laravel框架的一个稳定版本,提供了丰富的功能和良好的...

    asp.net sso代码

    SSO身份验证则是跨越多个应用的单一登录体验。 2. **票据(Ticket)**:在ASP.NET SSO中,票据是存储用户身份信息的加密数据结构,用于在应用程序之间传递用户身份。 3. **票证验证服务(Ticket Validation ...

    SSO单点登陆解决方案

    * 降低成员网站的登录负载:SSO系统将身份验证负载转移到认证服务器上,降低成员网站的登录负载。 * 体现集团大平台、大渠道的理念:SSO系统将所有成员网站连接起来,体现集团大平台、大渠道的理念。 4. SSO系统的...

    java学习-单点登录(SSO)

    OpenID Connect是基于OAuth2的SSO身份验证层,适用于Web和移动应用。在Java环境中,可以使用如Keycloak这样的开源身份管理系统,它支持OpenID Connect,并提供了丰富的API和工具来实现SSO。 6. **实现步骤** 实现...

    cas统一身份认证sso

    统一身份认证-CAS配置实现 SSO单点登录Spring-Security+&+CAS+使用手册 统一身份认证-CAS配置实现 CAS登录验证(密码MD5、SHA加密后_再进行Base64加密实现代码)_与Liferay的用户身份验证对应

    SSO单点登录

    SSO(Single Sign-On)单点登录是一种网络身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次输入凭证。这个技术在现代企业信息化建设中扮演着重要角色,因为它提供了便捷的用户体验,同时...

    sso解决方案汇总

    在混合身份验证模式下,即同时支持表单认证和Windows集成认证的应用环境中,实现SSO的关键在于建立一套能够无缝切换和识别不同身份验证类型的系统。这可能涉及到定制的身份验证提供者和中间件,以确保无论用户通过哪...

    Laravel开发-laravel-kompas-sso

    在 Laravel Kompas SSO 中,每个应用都有自己的身份验证系统,但通过 Kompas 驱动,它们可以共享一个中央认证服务器(CAS)的状态,确保用户在整个生态系统中的单一登录体验。 **3. Laravel Kompas SSO 安装与配置*...

    .net的sso单点登录

    .NET中的SSO(Single Sign-On)单点登录...这可能包括使用自定义的IDP、令牌格式或者增强的身份验证流程,如多因素认证。 总之,.NET中的SSO单点登录涉及了多个层面的技术,包括WIF、声明式身份模型、联邦身份验证、ST

    sso统一身份认证和访问控制解决实施方案.doc

    sso统一身份认证和访问控制解决实施方案.doc

    java web sso 实现

    Java Web SSO(Single Sign-On)实现是一种身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需多次输入凭证。本教程将基于提供的博文链接进行讲解,但请注意,由于没有直接提供具体内容,这里会...

    SSO个人实现方式

    SSO(Single Sign-On)是单点登录的缩写,是一种网络身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次进行身份验证。在本文中,我们将探讨SSO的原理,以及如何通过提供的压缩包文件实现...

Global site tag (gtag.js) - Google Analytics