首页> 中国专利> 一种基于WS协议的信息卡认证方法及系统

一种基于WS协议的信息卡认证方法及系统

摘要

本发明公开了一种基于WS协议的信息卡认证方法,该方法包括:用户登录依赖方(Relying Party),Relying Party向身份选择器客户端(Identity SelectorClient)请求令牌并确定策略;用户使用Identity Selector Client通过身份选择器服务器(Identity Selector Server)验证身份后登录Identity Selector Client;IdentitySelector Client将信息卡提交给标识提供方(Identity Provider)进行认证并接收令牌,将令牌返回给Relying Party。本发明还同时公开了一种基于WS协议的信息卡认证系统,解决了信息传输过程中出现的机密性、完整性、身份鉴别的问题。

著录项

  • 公开/公告号CN102811210A

    专利类型发明专利

  • 公开/公告日2012-12-05

    原文格式PDF

  • 申请/专利权人 北京邮电大学;

    申请/专利号CN201110149978.0

  • 申请日2011-06-03

  • 分类号H04L29/06(20060101);H04L9/32(20060101);

  • 代理机构11270 北京派特恩知识产权代理事务所(普通合伙);

  • 代理人张颖玲;王黎延

  • 地址 100876 北京市海淀区西土城路10号

  • 入库时间 2023-12-18 07:36:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-06-19

    未缴年费专利权终止 IPC(主分类):H04L29/06 授权公告日:20150527 终止日期:20170603 申请日:20110603

    专利权的终止

  • 2015-05-27

    授权

    授权

  • 2013-01-30

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20110603

    实质审查的生效

  • 2012-12-05

    公开

    公开

说明书

技术领域

本发明涉及网络信息安全中的信息认证技术,特别是涉及一种基于Web服 务(WS)协议的信息卡认证方法及系统。

背景技术

因特网(Internet)对于用户和业务而言,其价值仍在持续增长。越来越多 的人在日常生活中需要使用网络,从购物、办理银行业务、支付账单到多媒体 和娱乐消费。

然而,随着网上操作的增值,Internet自身已经变得更为复杂、更容易受到 攻击并且更加危险。人们对在线身份的盗取、欺诈和隐私的关注程度不断提高, 因此,便引入了许多数字标识系统,但是,目前没有系统能够满足不同数字标 识方案的需要,所以目前人们还是分别使用着许多不同的标识系统,且在不断 开发更多的系统。结果,当前Internet上数字标识的状态是不协调的大杂烩, 成为了每个Web站点上具有不同用户体验的用户的负担;并且,由于提供的数 字标识系统非常脆弱,也限制了电子商务更完整的实现。

为了解决上述问题,业界引入了标识元系统,所谓标识元系统是基于数字 身份的互操作架构,在标识元系统下建立的信息卡模型,允许用户拥有并管理 基于不同技术、不同实现方法和不同提供商的一系列的数字身份,使用该模型, 用户可以继续使用现有的身份管理基础设施,并选择最适合他们的身份技术。 但是,标识元系统发展还不够成熟,在实际应用中局限性还很大,比如:由于 现有的信息卡模型建立系统中,针对一个用户只有身份选择器(Identity Selector)一台设备来保存信息卡,所以信息卡下载到该设备上之后,用户只能 从这台固定的设备上登录,对实际使用造成非常大的不便;另外,由于普通用 户可以对信息卡进行创建,没有权限的限制,任何用户都能轻易接触到信息卡, 这使信息卡的安全性和保密性受到很大影响。

此外,标识元系统下建立的信息卡模型目前对WS的简单对象访问协议 (SOAP)消息加密,主要是使用安全套接层(SSL)的HTTPS方法,而此方 法存在很多问题,包括:HTTPS提供的是点对点安全保护;HTTPS是在传输 层提供安全保障的,而不是在消息层面,导致不可能达到消息安全所需要的灵 活性的要求;HTTPS分配好共享密钥后,传递消息的时候并没有使用数字签名 技术,而这一项功能恰恰是在电子商务中不可或缺的。

