单点登录概要设计说明书.docx
《单点登录概要设计说明书.docx》由会员分享,可在线阅读,更多相关《单点登录概要设计说明书.docx(16页珍藏版)》请在冰豆网上搜索。
单点登录概要设计说明书
江苏省广播电视信息网络股份有限公司苏州分公司
关于SSO单点登录
概要设计说明书
建档日期
2010-12-2
修改日期
文件编号
GD_EAS_GY_SSO
文件当前版本
V1.0
模块名称
金蝶项目经理
文档控制
●更改记录
Date表示修改日期,author表示修改负责人,Version表示当前版本,起始版本v1.0,修改后顺序依次为v1.1,v1.2等,changereference表示根据何种原因发生变更,变更来源等。
Date
Author
Version
ChangeReference
2010-12-9
柳陈
V1.0
初稿
2010-12-15
柳称
V1.1
添加界面设计
●查阅
Name表示查阅人,Position表示查阅人的职位。
Name
Position
●分发
CopyNo表示分发流水号,Name表示被分发人姓名,Position表示被分发人职位
CopyNo
Name
Position
1
2
3
一,概述
本章对该文档的目的、功能范围、术语、相关文档、参考资料、版本更新进行说明。
1.编写目的
本文档的目旨在推动软件工程的规范化,使设计人员遵循统一的概要设计书写规范,节省制作文档的时间,降低系统实现的风险,做到系统设计资料的规范性与全面性,以利于系统的实现、测试、维护、版本升级等。
2.范围
本文档用于软件设计阶段的概要设计,它的上游(依据的基线)是《需求分析规格书》,它的下游是《详细设计说明书》,并为《详细设计说明书》提供测试的依据。
软件概要设计的范围是:
软件系统总体结构设计、全局数据库和数据结构设计、外部接口设计、主要部件功能分配设计、部件之间的接口设计等方面的内容。
该范围应覆盖《需求规格说明书》中的功能点列表、性能点列表、接口列表。
3.命名规则
●变量对象命名规则:
申明全局变量、局部变量对象的命名规则。
●数据库对象命名规则:
申明数据库表名、字段名、索引名、视图名等对象的命名规则。
4.术语定义
●总体结构,软件系统的总体逻辑结构。
●外部接口,本软件系统与其他软件系统之间的接口,接口设施可以是中间件。
接口描述包括:
传输方式、带宽、数据结构、传输频率、传输量、传输协议。
●数据结构,数据库表的结构、其他数据结构等。
●概念数据模型CDM,关系数据库的逻辑设计模型,叫做概念数据模型。
主要内容包括一张逻辑E-R图及其相应的数据字典。
●物理数据模型PDM,关系数据库的物理设计模型,叫做物理数据模型。
主要内容包括一张物理表关系图及其相应的数据字典。
●视图,在基表或其他视图之上建立的一张虚表,叫做视图,它具有物理表的许多性质,在数据处理和授权上很有用。
●角色,数据库中享有某些特权操作的用户,叫做角色。
角色的权利通过授权来实现。
●子系统,具有相对独立功能的小系统叫做子系统。
一个大的软件系统可以划分为多个子系统,每个子系统可由多个模块或多个部件组成。
●模块,具有功能独立、能被调用的信息单元叫做模块。
模块是结构化设计中的概念。
●内部接口,软件系统内部各子系统之间、各部件之间、各模板之间的接口,叫做内部接口。
接口描述包括:
调用方式、入口信息、出口信息等。
●相关文件,相关文件是指当本文件内容变更后,可能引起变更的其他文件。
如需求分析报告、详细设计说明书、测试计划、用户手册。
●参考资料,参考资料是指本文件书写时用到的其他资料。
如各种有关规范、模板、标准、准则
5.参考资料
[1]用户需求报告
[2]软件开发合同
[3]数据库设计规范
[4]命名规范
二,总体设计
6.描述
系统采用流行的B/S结构模式,系统的分析设计采用面向对象的分析方式,应用Visio等工具进行辅助设计。
7.系统架构
8.系统物理架构图
9.顶层系统包图
●业务页面:
用户操作页面。
●业务操作:
主要控制业务访问的接口和业务流转。
●数据处理:
提供业务的实现,包括对业务数据的增、删、改、查等操作。
●数据实体:
业务对象的实体类。
●数据接口:
提供数据库的访问,传递数据或返回相应数据。
●系统辅助:
提供了供整个系统辅助的功能。
10.总体结构(业务关系)
11.功能清单
功能编号
功能名称
功能简述
1001
单点登录
1002
访问其他Web系统
以链接的方式显示所有Web系统的路径
1003
创建用户联系表
维护用户在各系统中的用户关联
1004
设置其他Web系统
维护其他Web系统的路径
三,界面设计(粗设计,内部使用)
12.1001,单点登录
13.1002,访问其他Web系统
14.1003,创建用户联系表
15.1004,设置其他Web系统
四,业务实现
16.单点登录
●流程图
●类图
类名:
SSORequest
作用:
实体,验证信息的载体,在应用程序边界外做传递
对MarshalByRefObject的理解
简单来讲,继承此类的对象可以跨越应用程序域边界被引用,甚至被远程引用。
远程调用时,将产生一个远程对象在本地的透明代理,通过此代理来进行远程调用。
Appurl:
各独立站点的访问地址
Authenticator:
各独立站点的Token
ErrorDescription:
认证失败信息
IASID:
各独立站点标识ID
IPAddress:
本站IP地址
Password:
密码
Result:
认证结果
TimeStamp:
时间戳
UserAccount:
用户帐户
SSORequestGetRequest(PageCurrentPage)//获取当前页面上的SSORequest对象
类名:
PostService
作用:
在主站与各独立分站点之间提交验证对象SSORequest
FormName,组装一个提交表单,默认名称为“form1”
Inputs:
集合对象,该集合以name,value的保存方式.
Method:
表单提交方式,默认”Post”
Url,表单提交的地址
Add(stringname,stringvalue),往Inputs对象中添家内容
Post(),将组装成的表单提交
类名:
Authentication
作用:
创建或验证SSORequest
cookieName:
定义Cookie名称,默认为”EACToken”
hashSplitter:
分割符,默认”|”
CryptoServiceGetCryptoService()//取得加密服务
boolCreateAppToken(SSORequestssoRequest)//创建各分站发往认证中心的Token
boolValidateAppToken(SSORequestssoRequest)//验证从各分站发送过来的Token
boolCreateEACToken(SSORequestssoRequest)//创建认证中心发往各分站的Token
boolValidateEACToken(SSORequestssoRequest)//验证从认证中心发送过来的Token
CreatEACCookie(stringuserAccount,stringtimeStamp,stringexpireTime)//创建EAC认证中心的Cookie
boolValidateEACCookie(outstringuserAccount)//验证EAC认证中心的Cookie,验证通过时获取用户登录账号
作用:
字符串转为字节数组再转为Hashed字节数组,再转为base64字符串,既获得加密字符串
作用,加密密钥服务
sIV,sKey加密的密钥
Encrypt(stringdata)//将明文加密,返回密文
EncryptToString(stringData)//将明文加密,返回Base64码
Decrypt()//将密文解密,返回明文
17.访问其他Web系统
●类图
如上
18.创建用户联系表
●类图
19.分站点信息设置
●类图
五,表关系
六,数据结构
20.EAS用户信息表,表名t_Base_User
字段名称
键别
数据类型
中文说明
FUserID
PK
Int
EAS用户表
FName
用户名
…
21.分站点信息表,表名sso_WebInfo
字段名称
键别
数据类型
中文说明
SWebID
PK
Int
分站站点编号
SWebName
Varchar
分站名称
SWebURL
Varchar
分站路径地址
22.单点登录用户表,表名sso_UserInfo
字段名称
键别
数据类型
中文说明
SUserID
PK
Int
SName
Varchar
EAS用户在其他系统中的用户名
FUserID
FK
Int
EAS用户ID
SWebID
FK
Int
单点登录对应的分站点编号
七,修正记录
编号
日期
修正编号
修正内容详细