`
alex8946
  • 浏览: 365107 次
  • 性别: Icon_minigender_1
  • 来自: 广东广州
社区版块
存档分类
最新评论

关于单点登陆的几个问题

阅读更多

1 可以实现单点登陆的几种方法

(1)基于domain的方案
         这种方案是我公司目前使用的一种方案,原理:应用A在a.domain.com,B在b.domain.com,如果设cookie的时候,设domain为domain.com,那在A、B上都可以访问到这个cookie了。(cookie的domain、path、port、version、secure相同)。
该方案特点:
1、不能够跨域
2、在网络中传送用户名和密码
3、只支持J2EE应用

(2)基于gateway的方案
        实际部署的时候,对所有应用的请求,都要通过一个gateway转发一下,比如用一个L4的交换机顶在前面。

(3)基于tooken传递的方案
        主要是以耶鲁大学的CAS项目为基础。
        注意:你自己的应用看不到用户的密码。由CAS执行授权,只有CAS能看到用户的密码。这样增加发安全性,因为用户名和密码不会通过网络在应用间传播。
下面是使用CAS整合的单点登录用例

用例一:
一台认证服务器(假定为AUTH),有两个应用A、B,分别部署在不同的服务器上。
1) 用户访问A,A应用无法找到用户的身份信息,使用redirect方法将用户引导至http://Auth/login?service=http://A/path
2) AUTH 显示登录界面,用户输入登录信息,认证通过。
3) AUTH产生一个cookie(这个cookie只有AUTH上才能读到),使用redirect方法将用户引导回http://A/path?token=xxxxx(在有的解决方案上,这个token是通过一定编码算法的Account信息)
4) A读取token=xxxx的信息,获取用户身份。
5) 用户访问B。B未找到用户的身份信息,redirect至http://AUTH/login?service=http://B/path
6) AUTH读cookie获取用户身份,然后redirect回http://B/path?token=xxxx
7) B读取token=xxxx信息,获得用户身份信息
用例二:
  用户访问一个Web应用的过程。

具体的参看 http://www.9ta8.com/YaleCASServer.mht

(4)USBKey登录
        这个方案是北京点聚信息技术有限公司提供的,我也向他们的技术咨询了相关的问题。他们的实现方式基本上是这样的:每个使用该系统的用户都有一个USBKey证书,在登陆系统的时候把这个证书插在计算机上。每一个网站都要通过这个证书去认证。
        这样每个登录用户只需插上USBKey即可进入任意受信任系统,当然访问USBKey首先需要密码校验。

2  个人认为单点登陆实际上就两种方案
        首先确认要使用单点登陆,必须有一个核心,那就是不管用户走到那个平台,他必须要带着他的通行证,单点登陆最关键的问题是用户怎么取得、保存、使用这个通行证的问题。  用户要取得他的通行证其实不外乎以下两种方案:
        第一种:所有的业务平台集成在一个Portal上,去每一个平台的时候都要带着他的“通行证”,这就是所谓的“Tooken传递方案”;
        第二种:使用硬件卡,就是上面所说的“USBKey登陆”;

3  单点登陆的几个案例
(1)微软一篇关于单点登陆的文章,他的实现是使用第一种方案。
原文:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/singlesignon.asp

(2)点聚公司的产品,可以看看他们的介绍
http://www.dianju.com.cn/sso.htm
(3)SharePoint Portal Server 2003 中的单一登录
http://www.microsoft.com/china/technet/prodtechnol/sppt/reskit/c2661881x.mspx
(4)《WebCast SharePoint Portal Server 2003 Single Sign On 管理及开发》已提供下载
http://www.msotec.net/Forums/ShowThread.aspx?PostID=415
(5)北京大学信息平台下的统一用户管理和身份认证
http://www.9ta8.com/download.htm
(6)统一身份认证在校园信息化中的应用
http://www.9ta8.com/download.htm

4  我想达到的目的
        在不使用硬件卡、Passport和Cookie的情况下我想达到的目的:当用户打开浏览器进入站点A后,登陆,浏览A站点的内容;浏览完毕后用户想进入B站点,然后就在浏览器的地址栏中输入了B站点的地址,这时进入B站点后也不用重新登陆;同样,当用户关闭了浏览器后又想进入C站点,但同样不需要登陆。这个问题考虑了很长时间了,敬请大家指点迷津。

分享到:
评论

相关推荐

    cas 单点登录 解决方案.

    在实现 cas 单点登录解决方案时需要考虑的几个关键问题: 1. 身份验证机制:cas 单点登录解决方案需要使用安全的身份验证机制来确保用户的身份。 2. 用户信息存储:cas 单点登录解决方案需要使用安全的用户信息存储...

    Jeecg配置单点登录 登录验证完整代码

    配置Jeecg与CAS进行单点登录涉及以下几个步骤: 1. **安装和配置CAS服务器**:首先,你需要下载并安装Jasig CAS服务器,配置服务器的主配置文件`cas.properties`,包括数据库连接、服务端口、票证(Ticket)过期...

    jsp如何实现单点登录

    **JSP实现单点登录(Single Sign-On,SSO)详解** 在Web应用程序中,单点登录(Single Sign-On,SSO)是一种便捷的身份验证机制,允许用户在一次登录后,就能访问多个相互关联的应用系统,而无需再次输入凭证。在...

    登录 单点登录 带验证码登录

    在这个"登录 单点登录 带验证码登录"的实例中,我们将会深入探讨以下几个关键知识点: 1. **登录机制**:登录系统通常需要用户输入用户名和密码。在本示例中,登录过程可能是通过用户界面提交表单,后台Java代码...

    Teamcenter单点登录配置文档.pdf

    Teamcenter单点登录配置文档详细解读了如何基于域控系统实现Teamcenter的单点登录功能。文档聚焦于使用微软的Active Directory作为域控制系统的实例,展示了在真实项目中的具体配置步骤和方法。文档适用于Teamcenter...

    RTX单点登录源码

    单点登录(Single Sign-On,简称SSO)则是指用户在一次登录后,可以无须再次认证即可访问多个相互信任的应用系统,极大地提高了用户体验和安全性。 在这个“RTX单点登录源码”项目中,核心思想是整合RTX系统与其他...

    单点登录SSO的实现原理

    验证信任关系的有效性是单点登录的另一个关键问题。可以使用数字签名的方法,对参数进行加密,并带上 token 一起返回,最后需免登的系统进行验证信任关系的时候,需把这个 token 传给 SSO 系统,SSO 系统通过对 ...

    OAuth2.0授权系统实现单点登录

    单点登录(SSO)的实现则涉及以下几个关键点: 1. 用户通过主应用系统登录,主系统验证成功后创建会话。 2. 当用户尝试访问其他子系统时,子系统不会再次要求用户登录,而是检查是否存在有效的SSO会话。 3. 如果...

    nc5系列单点登录方案

    ### NC5系列单点登录方案解析 #### 一、方案概述 NC5系列单点登录方案旨在实现多个系统的无缝对接,使用户仅需一次登录即可访问所有授权的系统,如用友NC系统、OA系统等。该方案的核心在于通过一个中心化的认证系统...

    java 单点登录.docx

    在实际部署过程中,还需要解决以下几个问题: - **Token保存机制**:将Token保存在客户端的Cookie中。 - **拦截器实现**:通过自定义拦截器,在每个请求到达Controller之前进行登录状态验证。 - **自定义注解**:...

    关于单点登录详细介绍

    单点登录(Single Sign-On,简称SSO)是一种身份验证技术,允许用户在登录一次后,无需再次输入凭证即可访问相互信任的多个应用系统。它旨在解决大型企业中多系统登录带来的管理负担和安全隐患,提高用户体验,降低...

    单点登录个人总结

    SSO 单点登录访问流程大致可以分为以下几个步骤: 1. **访问服务**:用户尝试访问某个应用系统提供的服务资源。 2. **定向认证**:如果用户未登录,则应用系统会重定向用户至 CAS Server 进行身份验证。 3. **用户...

    单点登录系统

    在实现单点登录时,通常会涉及到以下几个关键知识点: 1. **中央认证服务(Central Authentication Service, CAS)**:SSO的核心是中央认证服务器,负责验证用户的身份。当用户尝试访问受保护的应用系统时,会被...

    SSO单点登录

    企业部署单点登录的实施须知和最佳做法包括了以下几个方面: 1. 统一身份库的建立:SSO系统需要有一个中心化的用户身份库,用于存储和管理用户的身份信息。 2. 安全认证协议的选择:例如,SAML(Security ...

    单点登录cas源码

    单点登录(Single Sign-On, SSO)是一种网络认证机制,允许用户在一次登录后,就能访问多个相互信任的应用系统,而无需再次进行身份验证。CAS(Central Authentication Service)是单点登录的一种实现,它是一个开源...

    J2EE单点登录组件源码

    **J2EE单点登录组件源码详解** 在企业级应用开发中,用户往往需要访问多个相互关联的系统,为了提高用户体验,减少重复登录的繁琐步骤,单点登录(Single Sign-On,简称SSO)技术应运而生。本篇将深入探讨J2EE平台...

    SSO单点登录解决方案

    单点登录的重要性和必要性可以从以下几个方面体现: 1. **提高用户体验**:用户只需记住一组登录凭证即可访问所有相关联的系统,减少了记忆负担。 2. **增强安全性**:通过集中管理用户的登录凭证,可以更好地控制...

    单点登录小例子

    在"单点登录小例子"这个主题中,我们可以深入探讨以下几个核心知识点: 1. **SSO原理**:SSO的核心思想是通过一个中央认证服务器(如CAS,Central Authentication Service)来处理所有应用系统的身份验证。当用户...

Global site tag (gtag.js) - Google Analytics