发明内容

有鉴于此,本发明的目的在于提供一种基于WS协议的信息卡认证方法及 系统,能解决信息建立及传输过程中出现的机密性、完整性、身份鉴别的问题。

为达到上述目的,本发明的技术方案是这样实现的:

本发明提供了一种基于WS协议的信息卡认证方法,该方法包括:

用户登录依赖方(Relying Party),Relying Party向身份选择器客户端 (Identity Selector Client)请求令牌并确定策略;用户使用Identity Selector Client 通过身份选择器服务器(Identity Selector Server)验证身份后登录Identity Selector Client;Identity Selector Client将信息卡提交给标识提供方(Identity Provider)进行认证并接收令牌,将令牌返回给Relying Party。

上述方案中,该方法还包括:Identity Selector Client收到请求令牌的信息后, 要求用户输入用户名和密码登录Identity Selector Client,并将用户名和密码上传 到Identity Selector Server进行验证,如果验证不通过,则拒绝用户继续操作, 如果验证通过,则继续操作。

上述方案中,所述Identity Selector Client将信息卡提交给Identity Provider 为:Identity Selector Client将信息卡中的相关信息编写成SOAP信息,并对该 SOAP信息进行XML签名和XML加密,之后发送到Identity Provider。

上述方案中,所述将令牌返回给Relying Party后,该方法还包括:Relying Party对接收到的令牌进行XML签名匹配,XML签名匹配之后进行XML解密, 解密成功后允许用户进行访问。

上述方案中,所述用户登录Relying Party之前,该方法还包括:用户以管 理员身份登录Identity Provider,从Identity Provider所管理的所有用户名中,选 定要为其建立信息卡的用户名;为所选的用户名创建信息卡;用户以管理员身 份为所选用户分发信息卡。

本发明还提供了一种基于WS协议的信息卡认证系统,该系统包括:Identity Provider、Identity Selector Client、Identity Selector Server及Relying Party;其中,

Identity Provider,用于对Identity Selector Client提交的信息卡进行认证, 并向Identity Selector Client返回令牌;

Identity Selector Client,用于接收Relying Party请求令牌的信息,与Relying Party确定策略,向Identity Selector Server请求验证登录用户身份并接收验证结 果,向Identity Provider提交信息卡进行认证并接收令牌,将令牌返回给Relying Party;

Identity Selector Server,用于接收Identity Selector Client请求验证登录用户 身份的信息,并向Identity Selector Client返回验证结果;

Relying Party,用于向Identity Selector Client请求令牌,并与Identity Selector Client确定策略,接收Identity Selector Client返回的令牌。

上述方案中,所述Identity Selector Client,还用于向用户要求输入用户名和 密码,再将用户名和密码编写成为验证登录用户身份的请求发送到Identity Selector Server;

所述Identity Selector Server,还用于接收验证登录用户身份的请求。

上述方案中,所述Identity Selector Client,还用于将用户选定的信息卡中的 相关信息编写成SOAP信息,并对SOAP信息进行XML签名和XML加密后, 发送给Identity Provider;

所述Identity Provider,还用于接收Identity Selector Client提交的经过XML 签名和XML加密编写成SOAP信息的信息卡进行解析并做认证。

上述方案中,所述Relying Party,还用于对接收到的令牌进行XML签名匹 配,签名匹配之后进行XML解密,解密成功后才能允许用户进行访问。

上述方案中,所述Identity Provider,还用于与所接入的系统同步数据库同 步数据库,并设置所得到的用户名的初始密码。

上述方案中,所述Identity Provider,还用于创建信息卡,从Identity Selector Server中查询所选用户名的状态是否在线并接收用户状态信息,当用户状态为 在线时,从Identity Selector Server中查询所选用户名所在的Identity Selector Client的IP地址并接收IP地址,根据IP地址将信息卡传送到Identity Selector Client,当用户名状态为不在线时,将信息卡发到Identity Selector Server;

