身份认证系统需求分析:分布式用户认证为单点登录护航 上篇
身份认证系统总体设计—四大设计原则
为了使身份认证系统能够更好地与其他系统协同工作,我们在设计该系统时制订了几条原则:
1. 面向服务的原则
系统的定位是为其他信息系统提供认证服务和身份管理服务,这就要求系统能够从用户的角度提供一套服务规范和接口标准。
2. 可动态扩展的原则
系统在运营的过程中需要扩展的内容包括:认证方式、认证策略、资源和管理流程、管理策略。系统的设计必须能够有效识别这些变化,隔离这些变化,以策略或参数化的形式支持这些变化。
3. 现有应用系统最小改动的原则
系统设计时应充分考虑对现有应用系统的影响,保证现有应用系统改动最小,并在业务流程上保持现有应用模式。
4.方便管理的原则
由于Web Service技术的松散耦合特点,它没有复杂的消息传递、对象引用和垃圾回收机制,因此非常适合于分布式处理。我们设计系统时需要考虑到校园网中用户身份和资源信息应具有简单方便的管理方式。
身份认证系统总体设计—系统构成
身份认证系统由身份认证服务器、用户信息/安全策略数据库、客户端控件、Web服务代理、管理终端等构成。身份认证服务器由身份认证服务和安全策略配置服务两个模块组成。
身份认证系统采用B/S架构实现用户信息的管理和安全策略的配置,配置的信息通过安全策略配置服务程序写入到用户信息/安全策略数据库中,以供身份认证服务和管理终端查询使用。身份认证服务模块提供在线服务,实时接收来自Web安全代理的身份认证请求,并根据设定的策略对用户身份进行验证,为用户登录业务系统提供集中认证服务。
身份认证系统部署在用户层和资源层之间,对用户访问资源的登录行为进行实时的控制:
1. 用户层
这一层包括校内所有教职工和学生。按照用户上网地点的不同,可以划分为校内用户和校外用户;按用户接入方式的不同,可以划分为上网认证用户和不认证用户。
2. 资源层
这一层包括校内办公系统、精品课程、网络教学平台、内网个人信息查询、资源中心、学生选课及成绩查询、BBS等B/S架构的应用系统,而将来可以通过平滑升级的系统包括邮件系统和其它C/S架构的业务系统。
身份认证系统总体设计—系统架构
Tomcat是JSP和Servlet的运行环境,AXIS框架来自Apache开放源代码组织,它是使用Java语言编写的基于最新的SOAP 规范(SOAP 1.2)和SOAP with Attachments 规范的开放源代码框架。使用AXIS实现Web Service非常简单,只需编写认证相关的Java类,然后将文件扩展名改为jws,无需编译,将文件拷贝到应用程序发布目录下即可。
身份认证系统网络构架与实现
综合考虑到性能和保护现有投资的要求,校园网采用了网关认证和802.1x认证相结合的方式:学生宿舍全部部署支持802.1x的交换机,采用802.1x认证,办公区采用网关Web认证。两套认证系统使用统一的用户资料,用户资料存储在LDAP服务器中,通过Web Service实现用户身份的认证, Web Service通过Java技术实现,运行环境为Tomcat和AXIS框架。
在校园网内部署两台身份认证服务器,操作系统为Redhat Linux 9.0;安装Apache、登录认证服务器软件、资源访问审计服务器软件和安全策略配置服务器软件。其中,一台是数据库服务器,其操作系统为Redhat Linux 9.0,安装的是Oracle数据库软件;另一台是管理终端,在应用系统服务器主机上安装Web服务代理。为了保证身份认证系统稳定可靠地运行,避免单点故障,使用两台身份认证服务器互相热备,以保证提供稳定可靠的服务。
校内用户访问校内应用系统时不需要通过该系统作验证,而是直接访问原有业务;校外用户访问校内应用系统时必须通过身份认证系统进行身份验证,认证方式为用户名/口令,身份验证通过后才能访问原有业务;用户通过身份验证时,只需输入一次口令,就可以访问校内应用系统。
目前,学校人事、教务、研究生、财务、校内信息服务等网络应用系统已实现基于Web Service的统一身份认证。根据校园网建设的需求,身份认证服务器采用双机备份,尽可能提高系统运行的可靠性,用户使用该系统访问业务系统时只需要输入一次口令,就可以连接多个应用系统,而其他应用系统不用作任何修改,就可以平滑升级支持单点登录、集中授权和集中审计。
【编辑推荐】