1、引言 1.1编写目的 为了单点登录系统(SSO系统)的可行性,完整性,并能按照预期的设想实现该系统,特编写需求说明书。 同时,说明书也发挥与策划和设计人员更好地沟通的作用。 1.2背景 a.鉴于集团运营的多个独立网站(称为成员站点),每个网站都具有自己的身份验证机制,这样势必造成:生活中的 一位用户,如果要以会员的身份访问网站,需要在每个网站上注册,并且通过身份验证后,才能以会员的身份访问网 站;即使用户以同样的用户名与密码在每个网站上注册时,虽然可以在避免用户名与密码的忘记和混淆方面有一定的 作用,但是用户在某一段时间访问多个成员站点或在成员站点间跳转时,还是需要用户登录后,才能以会员的身份访 问网站。这样不仅给用户带来了不便,而且成员网站为登录付出了性能的代价; b.如果所有的成员网站,能够实现单点登录,不仅在用户体验方面有所提高,而且真正体现了集团多个网站的兄弟 性。通过这种有机结合,能更好地体现公司大平台,大渠道的理念。同时,这样做也利于成员网站的相互促进与相互 宣传。 正是出于上面的两点,单点登录系统的开发是必须的,是迫在眉睫的。 1.3定义 单点登录系统提供所有成员网站的“单一登录”入口。本系统的实质是含有身份验证状态的变量, 在各个成员网站间共用。单点登录系统,包括认证服务器(称Passport服务器),成员网站服务器。 会员:用户通过Passport服务器注册成功后,就具有了会员身份。 单一登录:会员第一次访问某个成员网站时,需要提供用户名与密码,一旦通过Passport服务器的身份验证, 该会员在一定的时间内,访问任何成员网站都不需要再次登录。 Cookie验证票:含有身份验证状态的变量。由Passport服务器生成,票含有用户名,签发日期时间, 过期日期时间和用户其它数据。 2、任务概述 2.1目标 SSO系统,是集团统一的Passport,SSO系统分两个阶段实施。第一阶段对于新注册的用户提供单点登录的功能。 第二阶段,整合各个成员网站已有会员到单点登录系统中。 Passport服务器作为各个成员网站的惟一身份验证入口,需要考虑其性能,扩展性,稳定性,安全性和维护成本。尤其 要注意第二阶段的开发,做到统筹考虑。 2.2最终用户的特点 最终用户是数以万计网民。这就确定了用户使用电脑的水平是参差不齐的,在开发单点登录系统时,力争做到界面友 好,措词简单明了。用户不用学习,就能使用该系统。 3、需求规定 3.1 需求概述 1) 注册: a.成员网站重定向到Passport服务器的注册页面,并且带有返回URL和成员网站ID。 b.通过Passport注册页面创建会员后,保存会员验证票到数据库和passport服务器所在域cookie中。同时,在成员网站 的数据库上创建与Passport服务器数据库中会员的映射关系。 c. 重定向到成员网站,填写会员个性信息。 d. 保存会员个性信息,并把重定向传入的验证票保存到本地cookie和创建Session状态变量。 2)登录: a、 SSO系统要实现各个成员网站的无缝结合,只要会员经过了认证服务器的登录验证(Passport服务器),该会员访 问其它任何的网站时,都不需要再次登录。 b、 会员在第一次登录时,Passport服务器验证身份之后,生成的cookie验证票,只需保存到Passport服务器所在域的 cookie中,不能采用向每个成员网站所在的域中写cookie,防止响应时间太长,给会员带来不友好的浏览体验。同 时,把下发给会员的cookie票保存到Passport服务器的数据库中,方便验证方式和会员行为统计的扩展。 c、 会员一经通过身份验证,成功登录了某个成员网站(假设为网站A),需要利用Session和cookie两种方式保存会员已经登 录的状态。 d、 同一个浏览器进程中,会员在网站A的页面间跳转时,只需要根据Session中的状态变量加载登录框。不需要再与 Passport服务器通信验证会员的身份。 e、 会员通过验证登录了网站A,若会员从网站A跳转或重新打开浏览器登录其它成员网站(假设网站B),都需要与Passport 服务器通信验证会员的票。但是,这次验证不要Passport服务器与数据库中保存的验证票进行比较验证,只需要验证 Passport服务器域中的cookie验证票据有效即可。 f、 对于验证cookie票,能够实现加密和数字签名保证cookie的机密性,完整性和不可抵赖性。 g、 若果Passport服务器Down掉后,仍可以直接登录成员网站。 说明:上面高亮显示的表示二期开发功能。 3)登出、修改密码、找回密码和成员网站间的跳转,请查看IPO图表中相应的模块描述。 3.2对功能的规定 SSO系统包括注册、登录、登出、密码修改、密码找回、成员网站间跳转与用户管理模块。本说明书使用HIPO图描述 系统机构和模块内部处理功能,它主要包括层次结构图和IPO图两个部分。层次结构图描述了整个系统的结构以及各个 模块之间的关系;IPO图则描述了在某个特定模块内部的输入(I)、处理过程(P)、输出(O)思想。
A、系统结构图
B、层次结构图
C、IPO图表
备注:红色高亮部分,表示修改的逻辑
模块名称:会员注册 | 使用者:Passport服务器与各成员网站 |
输入部分 I | 处理描述 P | 输出部分 O |
1. 重定向到Passport服务器,带 有返回URL和成员网站ID 2. 输入信息:邮箱、密码、区域(暂时没有使用验证码)。 3 3.提交注册信息,发出注册请求。 4.注册用户从邮件中获得验证码,利用验证号激活用户,此时用户将成为合法会员。 5.会员个性信息(在成员网站填写) | 1.邮箱是否可用的实时检查,及时提示邮箱是否可用(这里的可用仅仅是表示符合邮箱的规范,并且该邮箱没有被注册,不表示真正的可用)。 2.密码安全级别实时提示。根据字符长度、含有字符的种类,计算安全级别,并实时提示用户。安全级别分为:太短,差,良,优四个等级。 3.根据区域数据库,获得区域信息下拉框,结合会员区域IP,实现区域自动筛选,在允许的误差范围内不需手动选择区域。 4. 建立新会员 (1)验证会员提交的注册信息,若合法,把用于激活帐号的验证码发送到会员测试使用的邮箱中。 (2)会员使用验证码激活帐号,若激活成功,保存会员信息和会员验证票到数据库(Passport服务器数据库),并且验证票也保存到cookie中。同时调用成员网站的Web Service接口,把刚才产生的Passid保存到成员网站数据库中(建立映射关系)。 (3)重定向到成员网站。 (4)成员网站接收数据,提示会员填写个性信息,并提交到成员网站服务器。 (5)保存个性信息与接收的会员验证信息到成员网站数据库与cookie中,同时在Session中保存会员已验证的状态信息。 (5)导航会员到某个页面。 | 1. Passort服务器保存新会员信息和会员验证票到数据库中。 2. 成员网站Web Service,在成员网站数据库中添加会员信息,利用Passid建立与Passport服务器上会员的映射关系,并返回操作成功或失败状态信息。 3. 修改成员网站数据库中会员的个性信息。 4.保存会员验证票到cookie中,同时保存会员通过验证的状态到Session中。 |
| | | |
表1:会员注册模块
模块名称:会员登录 | 使用者:Passport服务器与各成员网站 |
输入部分 I | 处理描述 P | 输出部分 O |
1. 会员第一次登录时输入Email 和密码。 2. 提交会员信息到Passport服务 器。 说明:加载登录框之前,成员网 站会首先与Passport服务器通信, 获得会员是否已经登录过,根据 状态加载登录框。 | 1.在成员网站A含有登录框页面的 <head>区,利用 <script src=meber_auth.aspx> 在页头嵌入.aspx文件(成员网站上的文件)。 a.页面首先查看Session中的状态变量,如果状态变量为NULL,则查看cookie中的状态变量。 b.根据Session与Cookie中状态变量的情况,实现与Passport服务器上的Web Service通信,确定会员是否已经登录。 2.根据会员登录与否,加载登录框。 3.如果没有登录,显示会员输入Email和密码的登录框。 4.会员提交信息到Passport服务器上的Web Service ,通过验证后生成cookie票,并返回登录状态值和cookie票到成员网站。成员网站保存登录状态变量与cookie票。 说明:会员通过任何一个成员网站登录成功后,表示已经登录了所有的成员网站。 | 1.根据登录状态加载登录框 2. 在Passport服务器上创建会员 验证票,保存到数据库与cookie中 3.Passport Web Service 返回登录 状态值与cookie验证票到成员网站。 4.保存会员验证票到cookie中,同时保存会员通过验证的状态到Session中。 |
| | | |
表2:会员登录模块
模块名称:会员登出 | 使用者:Passport服务器与各成员网站 |
输入部分 I | 处理描述 P | 输出部分 O |
1.成员网站重定向到Passport服务器的登出页面,并带有返回URL,成员网站ID和验证票。 | 1.在成员网站A重定向到Passport服务器,Passport接收cookie验证票,并验证是否合法。 2.Passport修改数据库中验证票使之失效,清除cookie中的验证票。 3.重定向到成员网站,清除cookie中的验证票和Session中登录状态变量。 4.导航会员到某个页面。 | 1.修改数据库中的验证票使之失效,并清除cookie。 2.重定向到成员网站。 |
| | | |
表3:会员登出
模块名称:修改密码 | 使用者:Passport服务器与各成员网站 |
输入部分 I | 处理描述 P | 输出部分 O |
1.成员网站重定向到Passport服务器修改密码页面,并带有返回URL,验证cookie票。 2.会员输入原密码和新密码。 3.提交数据。 | 1.在成员网站A重定向到Passport服务器,Passport接收cookie验证票,并验证是否合法。 2.Passport修改会员密码。 3.重定向到成员网站,并带有修改成功与否的状态变量。 4.导航会员到某个页面。 | 1.修改数据库中会员的密码。 2.重定向到成员网站。 |
| | | |
表4:会员登出
模块名称:找回密码 | 使用者:Passport服务器与各成员网站 |
输入部分 I | 处理描述 P | 输出部分 O |
1.成员网站重定向到Passport服务器找回密码页面,并带有验证cookie票。 2.会员输入Email地址 3.提交数据 4.激活新密码(邮箱将收到一个激活密码的URL) | 1.在成员网站A重定向到Passport服务器,Passport接收cookie验证票,并验证是否合法。 2.Passport为会员生成新密码,并向会员邮箱中发送一个激活密码的URL。 3.激活新密码 4.使用新的密码登录 | 1.为会员生成新密码,但未激活。 2.提示会员收邮件激活新密码,激活后方可使用。 |
| | | |
表5:找回密码
- 描述: A、系统结构图
- 大小: 44.6 KB
- 描述: B
- 大小: 64.2 KB
分享到:
相关推荐
单点登录系统 SSO 设计说明书 本文档旨在描述单点登录系统(SSO)的设计说明书,旨在提供一个完整、可行的解决方案,以满足集团网站的身份验证需求。单点登录系统的主要目标是提供一个统一的身份验证入口,实现成员...
本SSO概要设计说明书详细介绍了SSO的基本概念、工作原理以及设计目标,为实际的系统实施提供了清晰的蓝图。在具体实现过程中,还需要考虑系统的安全性、性能优化、异常处理等方面,确保SSO系统稳定可靠地服务于用户...
SSO单点登录概要设计说明书的编写旨在为开发团队提供一个清晰、全面的设计蓝图,指导如何实现一个高效且安全的SSO系统。该文档旨在解决用户在多应用系统间频繁登录的不便,以及企业对用户权限集中管理的需求。 ...
本文档旨在详细解释一个基于对称加密的简单单点登录系统的设计与实现原理,该系统适用于.NET平台下的C#开发环境。通过本文档,读者将了解到如何构建一个安全可靠、易于维护的单点登录解决方案。 #### 二、背景与...
总的来说,SSO详细设计说明书下篇将涵盖SSO的工作原理、实现策略以及可能涉及的技术选型,对于理解和构建自己的SSO系统具有重要指导价值。为了确保系统的安全性和用户体验,设计时需要考虑如何有效地管理和保护用户...
单点登录(Single Sign-On,简称SSO)是一种网络认证机制,它允许用户在一个系统或应用中登录后,无需再次输入凭证即可访问其他关联的系统或应用。这种设计提高了用户体验,减少了用户记忆多个密码的负担,同时在...
总结来说,单点登录SSO在国家图书馆的实施涉及了用户认证、会话共享、外部系统交互以及安全加密等多个环节,通过这样的设计,既方便了用户,也提高了系统的整体安全水平。在实际应用中,类似的技术方案可以广泛应用...
单点登录(Single Sign-On,简称SSO)是一种身份验证技术,它允许用户在通过一次登录验证后,无须再次输入凭证即可访问多个相互关联的应用系统。这一技术大大提升了用户体验,减少了用户记忆和输入多个密码的负担,...
本篇将基于《统一授权系统接口设计说明书》这一文档,深入剖析其中涉及的关键知识点,主要包括单点登录(Single Sign-On,简称SSO)、用户与组织机构管理以及统一消息传递等核心功能模块的设计理念和技术实现细节。...
数据库设计说明书是软件开发过程中的...综上所述,该数据库设计说明书详细介绍了从概念到物理层的数据库设计过程,涵盖了系统的需求背景、设计原则、实体关系、数据表结构,为SSO系统的开发和维护提供了清晰的蓝图。
总结来说,单点登录详细设计的目标是构建一个高效、安全的SSO系统,为用户提供无感知的身份验证体验,同时减轻服务器的验证负担。系统设计涵盖了用户注册、登录、状态管理等多个方面,以满足大规模用户群的需求。...
在本文档中,金蝶软件提供了针对SSO单点登录需求的详细规格说明书,适用于江苏省广播电视信息网络股份有限公司苏州分公司。 ### 1. 概述 **编写目的**:本需求规格说明书旨在明确SSO系统的设计与实施目标,为开发...
《通用权限管理概要设计说明书》是一份详细阐述如何构建一个通用权限管理程序的重要文档,旨在为开发者提供一套全面的权限管理系统设计方案。该系统的核心目标是实现对不同业务系统中的用户权限进行有效管理和控制,...
《统一用户及权限管理系统概要设计说明书》是针对电子政务领域中用户管理和权限控制的关键问题进行详细阐述的技术文档。该文档由K1273-5班的涂瑞编写,旨在构建一个统一的授权管理和身份认证平台,以解决当前多应用...
"baigo SSO单点登录系统"是一款专为网站提供高效、便捷的单点登录解决方案的开源软件。SSO(Single Sign-On)是允许用户在一次登录后访问多个应用程序的系统,无需为每个应用单独输入凭证。这个系统适用于拥有多个...
【统一用户及权限管理系统概要设计说明书】 在电子政务领域,构建统一用户及权限管理系统是提升信息化水平和保障数据安全的关键。本系统旨在解决多应用系统登录不便、管理分散及安全性降低的问题,通过统一规划和...
本概要设计说明书详细阐述了该系统的架构、设计原则和主要功能,以确保安全、高效地管理大量用户信息。 ### 第一章 引言 1.1 编写目的 设计说明书的目的是为了清晰地定义UUMAS的设计目标和范围,为开发团队提供...