相应的,所述Identity Selector Server,还用于接收Identity Provider的所选 用户名所在的Identity Selector Client的是否在线的查询,并向其返回用户状态 信息,之后接收Identity Provider的所选用户名所在的Identity Selector Client的 IP地址的查询并返回IP地址,当Identity Provider所选用户不在线的时候,接 收并保存Identity Provider发送的信息卡;

所述Identity Selector Client,还用于接收Identity Provider发送的信息卡, 将信息卡上传并保存在Identity Selector Server。

上述方案中,所述Identity Provider包括颁发令牌模块、同步用户模块、管 理证书模块、创建信息卡模块和分发信息卡模块;其中,

颁发令牌模块,接收Identity Selector Client提交的经过XML签名和XML 加密编写成SOAP信息的信息卡,对信息卡进行解析并认证,给Identity Selector Client返回令牌;

同步用户模块,用于向所要接入的系统获取数据库,用户从同步数据库中 选择所选的要建立信息卡的用户名,将所选用户名的用户信息发送给创建信息 卡模块;

管理证书模块,用于存储X509证书,且接收创建信息卡模块的建立证书 指令,建立X509证书,向创建信息卡模块提供X509证书;

创建信息卡模块,用于接收同步用户模块发来的用户信息,为该用户名创 建信息卡,如果要创建的是X509证书类型的信息卡,则先查看管理证书模块 中,所选用户名是否有X509证书,如果存在,则直接从管理证书模块读取X509 证书,为所选用户名建立信息卡,如果不存在,则向管理证书模块发出建立证 书的指令,读取X509证书之后使用该X509证书为所选用户名建立信息卡;如 果要创建用户名/密码类型的信息卡,则为所选用户名在创建信息卡模块直接创 建用户名/密码类型的信息卡,最后将信息卡发送给分发信息卡模块;

分发信息卡模块,用于接收并保存创建信息卡模块发送的信息卡,接收用 户为所选用户名分发信息卡的指令,从Identity Selector Server获取做所选用户 名的状态信息,之后从Identity Selector Server查询所选用户名所在的Identity Selector Client的IP地址,根据IP地址将信息卡传送到Identity Selector Client, 当所选用户名状态为不在线时,将信息卡发到Identity Selector Server。

上述方案中,所述Identity Selector Client包括:注册模块,登录模块,上 传信息卡模块、下载信息卡模块、认证信息卡模块和验证信息卡模块;其中,

注册模块,用于接收登录模块的通知,向Identity Selector Server发送注册 信息;

登录模块,用于接收Relying Party的请求令牌信息,要求用户输入用户名 和密码登录,将用户名和密码上传到Identity Selector Server进行用户身份验证, 还用于记录用户名的状态是否在线,并将状态通知给注册模块;

上传信息卡模块,用于根据用户的指令从下载信息卡模块中选取信息卡并 上传到Identity Selector Server;

下载信息卡模块,用于接收并存储Identity Provider发送的信息卡,从 Identity Selector Server下载用户选中的信息卡,还用于接收Identity Selector Server的用户身份验证结果,用户选择信息卡后将信息卡发送给验证信息卡模 块,还用于将上传信息卡模块选取的信息卡发送给上传信息卡模块;

验证信息卡模块,用于接收下载信息卡模块发送的信息卡,接收用户输入 的信息卡密码进行验证,并将验证通过的信息卡提交给认证信息卡模块,还用 于接收用户修改信息卡密码的指令,将用户的旧密码发送到Identity Provider做 验证,接收验证通过的通知后,将用户的新密码发送给Identity Provider,若接 收验证失败的通知,则用户无法修改密码;

认证信息卡模块,用于将验证信息卡模块提交的信息卡中的相关信息编写 成SOAP信息,并进行XML签名和XML加密并发送给Identity Provider,接收 Identity Provider返回的令牌,最后将令牌发送给Relying Party。

