1)如果每个系统都开发各自的身份认证系统将造成资源的浪费,消耗开发成本,并延缓开发进度;
2)多个身份认证系统会增加整个系统的管理工作成本;
3)用户需要记忆多个帐户和口令,使用极为不便,同时由于用户口令遗忘而导致的支持费用不断上涨;
5)无法统一分析用户的应用行为;因此,对于有多个业务系统应用需求的政府、企业或机构等,需要配置一套统一的身份认证系统,以实现集中统一的身份认证,并减少整个系统的成本。
·即插即用:通过简单的配置,无须用户修改任何现有B/S、C/S应用系统,即可使用。解决了当前其他SSO解决方案实施困难的难题。
·多样的身份认证机制:同时支持基于PKI/CA数字证书和用户名/口令身份认证方式,可单独使用也可组合使用。
·基于角色访问控制:根据用户的角色和URL实现访问控制功能。
·基于Web界面管理:系统所有管理功能都通过Web方式实现。网络管理人员和系统管理员可以通过浏览器在任何地方进行远程访问管理。此外,可以使用HTTPS安全地进行管理。
·全面的日志审计:精确地记录用户的日志,可按日期、地址、用户、资源等信息对日志进行查询、统计和分析。审计结果通过Web界面以图表的形式展现给管理员。
·双机热备:通过双机热备功能,提高系统的可用性,满足企业级用户的需求。
·集群:通过集群功能,为企业提供高效、可靠的SSO服务。可实现分布式部署,提供灵活的解决方案。
·传输加密:支持多种对称和非对称加密算法,保证用户信息在传输过程中不被窃取和篡改。
·防火墙:基于状态检测技术,支持NAT。主要用于加强SSO本身的安全,也适用于网络性能要求不高的场合,以减少投资。
·分布式安装:对物理上不在一个区域的网络应用服务器可以进行分布式部署SSO系统。
·后台用户数据库支持:LDAP、Oracle、DB2、Win2kADS、Sybase等。可以无缝集成现有的应用系统的统一用户数据库作为SSO应用软件系统的用户数据库。
系统结构图
说明:CA安全基础设施可以采用自建方式,也可以选择第三方CA。
具体包含以下主要功能模块:
2身份认证中心
2存储企业用户目录,完成对用户身份、角色等信息的统一管理;
2访问策略的定制和管理;
2用户访问的实时监控、安全审计;
2身份认证服务
2身份认证前置为应用系统提供安全认证服务接口,中转认证和访问请求;
2身份认证服务完成对用户身份的认证和角色的转换;
2访问控制服务
2CA中心及数字证书网上受理系统
2用户身份认证凭证(USB智能密钥)的制作;
系统交互图
其原理如下:
1)每个信息资源配置一个访问代理,并为不同的代理分配不同的数字证书,用来保证和系统服务之间的安全通信。
3)访问一个具体的信息资源时,系统服务用访问代理对应的数字证书,把用户的身份信息机密后以数字信封的形式传递给相应的信息资源服务器。
4)信息资源服务器在接受到数字信封后,通过访问代理,进行解密验证,得到用户身份。根据用户身份,进行内部权限的认证。
统一身份管理及访问控制系统用户数据独立于各应用系统,对于数字证书的用户来说,用户证书的序列号平台中是唯一的,对于非证书用户来说,平台用户ID(passport)是唯一的,由其作为平台用户的统一标识。如下图所示:
(2)、再由其映射不同应用系统的用户账户;
(3)、最后用映射后的账户访问相应的应用系统;
应用系统接入平台的架构如下图所示:
(1)反向代理(ReverseProxy)方式
应用系统无需开发、无需改动。对于不能作改动或没有原厂商配合的应用系统,可以使用该方式接入统一用户管理平台。
(2)Plug-in方式
1、用户信息统一管理,包括了用户的注册、用户信息变更、用户注销;
2、权限管理系统自动获取新增(或注销)用户信息,并根据设置自动分配(或删除)默认权限和用户角色;
提供的安全通道是利用数字签名进行身份认证,采用数字信封进行信息加密的基于SSL协议的安全通道产品,实现了服务器端和客户端嵌入式的数据安全隔离机制。
图:使用前
图:使用后
安全通道的主要用途是在两个通信应用程序之间提供私密性和可靠性,这个过程通过3个元素来完成:
(1)握手协议:这个协议负责协商用于客户机和服务器之间会话的加密参数。当一个SSL客户机和服务器第一次开始通信时,它们在一个协议版本上达成一致,选择加密算法和认证方式,并使用公钥技术来生成共享密钥。
(2)记录协议:这个协议用于交换应用数据。应用程序消息被分割成可管理的数据块,还可以压缩,并产生一个MAC(消息认证代码),然后结果被加密并传输。接受方接受数据并对它解密,校验MAC,解压并重新组合,把结果提供给应用程序协议。
(3)警告协议:这个协议用于标示在什么时候发生了错误或两个主机之间的会话在什么时候终止。