基于校园信息门户,构建一个统一身份认证系统是解决实验室综合管理平台软件与校园网内部应用系统集中的有效途径。智能实验系统是一个复合系统平台,包括portal技术、业务系统开发、对接系统的技术、物联技术。整个系统采用不同的开发方式。
1、完成独立的认证中间件,通过基于java的认证服务获取,采用CAS认证中心的模式内部互相认证,对具有特别要求的服务认证提供对外认证的webservice接口。
2、完成身份认证中的身份同步机制的统一设计,以oracle的procedure和view代替数据的直传和程序业务处理。通过数据机制解决数据问题具有更强的优势。
1.1 身份认证系统级管理平台的设计
在高校信息化建设和数字校园建设中建立一个完整统一、安全可靠的统一身份认证和管理平台非常必要也很重要。
设计目标
学校数字校园统一门户和统一身份认证系统之下,认证对象实现单一的接口认证,将智能管理平台所有业务及应用系统集成到统一门户平台中,提供统一有效的用户管理,智能管理平台内部实现CAS统一认证,并支持对外扩展:
1、实现统一身份认证和单点登陆,在数字化校园之下实现数据同步;
2、提供系统的对外认证服务及对外接口开放(Webservice,CAS)
3、建立灵活的授权管理机制;
4、记录管理员操作行为日志,实现安全审计;
5、用户登陆所有应用系统都使用唯一的用户名和口令;
6、访问多个系统时只需要登陆一次;
7、保持外部应用系统用户数据和平台用户数据的同步,具有良好的平台兼容性。
技术架构
1、接口层
实现学校统一身份认证的接口扩展,完成身份认证及单点登录接口
2、接口对象
智能实验系统包括:内部的CAS统一认证,并提供对外认证服务、Webservice服务、
3、数据层
数据层为统一身份认证系统提供数据接口服务,包括所有用户身份数据的服务,和存储认证系统日志和系统配置数据的数据库。外部权威数据源通过统一身份认证系统的数据同步组件,将外部应用系统的用户身份数据与认证系统的用户数据集成,从而实现统一的用户身份凭证,为实现统一身份认证、单点登录和授权管理提供数据基础;一卡通的数据接口组件
1.2 统一身份认证系统功能设计
根据对统一身份认证系统及管理平台结构的设计,实现基于4A(身份管理(Ac—count)、身份认证(Authentieation)、授权管理(Authorization)、安全审计(Audit))规范的统一身份认证系统和管理平台。
接口对象的认证实施:
系统对学校认证系统认证采用基于java的认证方式:
1、客户端部署实施
将“IDStar认证接口\ICEClient\Java\lib”下所有的.Jar文件拷贝到客户端应用所在服务器中,并将存放这些Jar包的路径设置到classpath中修改client.properties文件:将client.properties文件拷贝到与JAR包相同目录下
2、数据集成实施
对接校共享数据库、对接一卡通接口。定期批量同步基础用户信息,通过oracle增量添加机制同步用户变更信息。
3、CAS服务中心部署
4、Webservice服务部署
5、统一认证代码开发及对接调试。
基于角色的授权管理模型:
基于角色的权限管理模型其核心是在用户和权限之间增加用于隔离权限和用户的实体.这个实体即角色。角色成为用户和权限的中间媒介把用户和权限联系起来,权限被赋于角色,而不是用户。用户通过角色问接地访问资源。角色这个实体的引入,被用户间接授权并间接访问资源;而正是因为这种间接性带来了授权的灵活和操作的简便性。当一个角色被指定给某用户时.此用户就拥有了该角色所享有的全部权限。
数据同步机制:
身份基本数据通过校方提供的共享数据库及一卡通数据接口获得基础数据。通过oracle的增量更新和批次更新方式获取系统基本用户信息。通过管理员统一安排权限设置角色,分配用户实现统一身份和权限功能。
CAS认证
系统对外认证接口对接学校身份认证系统,对内通过CAS统一系统内部身份认证,同时提供对外的CAS认证支持,灵活的实现外部系统的对接,支持学校身份认证系统CAS的扩展。
Webservice服务
系统提供Webservice服务,方便安全的支持外部系统调用内部业务及数据,获取认证的信息,提供支持的认证的对象。
1.3 系统方案特点
该系统的主要特点有:
1、非平台依赖的SSO方案,系统平台支持CAS认证扩展,同时提供Webservice服务以满足基于不同平台的Web应用的需要和后面的扩展;
2、身份认证系统的用户信息依赖于校园网现有共享数据库信息,不提供对用户帐号信息修改的功能,减少身份混乱及权限混乱;
3、用户通过身份认证系统登录后,获得其真实身份的认证,用户对系统的访问控制由各个业务负责。认证服务器对用户的登录、退出动作做简单的日志记录及审计;
4、用户以登录时认证服务器为其生成的临时码和用户名为凭证,访问各个Web应用系统。为提高用户凭证检验速度,用户临时码表放在内存中;
5、临时码和用户身份信息经过加密后保存到用户Cookies中。
1.4 安全性考虑
1、认证性。
用户登录认证服务器时,除需要提交用户名和密码外,还需要提交验证码,减缓登录速度,有效防止暴力破解。
2、完整性。
完整性问题主要Web应用接收用户请求时,由于用户端Cookies存储的是加密信息,能防止用户信息被篡改。同时,web应用端接收到用户凭证后,不管自身是否存有用户凭证,都转入认证服务器进行验证,保证了凭证的完整性。
3、重放攻击。
重放攻击威胁发生在用户登录认证服务器和用户请求Web应用资源时,由于方案中用户每次登录或退出认证系统,都将随机生成(更新)临时码,对二次登录、退出后重新登录等情况进行了限制,有效防止了重放攻击。
4、拒绝模拟登陆
系统对接对象为校身份认证系统,同时提供对外接口为Webservice及CAS认证。系统在提供认证服务时增加Token字,拒绝模拟登陆及其他非授权登录认证方式。