上述方案中,所述Identity Selector Server进一步包括:注册用户模块、验 证用户模块、接收信息卡模块、发放信息卡模块;其中,

注册用户模块,用于接收Identity Selector Client的注册信息,记录用户的 状态,产生用户信息,给验证用户模块提供状态信息和用户信息;

验证用户模块,用于接收Identity Provider的用户的状态查询,从注册用户 模块获取用户名的状态信息后向Identity Provider返回所选用户名的状态信息, 还用于接收Identity Provider的用户名所使用的Identity Selector Client的IP地址 的请求信息,从注册模块获取用户信息并从用户信息中提取出IP地址,向 Identity Provider返回用户名所使用的Identity Selector Client的IP地址,还用于 接收Identity Selector Client的用户名和密码对其进行验证并向Identity Selector Client返回验证结果;

接收信息卡模块,用于接收并保存Identity Provider发送的信息卡,还用于 接收并保存Identity Selector Client上传的信息卡,接收发放信息卡模块的信息 卡查询指令,将用户所选信息卡发送给发放信息卡模块;

发放信息卡模块,用于根据Identity Selector Client的下载请求,将信息卡 发给Identity Selector Client。

上述方案中,所述Relying Party包括:激活Identity Selector Client模块和 验证令牌模块;其中,

激活Identity Selector Client模块,用于接收用户的访问请求,向Identity Selector Client发送请求令牌的信息,并与Identity Selector Client确定策略,接 收验证令牌模块的允许用户访问信息,接收用户的访问;

验证令牌模块,用于接收Identity Selector Client发来的令牌,进行验证, 验证通过之后,通知激活Identity Selector Client模块允许用户访问。

由上述实现方案可以看出,本发明所提供的基于WS协议的信息卡认证方 法及系统,具有以下的优点和特点:

1)本发明中Identity Provider和Relying Party之间使用XML签名实现了双 向认证,Identity Selector Client与Identity Provider之间的SOAP消息采用XML 签名和XML加密的加密方式,从而解决了信息传输过程中出现的机密性、完 整性、身份鉴别的问题。

2)本发明的信息卡创建和分发完全由管理员创建和分发,普通用户没有权 限对信息卡进行操作,从而保证了信息卡的安全性及保密性。

3)本发明提供的Identity Selector Client和Identity Selector Server,使用户 可以根据实际需要将某些信息卡上传到Identity Selector Server,当Identity Selector Client端没有所需要的信息卡时,用户可以选择从Identity Selector Server上下载,从而解决了信息卡只能在特定设备上登录的问题。

附图说明

图1为本发明基于WS协议的信息卡认证系统的结构示意图;

图2为本发明基于WS协议的信息卡认证方法的流程示意图。

具体实施方式

本发明的基本思想是:用户登录Relying Party,Relying Party向Identity Selector Client请求令牌并确定策略;用户使用Identity Selector Client通过身份 选择器服务器(Identity Selector Server)验证身份后登录Identity Selector Client; 验证通过,Identity Selector Client将信息卡提交给Identity Provider进行认证并 接收令牌,最后由Identity Selector Client将令牌返回给Relying Party。

其中,所述确定策略是指Relying Party与Identity Selector Client确定信息 交互时相互发送的信息格式,以及确定Identity Selector Client跟与其交互的设 备之间所发送的信息内包含的内容以及信息的格式。

下面结合附图及具体实施例对本发明再作进一步详细的说明。

本发明提供了一种基于WS协议的信息卡认证系统如图1所示,包括 Identity Provider 11、Identity Selector Client 12、Identity Selector Server 13和 Relying Party 14;其中,

Identity Provider 11,用于对Identity Selector Client 12提交的信息卡进行认 证,并向Identity Selector Client 12返回令牌;

其中,所述令牌指由Identity Provider 11对信息卡进行验证后,返回的认证 安全信息,信息卡分为两种类型:用户名/密码式信息卡和X509证书式信息卡;

所述对信息卡进行认证指,Identity Provider 11对Identity Selector Client 12 提交的经过XML签名和XML加密编写成SOAP信息的信息卡进行解析并做认 证;

