一种基于公开密钥基础设施的单点登录系统的设计方法与流程

文档序号:13984264阅读:202来源:国知局

本发明涉及一种单点登录系统的设计方法,尤其涉及一种基于公开密钥基础设施的单点登录系统的设计方法。



背景技术:

单点登录系统通过一次身份验证,可以透明登录所有授权应用,使用单点登录系统的意义如下:

①自动完成用户对应用的登录:只要用户点击授权应用图标,可以即时访问该应用系统,由于不需要用户手动输入用户名和口令,提高了用户工作效率;

②减少用户等待时间:不会因密码被忘记或被窃取增加等待时间,直接改进业务过程,并提高系统性能;

③利用强认证机制对用户进行基本身份验证,提高了登录的安全性;

④提高整体安全性并降低风险,通过单点登录系统访问应用,实际上相当于增加了对用户身份验证的另一种验证方式,即采用双重验证方式,对每个用户的密码信息加密存储在中心库中,增加了系统的安全性,由于二级登录由系统自动完成,登录的口令可以设计得相当复杂,这使得黑客进行口令猜测攻击变得困难;

目前有多种单点登录系统,如novell公司的sso系统,microsoft公司在windows2000中集成的单点登录系统等,这些系统的主要问题在于只能在本公司产品环境中实现单点登录功能,对于其他公司的各种授权应用,不能将其集成进来,实现单点登录,因此应用范围具有局限性;

为了实现安全性高,应用范围广,容易实施的单点登录系统,采用了如下设计思想:

①采用中间件技术支持对二级授权应用的登录;

②对登录凭证库进行集中管理;

③使用基于pki的身份认证机制;

系统的实现关键点在于:①操作方便、安全性能高的客户端;②可靠的用户身份验证机制;③登录凭证库的管理和安全传输;

其中用户身份的认证机制是整个系统的核心,几种典型的身份认证机制如下:基于令牌的身份认证,基于kerberos的身份认证,基于pki的身份认证.本系统采用了x.509的三向认证机制;

通过本系统的实现,解决了在pki基础上的门户控制和单点登录问题,是pki的一个典型应用。



技术实现要素:

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,ksso系统的整体结构和运行过程,主要包括客户端用户操作界面、客户端登录代理、身份认证服务器、二级登录凭证库、ldap目录服务器、ssl通信、ksso认证机构几个部分。

二级登录凭证指的是登录具有登录窗口应用所需的信息,如用户名、口令等信息.ldap目录服务器用来保存用户的数字证书、证书注销列表以及用户的信息,用psso表示ksso客户端程序,ksso系统运行流程设计如下:

①输入用户名和基本登录密码(私钥库密码);

②与身份认证服务器进行ssl握手,psso与身份认证服务器进行相互身份认证;

③身份认证服务器利用该用户证书的主题名在数据库中查找该用户的二级登录凭证库数据;

④身份认证服务器将该用户的二级登录凭证库数据加密后传给psso;

⑤psso将二级登录凭证库解密后,用自己产生的对称密钥重新加密,保存到缓存器中;

⑥根据该凭证库所拥有的授权应用的名称,在psso授权应用主窗口中显示出所有授权应用的图标;

⑦启动某授权应用,根据该授权应用所对应的登录凭证,提取出用户名、口令、登录框id等登录凭证参数;

⑧监测该授权应用登录框的出现,当其出现后,自动将用户名和口令填入,并自动提交,透明地完成二级登录过程。

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,基于x.509证书的身份认证,在ksso的设计中,由身份认证服务器对每个用户的身份进行验证并传送通过验证的用户的二级登录凭证库。

ksso采用对等认证方式:即服务器端需要对客户端的身份进行认证,同时客户端也需要对服务器端的身份进行认证,其具体流程如下所示,对用户身份的认证过程如下:

①要求客户端提供数字证书;

②收到客户端发来的数字证书后,从传送的证书中获得相关信息;

③验证证书的有效性;

④若该证书有效,则提取出该证书主题名;

⑤通过用户数字证书的主题名在数据库中查找该用户的二级登录凭证库,将其加密后传送到客户端。

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,授权应用登录凭证的获取和使用,客户端应用程序的登录界面有多种方式,比如有基于windows的登录窗口,有基于ie浏览器网页的登录界面,有基于unix/linux的登录窗口,有基于命令行的登录方式,要自动实现授权应用的登录过程,必须首先得到授权应用的登录凭证,这里登录凭证包括两个方面的内容:①用户名和口令;②完成自动登录所需要的登录窗口的特征信息(比如窗口标题,口令输入框id等)。

ksso目前实现了两种授权应用代理:基于windows登录窗口的登录代理和基于ie浏览器网页的登录代理。

对于基于ie浏览器网页的登录凭证的获得方式有两种:手动和自动,

手动方式利用登录凭证建立向导完成,通过输入网页url、用户名、口令建立该网页的登录凭证;

自动方式由psso自动完成:当浏览器打开某一个网页后,psso自动分析该网页中是否有用户名和口令输入框,并检测是否用户已经输入了用户名和口令,若用户输入了用户名和口令,则马上弹出对话框,提示用户是否保存该网页的登录凭证;

当授权应用的登录凭证已经建立好后,可以通过psso自动完成授权应用的登录。

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,用户注册,新用户在使用ksso系统之前,首先需要在系统中进行注册,身份认证服务器通过验证用户的身份,根据本地的授权策略,决定是否允许该用户进行注册,若允许,则建立该用户的初始凭证库信息,并在ldap目录服务器中登记该用户项。

本系统使用ldap目录服务器保存所有用户的x.509数字证书和个人身份信息,以及证书注销列表;

二级登录凭证库用于存放每个用户的二级登录凭证信息,这里二级登录凭证库存放在sqlserver数据库中;

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,客户端与身份认证服务器的通信,ssl通信模块在ksso系统中处于核心地位,它主要实现两个功能:①协助完成客户端和服务器端的双向身份认证;②完成用户二级登录凭证库的加密传输。

本系统利用ssl协议完成客户端与身份认证服务器的安全通信,并在其上层设计了应用层通信协议。

客户端与身份认证服务器建立ssl连接后,需要进行应用层的数据传送:凭证库数据的接收,凭证库数据的发送,注册请求,注册响应为此,设计了一个专用的应用层通信协议;

该应用层协议有两种报文类型:数据报文和控制报文,其中数据报文用于传送凭证库数据,控制报文用于传送握手消息以及通信过程中的警告消息。

一种基于公开密钥基础设施的单点登录系统的设计方法,其特征在于,ksso认证机构(ca),ksso认证机构用于给用户签发数字证书,并用于完成数字证书的注销、管理、查询等工作,这一部分是ksso系统中一个比较独立的模块。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1