




已阅读5页,还剩58页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
广州市智能交通管理指挥系统子项目广州市智能交通管理指挥系统子项目 交通管理信息网站开发项目文档交通管理信息网站开发项目文档 统一身份管理系统接入说明书 建设单位 广州市公安局交通警察支队建设单位 广州市公安局交通警察支队 监理单位 广东省计算中心监理单位 广东省计算中心 承建单位 广州市方欣科技有限公司承建单位 广州市方欣科技有限公司 二二 七年七年五月二十五月二十七月二十日七月二十日四日四日 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 2 页 项目组成人员名单项目组成人员名单 建设单位方 项目负责人 傅 贵 项目经办人 李 锃 其它参与人 陈 琢 梁明昌 监理单位方 总监理工程师 李伯基 监理工程师 许颖媚 承建单位方 项目经理 江成旺 技术负责人 张云兵 主要参与人 张云兵 系统分析 徐增阳 刘建华 郭子瑜 系统设计 徐增阳 刘建华 郭子瑜 张露林 李卓钊 李秀娟 黄秦 周 斌 聂昭军 何洪涛 程序设计 姚国兴 王礼都 测试 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 3 页 改版记录 版本发布日期描述作者复审批准 1 02007 3 7徐增阳江成旺江成旺 1 12007 5 24徐增阳江成旺江成旺 1 22007 7 20徐增阳江成汪江成汪 变更记录 变更编 号 日期变更项描述基线版本变更请求编号 12007 3 71 0 22007 5 24完善了内容1 1 2007 7 20完善内容1 2 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 4 页 目目 录录 目目 录录 4 第第 1 章章简介简介 6 1 1编写目的 6 1 2范围 6 1 3定义 首字母缩写词和缩略语 6 1 4参考资料 6 第第 2 章章建设总体方案建设总体方案 7 2 1建设原则 7 2 2建设目标 7 2 3总体方案 8 2 3 1统一用户管理 9 2 3 2统一认证管理 11 2 3 2 1 TAM 认证 11 2 3 2 2 接口认证接入 12 2 3 3分布式权限 12 2 3 4系统接入约定 12 第第 3 章章统一身份管理接入实施指南统一身份管理接入实施指南 14 3 1新建系统接入实施指南 14 3 1 1统一用户 14 3 1 2统一认证 23 3 1 2 1 TAM 认证 23 3 1 2 2 接口认证实施 30 3 1 3统一权限 30 3 1 4各方职责 31 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 5 页 3 2已建系统接入实施指南 32 3 2 1统一用户 32 3 2 2统一认证 37 3 2 2 1 TAM 认证 37 3 2 2 2 接口认证实施 44 3 2 3统一权限 44 3 2 4各方职责 45 第第 4 章章建设举例建设举例 45 4 1门户后台 CMS 系统集成案例 已建系统 45 4 1 1系统分析和方案确定 45 4 1 2集成实施 46 4 1 2 1 统一用户实施 46 4 1 2 2 统一认证实施 48 4 1 2 3 分布式权限实施 53 4 2警务管理系统 新建系统 53 4 2 1系统分析与方案确定 53 4 2 2集成实施 54 4 2 2 1 统一用户实施 54 4 2 2 2 统一认证实施 54 4 2 2 3 分布式权限实施 59 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 6 页 第第 1 章章简介简介 1 1 编写目的编写目的 本文档从架构方面对广州市智能交通管理指挥系统交通管理信息网站项目 中系统的统一身份管理部分进行综合概述 此文档将对后面的详细设计 开发 测试 实施 维护工作起到关键性的影响 1 2 范围范围 本文档的适用范围和影响范围为广州市智能交通管理指挥系统交通管理信 息网站项目统一身份管理部分 1 3 定义 首字母缩写词和缩略语定义 首字母缩写词和缩略语 名词定义或意义英文名缩略词 广州市智能交通管理指挥 系统交通管理信息网站 本项目octopusoctopus 本项 目 本系统 Tivoli access manager访问管理TAMTAM Tivoli identity manager用户管理TIMTIM Tivoli Directory Server目录服务器TDSTDS 1 4 参考资料参考资料 序号资料名称来源及时间 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 7 页 1广州市公安局 GZ ITMS 交通管理信息网站开发项 目投标文件 广州市方欣科技 有限公司 2006 5 2广州市智能交通管理指挥系统交通管理信息网站项 目涉众需求说明书 本项目组 2006 12 25 3广州市智能交通管理指挥系统交通管理信息网站项 目软件需求规格说明书 本项目组 2006 12 25 第第 2 章章建设总体方案建设总体方案 2 1 建设原则建设原则 采用 IBM Tivoli 安全产品 进行广州市交警信息化建设 适用以下规则 1 遵从统一标准 各个应用系统 用户集中统一管理 尽量采用数字证书登录 加强系统的 安全性 2 提高用户体验 实现各个系统的单点登录 使用户尽量少的记录用户名和密码 2 2 建设目标建设目标 针对具体的应用系统 统一身份管理应达到以下目标 1 集中管理用户 提高系统安全性 降低维护成本 2 根据需要 采用 PKI 技术保障信息的保密性 完整性 和抗抵赖性 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 8 页 提高应用系统的安全保护强度 3 实现 web 系统的单点登录 提高用户体验和系统的安全性 2 3 总体方案总体方案 统一身份管理是交通管理信息网站项目的一个重要组成部分 重点是针对 GZ ITMS 各软件子项目 建立统一用户管理 然后对于新系统实现统一认证 单点登录 实现基于统一用户的分布权限管理 统一身份管理采用业内先进的 IBM TIVOLI 软件平台 拥有权限控制 人 员组织管理 角色管理 资源保护 访问控制等功能 IBM TIVOLI 主要包括 TAM 和 TIM 组件 TAM 组件 TAM 组件主要实现单点登录 访问权限控制 访问策略控制等功能 TAM 物理组件如下 1 Policy Enforcer webseal 也称之为请求截获者 它的功能就是截获用 户往后台应用的访问请求 从而强制进行访问的认证 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 9 页 2 Authorization Server 也称之为 Policy Server 主要完成认证和授权检查 的实际工作 也是整个系统的核心 3 LDAP 服务器 存储了所有的用户信息 4 Web Portal Manager 即 TAMeb 管理界面 这是一个基于 WebSphere 的 B S 结构的管理应用界面 TIM 组件 TIM 组件主要实现用户 组织管理 人员审批 工作流等功能 2 3 1 统一用户管理统一用户管理 本项目采用 IBM Directory Server 统一存放用户信息 保证设计的可扩展性 统一用户管理是人员的管理 是为安全和单点登录服务的 在统一用户管理系 统中的用户和组织信息和警务系统等其他系统中的人员和组织信息是没有映射 关系的 当警员 临工需要登录系统前 需要手工增加用户 并赋予一定的权 限 其中增加用户时 就用户的登录名字规则如下 警员 P 警号 协管员 X 工号 临时工 L 工号 1 共享方式 所有 GZ ITMS 应用系统和将来新建的系统共享统一身份管理平台用户信息 各应用系统不再单独开发用户管理模块 只需通过 WebService 接口调用获取并 共享用户信息 共享方式示意图 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 10 页 获取用户数据 发布的用户共享 webservice 用户中心Webservice服务器 应用服务器 调用 调用 调用 2 同步方式 对有条件进行统一用户身份的遗留系统 包括 B S 结构的遗留系统 非 B S 结构的遗留系统 采用用户信息同步技术实现从统一身份管理平台的标准 LDAP 目录服务器单向将用户信息同步到遗留系统用户信息存放目录服务器或 数据库 同步示意图如下 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 11 页 2 3 2 统一认证管理统一认证管理 统一认证就是实现认证的集中实现 所有的认证到一个认证中心执行 统一认证的前提是统一用户 对于所有的用户都提供数字证书和用户名密 码两种登录方式 所有用户可以选择登录自由选择登录方式 如果采用数字证 书登录 那么在创建用户的时候需要确保用户在 ldap 中的记录 DN 和数字证书 中主题属性的值一致 根据交警系统现状和 IBM 产品的支持 提供下面两种统一认证接入方式 2 3 2 1 TAM 认证认证 通过 TAM 提供的 WebSEAL 提供的认证方式 替换原来的系统的登录方式 实现单点登录 该认证主要解决了 B S 结构的认证登录问题 用户可以选择 0 用户登录名 口令方式 1 数字证书认证方式 对于警务人员和非警务人员都提供两种登录方式 用户可以选择登录方式 但是要求不同的登录方式可以设定不同的访问权限 例如对于可以设定一些系 统只可以采用数字证书登录的人员进入 用户名密码登录 如果用户没有数字证书 则可以使用用户名和密码进行登录 数字证书登录 实现方式主要是采用 TAM 本身对数字证书认证方式的支持 TAM 支持 X 509 标准的数字证书 实现步骤如下 1 用户提出访问请求 请求的资源由证书安全级别保护 2 WebSEAL 要求客户端提供数字证书 接收后由 WebSEAL 通过服务器 端证书从个人证书中获得用户的 LDAP Distinguished Name DN 3 WebSEAL 通过 CDAS 服务检查证书撤销列表 CLR 检查证书是否被撤 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 12 页 销 4 WebSEAL 将 DN 送到 LDAP 中进行检索 从而获得信任状 Credential 完成认证过程 根据以上原理 在 LDAP 中数字证书和人员是一一对应的 对应关系是 数字证书的主题属性的值 必须是 LDAP 中 TAM 帐号的 DN 对于数字证书的 正确性和有效性的验证 需要开发 CDAS 服务检查证书撤销列表 CLR 检查 证书是否被撤销 2 3 2 2 接口认证接入接口认证接入 对于 C S 结构的系统 通过我方开发的 WebService 认证接口对用户进行认 证 C S 结构的认证是不可以实现单点登录 具体的 webservice 接口参照统一用户管理章节中的共享方式提供的用户共 享接口 举例子说明接口认证的实现 假定有一个 vc 开发的 C S 系统 需要通过 webservice 接口认证 那么在用 户输入用户名和密码的时候 就需要通过用户输入的用户名调用接口 getUser String loginName 获取该用户对象 然后比较密码来判断用户是否可 以登录 2 3 3 分布式权限分布式权限 在本项目中 权限管理是分布式的 不实现统一权限管理 即各个业务子 系统自己实现权限管理 各个业务子系统从统一用户管理系统中取得用户和组 织机构 Orgnization 的基本信息 在自己系统内处理用户组 Group 和权限 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 13 页 2 3 4 系统接入约定系统接入约定 为了保证整个 GZ ITMS 系统的稳定和安全 所有 GZ ITMS 子系统如果要 实现统一认证 则在实现统一认证的同时 也必须保留自己系统上的登录认证 模块 这个登录认证模块也可以让用户登录 但是仅仅登录到当前系统中 也 就是说 系统给用户提供了两种登录方式 一种是统一认证 一次登录到所有 GZ ITMS 子系统 另外一种 是登录 GZ ITMS 的一个子系统 如下图所示 子系统保留下来的用户认证模块在处理用户登录时 首先判断统一认证的 服务是否可用 即 WebSeal 服务是否可用 如果服务可用 则将 URL 重定向 到 WebSeal 上 完成用户统一认证 如果 WebSeal 服务不可用 则子系统显示 登录界面 处理用户提交的登录信息 来完成登录 子系统在开发单点登录模块时 需要在处理登录逻辑中 将用户最后一次 登录系统的信息记录到本地数据库中 如果 WebSeal 服务不可用 则可以用该 数据库中的用户帐号信息 来完成登录 在后面举例中 相关的插件代码中有 说明 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 14 页 第第 3 章章统一身份管理接入实施指南统一身份管理接入实施指南 3 1 新建系统接入实施指南新建系统接入实施指南 该实施指南主要针对应用系统开发商 对各个系统的统一身份管理接入提 供指导和帮助 角色定义 应用系统开发商 指交警信息化项目的承建方 交警电子信息化建设方 业主方 即交警 统一身份管理平台承建方 广州市方欣科技有限公司 3 1 1 统一用户统一用户 对于新建设的系统 根据建设原则和建设目标 不再重复建设用户管理模 块 采用直接共享的方式 用户共享是通过 webservice 接口共享用户信息 即由应用系统通过调用 webservice 接口获取用户信息 在本系统中不用建立用户的相关管理平台 例如 查看 查询用户等 只需要通过 webservice 接口读取用户信息进行相关显示等 不允许修改用户和删除用户 这些操作统一由用户管理中心执行 Webservice 接口定义如下 User 用户类 属性 名称访问域类型描述 idprivateString唯一标识号 由 TIM 系统 生成 loginNameprivateString用户登录名字 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 15 页 规则 警员 P 警号 协管员 X 工号 临时工 L 工号 mailprivateString邮件 nameprivateString用户姓名 passwordprivateString用户密码 telprivateString电话 GroupidPrivateString 组织 id MemberOfRolePrivateString所属权限组 根据职务分 组 UserTypePrivateString用户类型 是否支队用户 Organization 组织类 属性 名称访问域类型描述 idprivateString组织唯一标识 nameprivateString组织名字 descriptionprivateString组字描述 sublistprivateList该组织的子组织 列表 各个接口的详细定义如下 名称访问域public 参数organizationName 组织名字 返回值User 用户数组 异常控制无 getUsers 描述通过组织名字获取这个组织下面的所有人 员 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 16 页 访问域public 参数无 返回值Organization 对象 异常控制无 getOrganizationTree 描述获取组织树 返回的组织对象是根对象 在属性 sublist 中存储着该组织的所有一级 子组织对象 在每一个一级子组织对象中 通过属性 sublist 保存各个的自组织 以此 类推 访问域public 参数组织名字 organizationName String 是否读取子组织 readSub boolean 返回值 Organization 对象 异常控制无 getSubOrganizations 描述根据组织名字 获取子组织 通过开关参 数获取是否要读取所有子组织 对于参数 readSub 如果值为 ture 那么 会读取这个组织下面的所有子组织到返回 的组织对象中属性 sublist 中 在 sublist 中 的各个组织对象也包含其子组织列表 如果值为 false 那么只读取这个组织下面 的一级子组织到组织对象属性 sublist 中 但是在 sublist 中的各个组织对象不再包含 下面的子组织 访问域public 参数Organization 对象 返回值User 用户数组 getUsers 异常控制无 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 17 页 描述通过组织对象获取该组织下面的所有人员 访问域public 参数Organization 对象 是否读取子组织 readSub boolean 返回值 Organization 对象 异常控制无 getSubOrganizations 描述根据组织对象 获取子组织 通过开关参 数获取是否要读取所有子组织 对于参数 readSub 如果值为 ture 那么 会读取这个组织下面的所有子组织到返回 的组织对象中属性 sublist 中 在 sublist 中 的各个组织对象也包含其子组织列表 如果值为 false 那么只读取这个组织下面 的一级子组织到组织对象属性 sublist 中 但是在 sublist 中的各个组织对象不再包含 下面的子组织 访问域public 参数organizationName 组织名字 返回值User 用户数组 异常控制无 getUsers 描述通过组织名字获取该组织下面的所有人员 访问域public 参数loginname 用户登录名字 返回值User 对象 异常控制无 getUser 描述根据人员的唯一标识获取人员对象 modifyUser访问域public 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 18 页 参数User user 返回值boolean 异常控制无 描述用户修改接口 发布的共享用户和组织的 webservice 的 wsdl 文件如下 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 19 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 20 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 21 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 22 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 23 页 可以根据用不同语言平台的 webservice 工具产生 webservice 客户端 调用 webservice 接口获取用户组织信息 新建系统可以通过这些接口共享用户信息 下面是用 axis2 通过 wsdl 文件 生成的客户端代码调用示例 示例代码如下 ShareUserStub shareUser new ShareUserStub http 192 168 2 91 8080 ShareUser services ShareUser GetUsers user new GetUsers Organization o new Organization o setId 3432432432 user setIn0 o try GetUsersResponse response shareUser getUsers user ArrayOfUser users response getOut User arrUser users getUser catch RemoteException e TODO Auto generated catch block e printStackTrace 3 1 2 统一认证统一认证 统一认证提供两类认证方法 一类是 TAM 认证 一类是通过接口认证 在 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 24 页 本系统中 TAM 认证是对整个系统的认证保护 也就是单点登录 接口认证用 户 C S 结构的认证 3 1 2 1 TAM 认证认证 TAM 认证即单点登录 实现单点登录的前提是实现统一用户 只有实现了 统一用户的 web 系统才可以实现单点登录 实现单点登录的前提是实现统一用户 实现单点登录的机制是通过反向代 理的方式实现的 也就是 在访问实现单点登录系统之前 必须首先登录代理 服务器 这里是 TAM 的一个组件 Webseal 登录 webseal 后 webseal 会想请求 的系统发出请求 由于各个系统验证用户是否登录的方式是不一致的 因此 需要把用户登录 webseal 的登录凭证转换为各个系统自己的凭证 例如转换为 session cookies 等 为了保证整个 GZ ITMS 系统的稳定和安全 所有 GZ ITMS 子系统如果要 实现统一认证 则在实现统一认证的同时 也必须保留自己系统上的登录认证 模块 这个登录认证模块也可以让用户登录 但是仅仅登录到当前系统中 也 就是说 系统给用户提供了两种登录方式 一种是统一认证 一次登录到所有 GZ ITMS 子系统 另外一种 是登录 GZ ITMS 的一个子系统 如下图所示 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 25 页 子系统保留下来的用户认证模块在处理用户登录时 首先判断统一认证的 服务是否可用 即 WebSeal 服务是否可用 如果服务可用 则将 URL 重定向 到 WebSeal 上 完成用户统一认证 如果 WebSeal 服务不可用 则子系统显示 登录界面 处理用户提交的登录信息 来完成登录 每一个子系统在实现单点登录前 首先要自在 webseal 中创建一个映射的统 一的 URL 地址 例如映射 portal 为门户 映射 traffic 交通信息系统 然后子 系统在开发单点登录模块时 需要在处理登录逻辑中 将用户最后一次登录系 统的信息记录到本地数据库中 如果 WebSeal 服务不可用 则可以用该数据库 中的用户帐号信息 来完成登录 实施步骤如下 1 创建 websealURL 映射是通过界面由安全管理员来进行操作 界面如 下 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 26 页 开发系统插件 转换登录凭证 用户登录 webseal 后的凭证信息是放在请求头里面的 头信息示例如下 authorization Basic c2VjX21hc3RlcjpkdW1teQ iv groups SecurityGroup ivmgrd servers iv admin secmgrd servers via HTTP 1 1 foresee ibm 443 user agent Mozilla 4 0 compatible MSIE 6 0 Windows NT 5 1 SV1 Maxthon iv server name default webseald foresee ibm host 192 168 2 179 8080 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 27 页 accept image gif image x xbitmap image jpeg image pjpeg application x shockwave flash application vnd ms excel application vnd ms powerpoint application msword connection close accept language zh cn iv user sec master iv remote address 192 168 2 179 iv creds Version 1 BAKs3DCCBkgMADCCBkIwggY AgIFEDCB8zAsMB4CBJUJrrgCAm4nAgIR2wICAKECAgDsBAYAFzFJL eAMCnNlY19tYXN0ZXIwgcIwLzAeAgRcWmsfAgI2YQICEdsCAgC AgIA8AQGABcxSS3gDA1TZWN1cm l0eUdyb3VwMDAwHgIElULmkgICbicCAhHbAgIAoQICAOwEBgAXMUkt4AwOaXZtZ3JkLXNlcnZlcnM wKjAeAgSVZql AgJuJwICEdsCAgChAgIA7AQGABcxSS3gDAhpdi1hZG1pbjAxMB4CBJVrbigCAm4n AgIR2wICAKECAgDsBAYAFzFJLeAMD3NlY21ncmQtc2VydmVycwIBATCCBT0wggU5MCIMFEFVVEhFT lRJQ0FUSU9OX0 xFVkVMMAowCAIBBAwBMQQAMDEMF0FaTl9DUkVEX0FVVEhOTUVDSF9JTkZPMBYwFA IBBAwNTERBUCBSZWdpc3RyeQQAMEUMEkFaTl9DUkVEX0FVVEhaTl9JRDAvMC0CAQQMJmNuPVNlY3V yaXR5TWFzdGVyLHNlY0F1dGhvcml0eT1EZWZhdWx0BAAwKQwUQVpOX0NSRURfQVVUSF9NRVRIT0Qw ETAPAgEEDAhwYXNzd29yZAQAMGIMFUFaTl9DUkVEX0JST1dTRVJfSU5GTzBJMEcCAQQMQE1vemlsb GEvNC4wIChjb21wYXRpYmxlOyBNU0lFIDYuMDsgV2luZG93cyBOVCA1LjE7IFNWMTsgTWF4dGhvbi kEADBpDA9BWk5fQ1JFRF9HUk9VUFMwVjAUAgEEDA1TZWN1cml0eUdyb3VwBAAwFQIBBAwOaXZtZ3J kLXNlcnZlcnMEADAPAgEEDAhpdi1hZG1pbgQAMBYCAQQMD3NlY21ncmQtc2VydmVycwQAMIIBDAwb QVpOX0NSRURfR1JPVVBfUkVHSVNUUllfSURTMIHsMCwCAQQMJUNOPVNFQ1VSSVRZR1JPVVAsU0VDQ VVUSE9SSVRZPURFRkFVTFQEADA AgEEDDhDTj1JVk1HUkQtU0VSVkVSUyxDTj1TRUNVUklUWUdST1 VQUyxTRUNBVVRIT1JJVFk9REVGQVVMVAQAMDkCAQQMMkNOPUlWLUFETUlOLENOPVNFQ1VSSVRZR1J PVVBTLFNFQ0FVVEhPUklUWT1ERUZBVUxUBAAwQAIBBAw5Q049U0VDTUdSRC1TRVJWRVJTLENOPVNF Q1VSSVRZR1JPVVBTLFNFQ0FVVEhPUklUWT1ERUZBVUxUBAAwgc0MFEFaTl9DUkVEX0dST1VQX1VVS URTMIG0MCsCAQQMJDVjNWE2YjFmLTM2NjEtMTFkYi1iZWYwLTAwMTczMTQ5MmRlMAQAMCsCAQQMJD k1NDJlNjkyLTZlMjctMTFkYi1hMWVjLTAwMTczMTQ5MmRlMAQAMCsCAQQMJDk1NjZhOTdlLTZlMjc tMTFkYi1hMWVjLTAwMTczMTQ5MmRlMAQAMCsCAQQMJDk1NmI2ZTI4LTZlMjctMTFkYi1hMWVjLTAw MTczMTQ5MmRlMAQAMCoME0FaTl9DUkVEX0lQX0FERFJFU1MwEzARAgEEDAoweGIzMDJhOGMwBAAwK QwQQVpOX0NSRURfTUVDSF9JRDAVMBMCAQQMDElWX0 xEQVBfVjMuMAQAMC0MGUFaTl9DUkVEX1BSSU 5DSVBBTF9ET01BSU4wEDAOAgEEDAdEZWZhdWx0BAAwLgwXQVpOX0NSRURfUFJJTkNJUEFMX05BTUU wEzARAgEEDApzZWNfbWFzdGVyBAAwSAwXQVpOX0NSRURfUFJJTkNJUEFMX1VVSUQwLTArAgEEDCQ5 NTA5YWViOC02ZTI3LTExZGItYTFlYy0wMDE3MzE0OTJkZTAEADAsDBFBWk5fQ1JFRF9RT1BfSU5GT zAXMBUCAQQMDlNTSzogU1NMVjM6IDA1BAAwRwwUQVpOX0NSRURfUkVHSVNUUllfSUQwLzAtAgEEDC Zjbj1TZWN1cml0eU1hc3RlcixzZWNBdXRob3JpdHk9RGVmYXVsdAQAMB8MEkFaTl9DUkVEX1VTRVJ fSU5GTzAJMAcCAQQMAAQAMCcMEEFaTl9DUkVEX1ZFUlNJT04wEzARAgEEDAoweDAwMDAwNTEwBAA cookie JSESSIONID CAB5C147EB6B3282257D40BE10E5FFAD IV JCT 2Fxfire JSESSIONID D9478B55A78081A1C82D1756E9CDFC28 假如该系统是把用户信息保存在 session 中 来验证用户是否登录的 那么可以通过 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 28 页 配置一个过滤器来实现把 webseal 的登录凭证转换为 session 凭证 示例代码如下 public class SSO implements Filter FilterConfig config null public FilterConfig getFilterConfig return config non Javadoc see javax servlet Filter destroy public void destroy System out println destroy public void doFilter ServletRequest req ServletResponse res FilterChain chain throws IOException ServletException HttpServletRequest request HttpServletRequest req HttpServletResponse response HttpServletResponse res String loginname request getHeader iv user System out println loginname 判断是否已经登录 如果登录成功 那么把登录信息保存到session 转换为 if loginname null request getSession setAttribute loginname loginname 并在这里保存登录信息到本地系统中 以备当webseal失效时验证用户登录 具体代码 省略 chain doFilter req res else chain doFilter req res 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 29 页 Object o request getSession getAttribute loginname if o null 还没有登录 判断webseal是否可以用 boolean webseal checkWebsealSsl config getInitParameter WebsealLoginPage if webseal 跳转到webseal的登录页面 response sendRedirect config getInitParameter WebsealLoginPage else if config getInitParameter LocalLoginPage equals request getRequestURL toSt ring 跳转到本地系统登录页面 response sendRedirect config getInitParameter LocalLoginPage 检查webseal是否可用 public boolean checkWebsealSsl String url Protocol myhttps new Protocol https new MySecureProtocolSocketFactory 443 Protocol registerProtocol https myhttps 构造HttpClient的实例 HttpClient httpClient new HttpClient 创建GET方法的实例 GetMethod getMethod new GetMethod url try 执行getMethod int statusCode httpClient executeMethod getMethod System out println statusCode if statusCode HttpStatus SC OK System err println Method failed 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 30 页 getMethod getStatusLine return false else return true catch HttpException e 发生致命的异常 可能是协议不对或者返回的内容有问题 return false catch IOException e 发生网络异常 return false finally 释放连接 getMethod releaseConnection public void init FilterConfig arg0 throws ServletException config arg0 该实例的处理步骤如下 如果是通过 webseal 登录的 那么把 webseal 的登录凭证转 换为本系统的登录凭证 如果是直接访问本系统 那么首先判断 webseal 是否可用 如果可以转到 webseal 的登录页面 如果不可以那么启用本地系统的登录页面 进行 认证登录 可以根据 session 中是否有属性 loginname 来判断是否登录 同时可以 通过登录名字 loginname 来查询该用户的权限 该过滤器对应的 web xml 配置文件如下 SSO com mylearn SSO 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 31 页 LocalLoginPage http localhost 8080 hibernate login jsp WebsealLoginPage https 192 168 2 50 hiber SSO 3 1 2 2 接口认证实施接口认证实施 接口的认证 是通过用户共享的 webservice 接口 当用户登录时 通过调 用 webservice 接口获取用户的用户名和密码 然后比对用户名和密码是否正确 主要用于 C S 结构的应用 3 1 3 分布式权限分布式权限 对于采用共享方式实现统一用户的系统 分布式授权建议实现方法如下 首先通过提供的用户 组织 WebService 接口获取用户列表 然后保存用户 id 到 各个系统的数据库中 通过用户 id 建立用户和权限的关系 示意图如下 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 32 页 这样当一个人员要访问该系统的时候 根据当前登录人员的帐号 id 读取 本地数据库中用户的权限 判断是否有某项操作 3 1 4 各方职责各方职责 应用系统开发商 具体实施集成系统 实现系统的统一身份管理 具体工作有 1 需要根据共享用户的 webservice 的 wsdl 文件生成 webservice 客户端 根据项目的实际情况调用 webservice 接口获取用户等信息 2 根据系统的情况开发身份凭证转换插件 并部署到所在的系统上面 交警电子信息化建设方 协调应用系统开发商和统一身份管理平台承建方解决集成中遇到的问题 一些简单的配置操作需要建设方进行相关的配置 建立系统的在 webseal 的 url 映射 统一身份管理平台承建方 提供相关统一身份管理实施文档 提供集成指导服务 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 33 页 具体工作 1 提供共享用户的 webservice 接口和相关的 url 同时提供 webservice 接口的相关使用文档 2 提供身份凭证转换插件的的开发示例 以及使用到的类库 3 2 已建系统接入实施指南已建系统接入实施指南 3 2 1 统一用户统一用户 对于已建系统 系统已经在运行 同时该系统的维护期可能已经过了 原 开发单位不再进行维护 对其进行改造比较麻烦 因此不修改原来的系统 采 用同步实现统一用户比较合适 在用户统一管理平台中 当增加 删除 修改一个用户的时候 通过同步 工具把用户变化的信息同步到其他系统中 保持用户的统一 该 webservice 由 统一身份管理平台承建方来定义 然后由应用系统开发商来实现 供统一身份 管理平台调用 同步 webservice 接口 名称访问域public 参数User user 返回值boolean 异常控制无 addUser 描述用户增加接口 访问域public 参数User user 返回值boolean 异常控制无 modifyUser 描述用户修改接口 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 34 页 访问域public 参数User user 返回值boolean 异常控制无 deleteUser 描述用户删除接口 当 TIM 中执行挂起用户 操作的时候调用该方法 访问域public 参数String togroupid ldap 中目的组织 id User user 返回值boolean 异常控制无 transferUser 描述把用户从一个组织转移到另外一个组织 访问域public 参数User user 返回值boolean 异常控制无 restoreUser 描述重新恢复用户 需要通过同步方式实现统一用户的系统 首先实现我方定义的 webservice 接口 并把该 webservice 接口的地址配置到 TIM 安装目录下面 servicesUrl properties 文件中 示例如下 serviceurl http 192 168 2 91 8080 ShareUser services SynUser http 192 168 2 55 services SynUser 由于可能需要同步到多个系统中 每个系统发布的 service 的 url 不一样 这里不同的 url 之间用分号分开 并且要求发布的 webservice 名字统一为 SynUser 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 35 页 对于 webservice 中定义的方法 如果某一些方法用不到 那么可以直接返 回布尔值 true 即可 可以不实现该方法 例如 transferUser 方法 只有用户组织 和 TIM 系统组织一致时才有必要实现此方法 用户同步的 webservice 信息 wsdl 文件如下 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 36 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 37 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 38 页 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 39 页 3 2 2 统一认证统一认证 统一认证提供两类认证方法 一类是 TAM 认证 一类是通过接口认证 在 本系统中 TAM 认证是对整个系统的认证保护 也就是单点登录 接口认证用 户 C S 结构的认证 3 2 2 1 TAM 认证认证 TAM 认证即单点登录 实现单点登录的前提是实现统一用户 只有实现了 统一用户的 web 系统才可以实现单点登录 实现单点登录的前提是实现统一用户 实现单点登录的机制是通过反向代 理的方式实现的 也就是 在访问实现单点登录系统之前 必须首先登录代理 服务器 这里是 TAM 的一个组件 Webseal 登录 webseal 后 webseal 会想请求 的系统发出请求 由于各个系统验证用户是否登录的方式是不一致的 因此 需要把用户登录 webseal 的登录凭证转换为各个系统自己的凭证 例如转换为 session cookies 等 为了保证整个 GZ ITMS 系统的稳定和安全 所有 GZ ITMS 子系统如果要 实现统一认证 则在实现统一认证的同时 也必须保留自己系统上的登录认证 模块 这个登录认证模块也可以让用户登录 但是仅仅登录到当前系统中 也 就是说 系统给用户提供了两种登录方式 一种是统一认证 一次登录到所有 GZ ITMS 子系统 另外一种 是登录 GZ ITMS 的一个子系统 如下图所示 广州市智能交通管理指挥系统交通管理信息网站项目 概要设计说明书 广州市方欣科技有限公司 2006 第 40 页 子系统保留下来的用户认证模块在处理用户登录时 首先判断统一认证的 服务是否可用 即 WebSeal 服务是否可用 如果服务可用 则将 URL 重定向 到 WebSe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电信消防知识培训课件
- vi设计教学课件-b 下载
- 2025年建筑工程项目管理入门知识测试卷及答案
- 申论政务上云平台课件
- 甲状腺瘤的护理课件
- 各类麻醉术前术后护理5
- 甲乙类功率放大电路课件
- 《树的日子》教学课件
- 三维目标教学课件
- 统编版语文八年级上册第7课藤野先生练习题(含答案)
- 中小学教职工开学安全培训
- 长沙市太平街、西文庙坪历史文化街区保护提升项目可行性研究报告
- 业绩分红方案(3篇)
- 中国金属材料检测服务行业市场占有率及投资前景预测分析报告
- 华润置地住宅项目实测实量操作指引
- 封阳台外包协议书
- 更年期保健专科建设和管理指南
- 教育系统安全风险管控措施
- 新一年VR虚拟现实体验馆商业计划书与运营方案41
- 2025-2030中国体外诊断行业深度分析及发展前景与发展战略研究报告
- 上海中学2024-2025学年初三二模英语试题试卷与答案含答案
评论
0/150
提交评论