Identity Selector Client 12,用于接收Relying Party 14请求令牌的信息,与 Relying Party 14确定策略,向Identity Selector Server 13请求验证登录用户身份 并接收验证结果,向Identity Provider 11提交信息卡进行认证并接收令牌,将令 牌返回给Relying Party 14;

其中,所述向Identity Selector Server 13请求验证登录用户身份为:Identity Selector Client 12向用户要求输入用户名和密码,再将用户名和密码编写成为验 证登录用户身份的请求,并发送到Identity Selector Server 13进行用户的登录身 份验证;

如果Identity Selector Server 13返回的验证结果为验证通过,则用户可以使 用输入的用户名继续进行信息卡的认证操作,如果Identity Selector Server 13返 回的验证结果为验证失败,则拒绝用户使用输入的用户名继续操作。

所述向Identity Provider 11发送信息卡为:用户在Identity Selector Client 12 查看其输入的用户名下所拥有的信息卡,选定信息卡,再将信息卡中的相关信 息编写成SOAP信息,并对该SOAP信息进行XML签名和XML加密后,发送 到Identity Provider 11;这里,所述信息卡中的相关信息由与Relying Party 14 确定策略所决定。

所述Identity Selector Client 12,自身的浏览器支持信息卡认证方式,所述 浏览器为目前可使用的大部分浏览器,比如:IE7.0以上版本、遨游浏览器等, 暂时不支持的浏览器为FireFox浏览器;

所述Identity Selector Client 12与Identity Provider 11和Relying Party 14之 间的所有交互信息,都采用XML签名和XML加密;

Identity Selector Server 13,用于接收Identity Selector Client 12请求验证登 录用户身份的信息,并向Identity Selector Client 12返回验证结果。

这里,所述Identity Selector Server 13,进一步用于对登录用户身份进行用 户名和密码是否正确的验证,如果用户名和密码为正确的则通知Identity Selector Client 12验证通过,否则通知Identity Selector Client 12验证失败。

Relying Party 14,用于向Identity Selector Client 12请求令牌,并与Identity Selector Client 12确定策略,接收Identity Selector Client 12返回的令牌。

所述接收Identity Selector Client 12返回的令牌,还包括:对令牌进行验证, 具体为Relying Party 14对接收到的令牌进行XML签名匹配,签名匹配之后进 行XML解密,解密成功后才能允许用户进行访问;所述XML解密为使用 Relying Party 14内部产生的公用密钥进行XML解密。

Relying Party 14,进一步用于接收用户的访问请求;

这里,所述Relying Party 14是实际所访问的系统的接口设备,使用本发明 所提供的系统通过Relying Party 14可接入实际访问的系统。

Identity Provider 11,还用于与所接入的系统同步数据库同步数据库,并设 置所得到的用户名的初始密码,例如将初始密码设为111111;

Identity Provider 11,还用于创建信息卡,从Identity Selector Server 13中查 询所选用户名的状态是否在线并接收用户状态信息,当用户状态为在线时,从 Identity Selector Server 13中查询所选用户名所在的Identity Selector Client 12的 IP地址并接收IP地址,根据IP地址将信息卡传送到Identity Selector Client 12, 当用户名状态为不在线时,将信息卡发到Identity Selector Server 13;

相应的,所述Identity Selector Server 13,还用于接收Identity Provider 11 的所选用户名所在的Identity Selector Client 12的是否在线的查询,并向其返回 用户状态信息,之后接收Identity Provider 11的所选用户名所在的Identity Selector Client 12的IP地址的查询并返回IP地址,当Identity Provider 11所选 用户不在线的时候,接收并保存Identity Provider 11发送的信息卡;

所述Identity Selector Client 12,还用于接收Identity Provider 11发送的信息 卡,也可以选择信息卡上传并保存在Identity Selector Server。

