五、泛单点登录(SSO)系统需求分析说明书

来源:互联网 发布:长虹电视网络直播软件 编辑:程序博客网 时间:2024/04/30 14:02

泛单点登录(SSO)系统需求分析说明书

1 引言

1.1 编写目的

        为了保证《泛单点登录(SSO)系统》能够按照预期的设计实现,在产品的生命周期内各部门之间能够进行更好地交流,保证开发流程的可行性以及完整性,编写《泛单点登录(SSO)系统需求分析说明书》。 

1.2 范围

        本文档的适用范围为项目的开发人员、业务或需求分析人员、测试人员、用户文档编写者、项目管理人员,也适用于客户。

1.3 背景

        互联网(Internet)上独立地运营着无数的,提供各种服务的网站。每个网站都有着自己的身份验证机制,这样就造成了生活中的每一位用户,如果要以会员的身份访问网站,需要在每个网站上注册,并且通过身份验证后,才能以会员的身份访问网站。
        虽然用户可以用同样的用户名和密码在每个网站上注册,避免了用户名与密码的混淆。但是用户在某一段时间访问多个站点或在站点之间跳转时,还是需要多次登录后,才能以会员的身份访问网站。这样不仅给用户带来了不便,而且网站也要为登录付出了性能的代价。
        如果所有的网站,能够加入泛单点登录系统,不仅可以提高了用户体验,并且可以达到了互联网上所有用户的共享,真正体现了Internet上所有网站的开放性、互联性。有利于所有成员网站的相互促进与相互宣传。 
        基于以上两点,开发泛单点登录系统,完成全网用户共享的使命。

1.4 定义

        成员系统/网站:在泛单点登录系统中注册的系统/网站称为成员系统/网站。
        泛会员:用户只需要在一个成员系统中进行了注册,就具有了泛会员的身份,可以在每个成员系统/网站进行一次登录,全网共享。
        单点登录(SSO):英文全称Single Sign On。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。
        泛单点登录:和传统的单点登录系统不同,泛单点登录系统不需要收集成员系统的用户资料,在维护成员系统用户资料的保密性的基础上,提供成员系统之间的用户共享,实现只需要登录了成员系统之一,即可在所有的成员系统之间共享。最终可以达到整个互联网的一次登录,整网共享。

1.5 参考资料

        SSO概念 百度知道 http://baike.baidu.com/view/190743.htm

2 项目概述

2.1 目标

        泛单点登录系统,是全网统一登录的关键,泛单点登录系统分两个阶段实施。
        第一阶段,实现成员网站之间的登录验证,实现用户在任意成员网站登录后,可以以会员的身份访问任意的成员网站;
        第二阶段,实现泛单点登录系统的用户注册功能,在任意成员网站注册的会员,都可以注册到所有的成员网站。
泛单点登录系统作为各个成员网站共享用户的接口,首先需要考虑的是,当泛单点登录系统不能工作时,不影响成员系统的登录功能。其次,需要考虑其性能,扩展性,稳定性,安全性和维护成本的问题。

2.2 产品功能

        泛单点登录(SSO)是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统,系统功能架构如下图所示。

图、泛单点登录系统功能架构图
        详细的功能说明请参考需求规定章节。

2.3 用户特点

        泛单点登录系统用户分为两种类型的用户。
        一种是普通的互联网用户,数以万计的网民。这就确定了用户使用电脑的水平是参差不齐的,在开发泛单点登录系统时,力争做到界面友好,措词简单明了。用户不用学习,就能使用该系统。 
        另一种用户是成员网站的开发人员,他们必须调用泛登录系统提供的接口进行登录功能的开发和改造。因为涉及到原始系统的改造,因此接口设计必须做到最简洁方便调用,入侵性最小。

2.4 运行环境

        操作系统:Linux,WEB服务器:Tomcat,数据库服务器:MySQL。

2.5 条件和限制

        暂无

3 功能需求 

3.1 功能划分

        泛单点登录系统功能划分如下:
        1、 状态查询功能:查询泛单点登录系统的活跃情况;
        2、 登录状态查询:根据用户名查询用户在成员系统中的登录情况;
        3、 注销功能:将用户的登录状态修改成为离线状态;
        4、 注册功能:提供在泛单点登录系统中统一注册的功能。

3.2 功能需求

3.2.1 状态

        提供泛单点登录服务器的运行状态查询接口,如果泛单点登录服务器能够正常运转,成员网站使用泛单点登录系统进行验证,如果SSO不能正常运转,返回异常信息或者没有返回,让成员网站启动自己的验证功能。

图、申请系统状态流程图

3.2.2 登录

        如下图所示,用户访问成员系统需要验证登录才能提供服务的页面时,如果用户已经在成员系统中登录,那么直接提供服务。
        如果没有登录,成员系统获取浏览器关于泛单点登录系统的Cookie信息,判断是否有泛单点登录服务器写下的用户名。
        如果没有Cookie,那么成员启动旧登录流程,提示用户登录,完成登录后给泛单点登录系统发送一条登录信息,用于其他成员系统的共享。
        如果有Cookie,那么向泛单点登录服务器请求用户登录信息,如果登录信息还有效,成员系统保存用户登录信息,提供用户请求的服务。
        如果登录信息无效,那么成员启动旧登录流程,提示用户登录,完成登录后给泛单点登录系统发送一条登录信息,用于其他成员系统的共享。

图、登录功能时序图

3.1.3 注销

        注销功能由用户在成员网站中发起,成员网站首先清除该用户的登录记录,然后给泛单点登录系统发送该用户的注销信息。
        泛单点登录系统收到该成员系统以及该用户的注销信息后,从登录信息中清除该用户的登录记录。在该用户再次登录之前,以后其他成员网站请求该用户的登录信息,都返回未登录状态。

图、注销功能时序图

3.1.4 注册

        为了维护成员系统用户资料的保密性,泛单点登录系统不需要管理成员系统的用户资料。成员系统的新用户注册可以使用成员系统的内部注册机制完成。成员系统新注册的用户可以选择性地提交到泛单点登录系统。
        泛单点登录系统具备新用户注册功能,在泛单点登录系统中注册的新用户,都可以选择将注册信息推送到成员系统中,以达到统一注册的功能。

图、成员系统注册模块功能时序图

图、泛单点登录系统注册时序图

4 接口需求

4.1 用户界面

4.1.1 登录界面


图、系统登录界面示例图

4.1.2 注册界面


图、系统注册界面示例图

4.2 硬件接口

        暂无

4.3 软件接口

        使用Tomcat发布Web服务系统,使用MySQL数据库进行数据持久化。

4.4 通信接口

        使用HTTP协议或者Web Service协议和成员网站/系统进行通信。

4.5 故障处理

        暂无

5 性能需求

5.1 数据精确度

        暂无数据精确度的需求

5.2 时间特性

        Web页面响应时间:1S;

5.3 适应性 

        使用J2EE开发,具备系统之间的可移植性。 

6 其他需求

        暂无

7 数据描述

        暂无

8 附录

        暂无

原创粉丝点击