所述创建信息卡包括:如果要创建用户名/密码类型的信息卡,则为所选用 户名在Identity Provider 11直接创建用户名/密码类型的信息卡;如果要创建的 是X509证书类型的信息卡,则先查看Identity Provider 11中,所选用户是否有 X509证书,如果存在,则直接使用X509证书建立所选用户信息卡,如果不存 在,则在Identity Provider11为所选用户名创建X509证书,之后使用该X509 证书建立信息卡。

Identity Selector Client 12,还用于接收用户的修改信息卡密码的指令,将用 户的旧密码发送到Identity Provider 11做验证,接收验证通过信息后,将用户输 入的信息卡新密码发送给Identity Provider 11,若接收的验证结果为失败,则用 户无法修改密码;相应的,Identity Provider 11,还用于接收Identity Selector Client 12发送的旧密码做验证后向Identity Selector Client 12返回验证结果,保存 Identity Selector Client 12发送的新密码。

所述Identity Provider 11进一步包括:颁发令牌模块、同步用户模块、管理 证书模块、创建信息卡模块和分发信息卡模块;其中,

颁发令牌模块,接收Identity Selector Client 12提交的经过XML签名和 XML加密编写成SOAP信息的信息卡,对信息卡进行解析并认证,给Identity Selector Client 12返回令牌;

同步用户模块,用于向所要接入的系统获取数据库,用户从同步数据库中 选择所选的要建立信息卡的用户名,将所选用户名的用户信息发送给创建信息 卡模块;

管理证书模块,用于存储X509证书,且接收创建信息卡模块的建立证书 指令,建立X509证书,向创建信息卡模块提供X509证书;

创建信息卡模块,用于接收同步用户模块发来的用户信息,为该用户名创 建信息卡,如果要创建的是X509证书类型的信息卡,则先查看管理证书模块 中,所选用户名是否有X509证书,如果存在,则直接从管理证书模块读取X509 证书,为所选用户名建立信息卡,如果不存在,则向管理证书模块发出建立证 书的指令,读取X509证书之后使用该X509证书为所选用户名建立信息卡;如 果要创建用户名/密码类型的信息卡,则为所选用户名在创建信息卡模块直接创 建用户名/密码类型的信息卡,最后将信息卡发送给分发信息卡模块;

分发信息卡模块,用于接收并保存创建信息卡模块发送的信息卡,接收用 户为所选用户名分发信息卡的指令,从Identity Selector Server 13获取所选用户 名的状态信息,之后从Identity Selector Server 13查询所选用户名所在的Identity Selector Client 12的IP地址,根据IP地址将信息卡传送到Identity Selector Client 12,当所选用户名状态为不在线时,将信息卡发到Identity Selector Server 13。

所述Identity Selector Client 12进一步包括:注册模块,登录模块,上传信 息卡模块、下载信息卡模块、认证信息卡模块和验证信息卡模块;其中,

注册模块,用于接收登录模块的通知,向Identity Selector Server 13发送注 册信息;

这里,所述注册信息指用户所选定的用户名称下的密码、部门等信息以及 IP地址。

登录模块,用于接收Relying Party 14的请求令牌信息,要求用户输入用户 名和密码登录,将用户名和密码上传到Identity Selector Server 13进行用户身份 验证,还用于记录用户名的状态是否在线,并将状态通知给注册模块;

上传信息卡模块,用于根据用户的指令从下载信息卡模块中选取信息卡并 上传到Identity Selector Server 13;

下载信息卡模块,用于接收并存储Identity Provider 11发送的信息卡,从 Identity Selector Server 13下载用户选中的信息卡,还用于接收Identity Selector Server 13的用户身份验证结果,用户选择信息卡后将信息卡发送给验证信息卡 模块,还用于将上传信息卡模块选取的信息卡发送给上传信息卡模块;

验证信息卡模块,用于接收下载信息卡模块发送的信息卡,接收用户输入 的信息卡密码进行验证,并将验证通过的信息卡提交给认证信息卡模块,还用 于接收用户修改信息卡密码的指令,将用户的旧密码发送到Identity Provider 11 做验证,接收验证通过信息后,将用户的新密码发送给Identity Provider 11,若 接收验证失败的信息,则用户无法修改密码;

其中,所述用户输入的信息卡旧密码是为了验证用户修改信息卡密码的合 法性。

认证信息卡模块,用于将验证信息卡模块提交的信息卡中的相关信息编写 成SOAP信息,并进行XML签名和XML加密并发送给Identity Provider 11, 接收Identity Provider 11返回的令牌,最后将令牌发送给Relying Party 14。

所述Identity Selector Server 13进一步包括:注册用户模块、验证用户模块、 接收信息卡模块、发放信息卡模块;其中,

注册用户模块,用于接收Identity Selector Client 12的注册信息,记录用户 的状态,产生用户信息,给验证用户模块提供状态信息和用户信息;

其中,所述用户信息指用户所选定的用户名称下的密码、部门等信息以及 该用户名所在的Identity Selector Client 12的IP地址;状态信息指用户是否在线。

验证用户模块,用于接收Identity Provider11的用户的状态查询,从注册用 户模块获取用户名的状态信息后向Identity Provider 11返回所选用户名的状态 信息,还用于接收Identity Provider 11的用户名所使用的Identity Selector Client 12的IP地址的请求信息,从注册模块获取用户信息并从用户信息中提取出IP 地址,向Identity Provider 11返回用户名所使用的Identity Selector Client 12的 IP地址,还用于接收Identity Selector Client 12的用户名和密码对其进行验证并 向Identity Selector Client 12返回验证结果;

接收信息卡模块,用于接收并保存Identity Provider 11发送的信息卡,还用 于接收并保存Identity Selector Client 12上传的信息卡,接收发放信息卡模块的 信息卡查询指令,将用户所选信息卡发送给发放信息卡模块;

这里,所述接收并保存Identity Provider11发送的信息卡是指如果所要发放 信息卡的Identity Selector Client12不在线,那么将信息卡发放给Identity Selector Server 13的接收信息卡模块。

发放信息卡模块,用于根据Identity Selector Client12的下载请求,将信息 卡发给Identity Selector Client 12。

所述Relying Party 14进一步包括:激活Identity Selector Client模块和验证 令牌模块;其中,

激活Identity Selector Client模块,用于接收用户的访问请求,向Identity Selector Client 12发送请求令牌的信息,并与Identity Selector Client 12确定策 略;

验证令牌模块,用于接收Identity Selector Client 12发送的令牌,对令牌进 行XML签名匹配,签名匹配之后进行XML解密,解密成功后才能允许用户进 行访问;所述XML解密为使用Relying Party 14内部产生的密钥进行XML解 密验证通过之后,通知激活Identity Selector Client模块允许用户访问。

如图2所示,本发明基于WS协议的信息卡认证方法,包括以下步骤:

步骤201:用户登录Relying Party访问某类资源时,Relying Party向Identity Selector Client发送请求令牌的信息,双方确定策略。

这里,所述令牌指由Identity Provider对用户的信息卡进行验证后,返回的 认证安全信息,信息卡分为两种类型:用户名/密码式信息卡和X509证书式信 息卡。

步骤202:Identity Selector Client收到请求令牌的信息后,向用户要求输入 用户名和密码,Identity Selector Client将收到的用户输入的用户名和密码上传到 Identity Selector Server进行验证,如果验证不通过,则拒绝用户使用输入的用 户名继续操作,如果验证通过,则进入步骤203。

步骤203:用户使用输入的用户名成功登录Identity Selector Client,查看用 户名下所拥有的信息卡,选定信息卡。

这里,一个用户名下所拥有的信息卡可以有多个,且可以是不同类型的信 息卡,所述不同类型的信息卡是指:用户名/密码类型的信息卡和X509证书类 型信息卡。

所述选定信息卡还包括:用户在Identity Selector Client查看其输入的用户 名下信息卡的信息,确定使用其中一个信息卡时,输入信息卡密码,比如:所 选信息卡的类型是X509,那么输入信息卡密码后,即可确定使用该信息卡,否 则会要求用户输入信息卡密码,实现用户名/密码的认证。

其中,所述信息卡密码可在Identity Selector Client上修改,修改过程具体 包括:当用户向Identity Selector Client发出修改信息卡密码的指令后,Identity Selector Client要求用户输入信息卡旧密码;Identity Selector Client将用户输入 的旧密码后发送给Identity Provider进行验证,如果验证成功,则向Identity Selector Client返回验证通过的通知,Identity Selector Client要求用户输入新密 码,Identity Selector Client将用户输入的新密码发送到Identity Provider保存; 否则验证失败,则向Identity Selector Client返回验证失败的通知,用户无法修 改密码。

步骤204:Identity Selector Client将信息卡中的相关信息编写成SOAP信息, 并对该SOAP信息进行XML签名和XML加密后,发送到Identity Provider。

这里,所述信息卡中的相关信息由步骤201中确定的策略所决定。

步骤205:Identity Provider对进行XML签名和XML加密并编写成SOAP 信息的信息卡进行解析后做认证,认证通过后,向Identity Selector Client返回 令牌。

步骤206:Identity Selector Client接收令牌,并将令牌发送给Relying Party。

本步骤具体包括:Identity Selector Client从Identity Provider接收令牌和向 Relying Party发送令牌,所有传输信息都经过XML签名和XML加密。

步骤207:Relying Party接收令牌后,验证令牌,验证通过后允许用户访问 资源。

这里,所述验证令牌进一步包括:Relying Party对接收到的令牌进行XML 签名匹配,签名匹配之后进行XML解密,解密成功后才能允许用户进行访问; 所述XML解密为使用Relying Party内部产生的密钥进行XML解密。

上述处理过程中,在步骤201之前,该方法还包括以下步骤:

步骤a:用户以管理员身份从Identity Provider所管理的所有用户名中,选 定要为其建立信息卡的用户名。

这里,所述管理员身份指用户使用管理员的账号和密码登录;

所述所有用户名是指同步数据库后得到的所有用户名;所述同步数据库为 从所连接的系统的数据库中获取所有用户名,并设置所得到的用户名的初始密 码,例如将初始密码设为111111。

所述管理的所有用户名是Identity Provider在使用某一个管理员账号登录 时,该管理员身份下所有的用户名。

步骤b:用户以管理员身份为所选的用户名Identity Provider创建信息卡。

这里,所述创建信息卡包括:如果要创建用户名/密码类型的信息卡,则为 所选用户名在Identity Provider直接创建用户名/密码类型的信息卡;如果要创建 的是X509证书类型的信息卡,则先查看Identity Provider中,所选用户是否有 X509证书,如果存在,则直接使用X509证书建立所选用户信息卡,如果不存 在,则在Identity Provider为所选用户名创建X509证书,之后使用该X509证 书建立信息卡。

步骤c:用户以管理员身份为所选用户名分发信息卡。

这里,所述分发信息卡为向所选用户名显示在线时使用的Identity Selector Client分发信息卡,所选用户名显示为不在线时,将信息卡分发到Identity Selector Server,保存到所选用户名下。

所述步骤c进一步包括:用户以管理员身份向Identity Provider发出向所选 用户名分发信息卡的指令,Identity Provider从Identity Selector Server中查询所 选用户名的状态是否在线,当在线时,Identity Provider从Identity Selector Server 获取所选用户名所在的Identity Selector Client的IP地址,根据IP地址,Identity Provider将信息卡传送到Identity Selector Client,Identity Selector Client也可以 选择信息卡上传并保存在Identity Selector Server;当所选用户名状态为不在线 时,Identity Provider将信息卡发到Identity Selector Server进行保存,用户使用 该用户名登录Identity Selector Client后,可以从Identity Selector Server选择信 息卡并下载。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护 范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号