CN103621008B - 身份认证方法及装置 - Google Patents
身份认证方法及装置 Download PDFInfo
- Publication number
- CN103621008B CN103621008B CN201280000785.1A CN201280000785A CN103621008B CN 103621008 B CN103621008 B CN 103621008B CN 201280000785 A CN201280000785 A CN 201280000785A CN 103621008 B CN103621008 B CN 103621008B
- Authority
- CN
- China
- Prior art keywords
- digital certificate
- authentication
- unit
- browser kernel
- customer digital
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000000284 extract Substances 0.000 claims abstract description 16
- 230000000875 corresponding Effects 0.000 claims description 24
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 7
- 230000001960 triggered Effects 0.000 claims description 4
- 241000208340 Araliaceae Species 0.000 claims description 3
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 3
- 235000005035 ginseng Nutrition 0.000 claims description 3
- 235000008434 ginseng Nutrition 0.000 claims description 3
- 238000000034 method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 6
- 230000011664 signaling Effects 0.000 description 6
- 230000001429 stepping Effects 0.000 description 5
- 230000003068 static Effects 0.000 description 4
- 239000000203 mixture Substances 0.000 description 3
- 230000001808 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000001419 dependent Effects 0.000 description 2
- 238000002224 dissection Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000977 initiatory Effects 0.000 description 1
Abstract
本发明实施例提供一种身份认证方法及装置,该身份认证方法包括:浏览器内核单元根据选择的用户数字证书,生成携带有选择的用户数字证书的登录请求,将登录请求发送给应用服务器;浏览器内核单元接收应用服务器根据选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从响应中提取网页文件,对网页文件进行解析,生成网页并发送给浏览器界面单元;浏览器界面单元对网页进行显示。本发明实施例提供的身份认证方法及装置,提高了身份认证的便捷性和安全性。
Description
技术领域
本发明实施例涉及网络技术,尤其涉及一种身份认证方法及装置。
背景技术
Web(网页)应用为使用浏览器所支持的语言编写的、依赖于浏览器作为运行和展现环境的应用程序。用户在使用Web应用时,为了保证网络***资源使用的安全性,通常需要对用户进行身份认证,以使合法用户以合法的权限访问网络***的资源。
现有技术中,通常通过用户输入的用户名和密码对用户进行身份认证,用户需要记住用户名和密码,而且,密码在传输过程中容易被第三方截获,安全性不高,而且输入密码也比较麻烦,不够方便。
发明内容
本发明实施例提供一种身份认证方法及装置,以提高身份认证的便捷性和安全性。
本发明实施例提供一种身份认证方法,包括:
浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器;
所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
所述浏览器界面单元对所述网页进行显示。
本发明实施例提供一种身份认证装置,包括浏览器内核单元和浏览器界面单元;
浏览器内核单元用于根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器,以及接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
所述浏览器界面单元用于对所述网页进行显示。
由上述技术方案可知,本发明实施例提供的身份认证方法及装置,浏览器内核单元根据选择的用户数字证书,生成携带有选择的用户数字证书的登录请求,将登录请求发送给应用服务器,浏览器内核单元接收应用服务器发送的用以指示认证成功的响应,从响应中提取网页文件,对网页文件进行解析,生成网页并发送给浏览器界面单元,浏览器界面单元对网页进行显示。通过用户数字证书进行身份认证,用户无需记住用户名和密码,而且可以避免密码在传输过程中被截获,提高了身份认证的便捷性和安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的第一种身份认证方法流程图;
图2为本发明实施例提供的第二种身份认证方法流程图;
图3为本图2所示步骤204实现方法流程图;
图4为本发明实施例提供的一种身份认证信令图;
图5为本发明实施例提供的第三种身份认证方法流程图;
图6为本发明实施例提供的另一种身份认证信令图;
图7为本发明实施例提供的第四种身份认证方法流程图;
图8为本发明实施例提供的再一种身份认证信令图;
图9为本发明实施例提供的第五种身份认证方法流程图;
图10为本发明实施例提供的一种身份认证***结构示意图;
图11为本发明实施例提供的另一种身份认证***结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的第一种身份认证方法流程图。如图1所示,本实施例提供的身份认证方法具体可以应用于用户通过浏览器使用Web应用时对用户身份的认证过程,可以通过设置有浏览器的身份认证装置来执行。该身份认证装置可以为个人计算机、笔记本电脑、平板电脑和智能手机等设备。
本实施例提供的身份认证方法具体包括:
步骤101、浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器;
步骤102、所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
步骤103、所述浏览器界面单元对所述网页进行显示。
具体地,用户首先注册为Web应用的合法用户,Web应用向该用户的客户端分发相应的用户数字证书,该用户数字证书存储在身份认证装置中。具体地,用户数字证书可以利用公钥体制,即利用一对互相匹配的密钥进行加密和解密。在网络传输的过程当中,只有公钥会被传输,私钥则只保存在用户本地。因此即使截获了用户数字证书,也无法对其进行解密而获取用户数字证书的真正的数据。当用户通过多个用户身份进行注册时,每个用户身份都有各自对应的用户数字证书,可以用WebID(用户在网页中的身份标识)对用户身份进行标识,以实现用户身份的唯一性。用户数字证书中可以包括WebID、证书发布者、证书类型、证书公钥和数字签名算法等信息。当用户需要以某个用户身份进行登录时,可以选择该用户身份对应的用户数字证书,此时,该用户选择的该用户身份对应的用户数字证书即为所述选择的用户数字证书。
浏览器内核单元中具体设置有浏览器内核程序,浏览器内核单元根据该选择的用户数字证书,生成携带有选择的用户数字证书的登录请求,该登录请求用以指示请求对该用户数字证书对应的用户身份进行登录处理,该登录请求具体为HTTP(HyperText Transfer Protocol,超文本传输协议)GET(获取)请求。浏览器内核单元向该Web应用对应的应用服务器发送该登录请求,应用服务器接收该登录请求,对登录请求中的用户数字证书进行验证。
具体地,应用服务器对该用户数字证书进行验证的方式可以包括以下两种:
一种实现方式,应用服务器可以通过SPARQL(Simple Protocol and RDFQuery Language)方式向对应的认证服务器发起查询请求,查询请求可以携带有该用户数字证书中的几个关键参数,例如WebID,证书类型和证书公钥等,认证服务器根据上述几个关键参数进行查询,当认证服务器中存储的某个用户数字证书的参数与上述查询过程中携带的几个关键参数都相同,则查询结果为真,身份认证成功;当认证服务器中存储的某个用户数字证书的参数与上述查询过程中携带的几个关键参数都不相同或者不完全相同,身份认证失败。
另一种实现方式,应用服务器通过HTTPS(Hypertext Transfer Protocolover Secure Socket Layer,安全传输的HTTP消息)GET请求获取认证服务器上保存的与该webID对用的用户数字证书。应用服务器将接收到的登录请求中携带的用户数字证书和从认证服务器上获取到的用户数字证书进行匹配,若两个用户数字证书中的参数全部相同,即匹配成功,则用户身份认证成功,若两个用户数字证书中的参数全部不相同或者不完全相同,则身份认证失败。
若用户身份认证成功,则向浏览器内核单元发送用以指示认证成功的响应,该响应中携带有与该Web应用对应的网页文件,该指示认证成功的响应具体可以为HTTP 200响应。浏览器内核单元从该响应中提取网页文件,对该网页文件进行解析,执行该网页文件,并进行相应的渲染,将最终的网页通过浏览器界面单元进行显示,以为用户提供相应的Web应用。网页文件具体可以包括超文本标记语言(Hypertext Markup Language,简称HTML)文件、javascript脚本文件和级联样式表(Cascading Style Sheet,简称CSS)文件等。浏览器界面单元中设置有浏览器界面程序。当用户身份认证失败时,应用服务器也向浏览器内核单元返回用以指示认证失败的响应,该指示认证失败的响应具体可以为HTTP 403响应。
本实施例提供的身份认证方法,浏览器内核单元根据选择的用户数字证书,生成携带有选择的用户数字证书的登录请求,将登录请求发送给应用服务器,浏览器内核单元接收应用服务器发送的用以指示认证成功的响应,从响应中提取网页文件,对网页文件进行解析,生成网页并发送给浏览器界面单元,浏览器界面单元对网页进行显示。通过用户数字证书进行身份认证,用户无需记住用户名和密码,而且可以避免密码在传输过程中被截获,提高了身份认证的便捷性和安全性。
图2为本发明实施例提供的第二种身份认证方法流程图。如图2所示,在本实施例中,在图1所述实施例的步骤101,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求之前,所述方法进一步还可以包括如下步骤:
步骤201、所述浏览器内核单元检测登录触发事件,将所述登录触发事件发送给Web应用单元;
步骤202、所述Web应用单元根据所述登录触发事件确定登录触发操作对应的网址,将所述网址发送给所述浏览器内核单元;
步骤203、所述浏览器内核单元根据所述Web应用单元发送的所述网址向所述应用服务器发送访问请求;
步骤204、所述浏览器内核单元接收所述应用服务器根据所述访问请求所返回的需要身份认证信息,并且根据所述需要身份认证指示信息确定所述选择的用户数字证书。
具体地,Web应用单元中设置有Web应用。在一种应用场景下,用户在通过浏览器使用Web应用时,在访问到的网络资源不需要进行身份认证时,并不需要登录。当用户访问到的网络资源需要进行身份认证时,才需要用户提供用户数字证书以进行身份认证。
登录触发事件具体为触发登录操作的事件,例如,用户在浏览器界面单元所展示的网页中点击包含超链接的文字、按钮或图片时,会产生用户点击事件,点击事件中具体携带有用户所点击的文字、按钮或图片的标识,浏览器界面单元将该用户点击事件上报给浏览器内核单元,该用户点击事件可以作为登录触发事件,此时,触发登录操作可以是点击操作,触发登录操作所对应的网址可以是该点击操作所链接的网址。登录触发事件还可以为网页自动跳转、视频播放到一定长度或用户执行拷贝操作等等。浏览器内核单元检测到该登录触发事件时,将登录触发事件发送给Web应用单元。Web应用单元根据登录触发事件确定登录触发操作对应的网址,将该网址发送给浏览器内核单元,浏览器内核单元生成携带有该网址的访问请求,并将访问请求发送给应用服务器。访问请求具体可以为HTTP GET请求。应用服务器根据访问请求确定用户访问的网络资源的安全性、重要性和隐私性,若判断获知用户请求访问的网络资源需要对用户进行身份认证,则向浏览器内核单元发送需要身份认证指示信息。浏览器内核单元根据该需要身份认证指示信息确定选择的用户数字证书。
该需要身份认证指示信息中还可以携带有身份认证限定参数,该身份认证限定参数可以包括以下内容:
Issuer:发行机构,即证书发布者;
Certificate_types:证书类型,可以是RSA key(RSA公钥加密算法)、DSAkey(Digital Signature Algorithm key,DSA公钥加密算法)、RSA static DH(RSA静态Diffie-Hellman公钥加密算法)key或DSA static DH key(DSA静态Diffie-Hellman公钥加密算法);
Signature Algorithm:签名算法;
Public Key Algorithm:公钥算法。
浏览器内核单元可以根据该身份认证限定参数对用户数字证书进行筛选,以确定符合该身份认证限定参数的用户数字证书。
图3为图2所示步骤204实现方法流程图。如图3所示,在本实施例中,在本实施例中,图2所述实施例的步骤204,所述浏览器内核单元接收所述应用服务器根据所述访问请求所返回的需要身份认证信息,并且根据所述需要身份认证指示信息确定所述选择的用户数字证书,具体可以包括如下步骤,如图3所示:
步骤2041、所述浏览器内核单元根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元;
步骤2042、所述Web应用单元接收所述需要身份认证事件,调用所述浏览器内核单元的认证对象的登录接口;
步骤2043、所述浏览器内核单元获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。
具体地,上述需要身份认证指示信息具体可以为安全传输层协议(Transport Layer Security,简称TLS)请求,浏览器内核单元接收该需要身份认证指示信息,若该需要身份认证指示信息中携带有身份认证限定参数,则从该需要身份认证指示信息解析出身份认证限定参数。检查Web应用单元是否预先建立了对用户身份认证事件的监听,如果有,则浏览器内核单元向Web应用单元上报需要身份认证事件,该需要身份认证事件中可以携带有身份认证限定参数。
Web应用单元接收需要身份认证事件,确定需要对用户进行身份认证。判断浏览器DOM(Document Object Model,文档对象模型)中window对象是否包括登录功能子对象,该登录功能子对象具体可以为webIDAthentication,如果检测到该window.webIDAthentication,调用浏览器内核单元中提供认证对象的登录接口,该认证对象具体可以为webIDAthentication对象,若认证对象未创建,可以先创建该认证对象,该登录接口具体为doLogin接口。若存在身份认证限定参数,则可以将身份认证限定参数作为参数通过该登录接口传入浏览器内核单元。Web应用单元也可以根据Web应用内部逻辑检测是否需要对用户进行身份认证。
doLogin接口具体可以通过以下接口函数实现:
浏览器内核单元接收到webIDAthentication::doLogin接口调用时,根据预设的用户配置或***策略,检查浏览器内核单元是否需要自动为用户选择某个用户数字证书用于此次身份认证。用户配置过程具体可以为浏览器内核单元根据用户配置将在需要用户数字证书进行身份认证时,自动为用户选择预先设置的用户数字证书,或者提示用户手动选择。当用户没有进行配置时,浏览器内核单元可以根据***策略,例如当本地存储的用户数字证书只有一个时,将该用户数字证书作为默认的用户数字证书进行身份认证,当本地存储的用户数字证书为多个时,可以将所有的用户数字证书显示给用户,以便用户选择。
如果需要进行自动选择,浏览器内核单元获取默认的用户数字证书,若在doLogin接口被调用时传入了身份认证限定参数,则还可以检查该默认的用户数字证书是否符合身份认证限定参数的要求。确认使用该默认的用户数字证书进行此次身份认证,不再需要通过数字证书管理器界面与用户进行显式交互,可以极大地缩短整体流程的处理时间,提高处理效率。
如果不需要进行自动选择,浏览器内核单元获取多个待选择的用户数字证书,形成用户数字证书列表。若传入了身份认证限定参数,还可以根据身份认证限定参数对所管理的所有的用户数字证书进行检查、过滤,得到可用的用户数字证书列表。并弹出数字证书管理器界面,列出所有可用的用户数字证书,提示用户从其中选择某个用户数字证书用于此次网站访问的身份认证。这种处理方式可方便用户为对不同Web应用使用不同用户身份进行登录。
在具体实现过程中,上述数字证书管理器界面可以是浏览器内核单元内部实现的数字证书管理器的操作界面,如果浏览器内核单元自行实现数字证书管理器,浏览器内核单元需要通过操作***提供的CAPICOM(Cryptographic API Component Object Model,密码接口组件对像模型)接口,读取本机所保存的数字证书并在数字证书管理器界面中进行展示,在这种实现方式下,浏览器可以在启动时就进行用户数字证书的读取,也可以在处理某个具体应用和页面时,触发用户数字证书的读取,以提供更高的处理效率。数字证书管理器也可以为操作***所提供的数字证书管理器。
如果Web应用单元预先建立对用户数字证书选择事件的监听,浏览器内核单元向Web应用上报数字证书选择事件,并通过数字证书选择事件上报接口将用户所选择的用户数字证书作为参数传递给Web应用层。Web应用单元指示浏览器内核单元向应用服务器发送登录请求。
在步骤204之后,执行步骤205、浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器;
步骤206、所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
步骤207、所述浏览器界面单元对所述网页进行显示。
本实施例中的步骤205-207的具体实现可以参图1所述实施例的步骤101-103的相关描述。
在本实施例的步骤206中,所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应之后,所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步还可以包括:
所述浏览器内核单元从所述响应中解析出认证成功的认证结果,将所述认证结果通过认证结果事件或回调函数发送给所述Web应用单元。
浏览器内核单元从响应中解析出认证成功的认证结果,将该认证结果通过认证结果事件上报或调用回调函数的方式传递给Web应用单元。如果Web应用单元预先建立对认证结果事件的监听,浏览器内核单元通过认证结果事件上报方式将认证结果通知给Web应用单元,无需传递函数地址,具有较高的运行效率。如果Web应用单元预先实现了回调接口onLogin,浏览器内核单元可以通过调用该回调函数onLogin方式,将认证结果传递给Web应用单元。
当然,本步骤207的具体过程和图1所述实施例的步骤103类似,即步骤103的具体实现可以参考该步骤207。
图4为本发明实施例提供的一种身份认证信令图。以下结合图4对本实施例的身份认证方法做详细说明。
401、用户在浏览器界面单元显示的网页中点击包含超链接的文字、按钮或图片;
402、浏览器界面单元向浏览器内核单元上报用户点击事件;
403、浏览器内核单元检测到该用户点击事件,将该用户点击事件作为登录触发事件上报给Web应用单元;
404、Web应用单元确定登录触发事件所对应的网址,将该网址发送给浏览器内核单元;
405、浏览器内核单元根据该网址向应用服务器发送访问请求;
406、应用服务器确定需要对用户进行身份认证,向浏览器内核单元发送需要身份认证指示信息,该身份认证指示信息中可以携带有身份认证限定参数;
407、浏览器内核单元根据该需要身份认证指示信息生成需要身份认证事件,将需要身份认证事件上报给Web应用单元;
408、Web应用单元根据该需要身份认证事件,判断浏览器DOM中window对象是否包括登录功能子对象,若检测到该登录功能子对象,则执行409;
409、调用浏览器内核单元中提供的认证对象的登录接口;
410、浏览器内核单元检查是否需要自动为用户选择数字证书,若不需要自动选择,调用数字证书管理界面,用户通过浏览器界面单元中显示的用户数字证书列表选择用户数字证书,将选择指示信息发送给浏览器内核单元;
411、浏览器内核单元向Web应用单元上报数字证书选择事件;
412、Web应用单元根据该数字证书选择事件将修改的登录参数发送给浏览器内核单元;
413、浏览器内核单元向Web应用单元返回修改登录参数响应;
414、浏览器内核单元向应用服务器发送登录请求,该登录请求中携带有选择的用户数字证书;
415、应用服务器向认证服务器以SPARQL查询用户身份,并接收查询结果,判断用户身份认证是否成功,若成功,则执行416,若失败,则向浏览器内核单元发送身份认证失败响应(图中未示出);
416、应用服务器向浏览器内核单元返回身份认证成功响应,该身份认证成功响应中携带有网页文件,该网页文件具体为html/css/js文件;
417、浏览器内核单元通过回调接口将登录结果传递给Web应用单元;
418、浏览器内核单元解析该网页文件;
419、浏览器界面单元对解析出的网页进行显示。
在上述实现方式中,浏览器内核单元对应用服务器发送的需要身份认证指示信息和响应均进行解析处理,可以降低Web应用单元的处理复杂度。当然,对应用服务器发送的需要身份认证指示信息和响应进行解析的处理流程也可以由Web应用单元来实现。
图5为本发明实施例提供的第三种身份认证方法流程图。如图5所示,则在另一种实现方式中,该实施例的步骤501-503的具体实现可以分别参照图2的步骤201-203,在此不再赘述。
该实施例也包括图2所述实施例的步骤204,即所述浏览器内核单元根据所述需要身份认证指示信息确定选择的所述用户数字证书,具体可以包括如下步骤:
步骤504、所述浏览器内核单元根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元;
步骤505、所述Web应用单元根据所述需要身份认证指示信息,调用所述浏览器内核单元的数字证书管理对象的数字证书选择接口;
步骤506、所述浏览器内核单元获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。
具体地,需要身份认证指示信息具体为HTTP响应。浏览器内核单元接收该需要身份认证指示信息,根据该需要身份认证指示信息将需要身份认证事件上报给Web应用单元,具体可以通过调用所述Web应用单元的超文本传输协议请求接口,将该需要身份认证指示信息传递给所述Web应用单元,超文本传输协议请求接口具体为Web应用程序架构AJAX中的XMLHttpRequest接口。Web应用单元根据该需要身份认证指示信息确定需要对用户进行身份认证,若存在身份认证限定参数,Web应用单元还可以从需要身份认证指示信息解析出身份认证限定参数。
Web应用单元web应用判断浏览器DOM中window对象是否包括数字证书管理子对象,该数字证书管理子对象具体为digitalCertificateMagmt,如果检测到该window.digitalCertificateMagmt,则创建数字证书管理对象,即digitalCertificateMagmt对象,调用浏览器内核单元提供的数字证书选择接口,若存在身份认证限定参数,则还可以将身份认证限定参数作为参数通过该登录接口传入浏览器内核单元,该数字证书选择接口具体为selectDC接口。Web应用单元也可以根据Web应用内部逻辑检测是否需要对用户进行身份认证。selectDC接口具体可以通过以下接口函数实现:
浏览器内核单元接收到digitalCertificateMagmt::selectDC接口调用,根据预设的用户配置或***策略,检查浏览器内核单元是否需要自动为用户选择某个数字证书用于此次身份认证。
如果需要进行自动选择,浏览器内核单元获取默认的用户数字证书,若在selectDC接口被调用时传入了身份认证限定参数,则还可以检查该默认的用户数字证书是否符合身份认证限定参数的要求。确认使用该默认的用户数字证书进行此次身份认证,不再需要通过数字证书管理器界面与用户进行显式交互,可以极大地缩短整体流程的处理时间,提高处理效率。
如果不需要进行自动选择,浏览器内核单元获取多个待选择的用户数字证书,形成用户数字证书列表。若传入了身份认证限定参数,还可以根据身份认证限定参数对所管理的所有的用户数字证书进行检查、过滤,得到可用的用户数字证书列表。并弹出数字证书管理器界面,列出所有可用的用户数字证书,提示用户从其中选择某个用户数字数据证书用于此次网站访问的身份认证。选择指示信息即为用户输入的用于选择某个用户数字证书的指示信息。这种处理方式可方便用户为对不同Web应用使用不同用户身份进行登录。
在具体实现过程中,上述数字证书管理器界面可以是浏览器内核单元内部实现的数字证书管理器的操作界面,如果浏览器内核单元自行实现数字证书管理器,浏览器内核单元需要通过操作***提供的CAPICOM接口,读取本机所保存的数字证书并在数字证书管理器界面中进行展示,在这种实现方式下,浏览器可以在启动时就进行用户数字证书的读取,也可以在处理某个具体应用和页面时,触发用户数字证书的读取,以提供更高的处理效率。数字证书管理器也可以为操作***所提供的数字证书管理器。
如果Web应用单元预先建立对用户数字证书选择事件的监听,浏览器内核单元向Web应用上报数字证书选择事件,并通过数字证书选择事件上报接口将用户所选择的用户数字证书作为参数传递给Web应用层。Web应用单元指示浏览器内核单元向应用服务器发送登录请求。
图5所示实施例中的步骤501-503可以参照图2所示实施例中的步骤201-203,以及图5所述实施例的步骤507-509可以参照图2所示实施例中的步骤205-207的相关描述,在此不再赘述。
在本实施例的步骤508中,所述浏览器内核单元接收所述应用服务器根据所述选择的用户数字证书进行身份认证之后所返回的指示认证成功的响应之后,所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步还可以包括:
所述浏览器内核单元通过调用所述Web应用单元的超文本传输协议请求接口,将所述响应发送给所述Web应用单元;
所述Web应用单元从所述响应中解析出认证成功的认证结果。
超文本传输协议请求接口具体为Web应用程序架构AJAX(AsynchronousJavaScript and XML)中的XMLHttpRequest接口。浏览器内核单元通过调用该超文本传输协议请求接口,将应用服务器发送的响应发送给所述Web应用单元,Web应用单元从响应中解析出认证成功的认证结果。
图6为本发明实施例提供的另一种身份认证信令图。以下结合图6对本实施例的身份认证方法做详细说明。
601、用户在浏览器界面单元显示的网页中点击包含超链接的文字、按钮或图片;
602、浏览器界面单元向浏览器内核单元上报用户点击事件;
603、浏览器内核单元检测到该用户点击事件,将该用户点击事件作为登录触发事件上报给Web应用单元;
604、Web应用单元确定登录触发事件所对应的网址,将该网址发送给浏览器内核单元;
605、浏览器内核单元根据该网址向应用服务器发送访问请求;
606、应用服务器确定需要对用户进行身份认证,向浏览器内核单元发送需要身份认证指示信息,该身份认证指示信息中可以携带有身份认证限定参数;
607、浏览器内核单元根据该需要身份认证指示信息生成需要身份认证事件,将需要身份认证事件上报给Web应用单元;
608、Web应用单元根据该需要身份认证事件,判断浏览器DOM中window对象是否包括数字证书管理子对象,若检测到该数字证书管理子对象,则执行609;
609、调用浏览器内核单元中提供的数字证书选择接口;
610、浏览器内核单元检查是否需要自动为用户选择数字证书,若不需要自动选择,调用数字证书管理界面,用户通过浏览器界面单元中显示的用户数字证书列表选择用户数字证书,将选择指示信息发送给浏览器内核单元;
611、浏览器内核单元通过回调接口向Web应用单元传输用户数字证书选择结果;
612、Web应用单元调用超文本传输协议请求接口发送登录请求给浏览器单核单元;
613、浏览器内核单元向应用服务器发送登录请求,该登录请求中携带有选择的用户数字证书;
614、应用服务器从认证服务器获取该用户的用户数字证书,接收认证服务器发送的用户数字证书,进行用户数字证书匹配,若匹配成功,则执行615,若匹配失败,则向浏览器内核单元返回HTTP身份认证失败响应(图中未示出);
615、应用服务器向浏览器内核单元返回HTTP身份认证成功响应,该身份认证成功响应中携带有网页文件,该网页文件具体为html/css/js文件;
616、浏览器内核单元通过超文本传输协议响应接口将身份认证成功响应传递给Web应用单元;
617、浏览器内核单元解析该网页文件;
618、浏览器界面单元对解析出的网页进行显示。
图7为本发明实施例提供的第四种身份认证方法流程图。如图7所示,在另一种应用场景下,用户在使用Web应用时登录,在图1所述实例的步骤101,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器之前,所述方法进一步还可以包括如下步骤:
步骤701、所述浏览器界面单元接收待访问的网址信息和身份标识,将所述待访问的网址信息和所述身份标识发送给所述浏览器内核单元;
图1所述实施例中的步骤101,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器,在本实施例中可以具体包括:
所述浏览器内核单元根据所述身份标识确定所述选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给所述应用服务器,即本实施例的步骤702。
用户在浏览器界面单元显示的地址栏中输入一个网址,该网址即为待访问的网址信息,浏览器界面单元为用户提供WebID列表,用户从WebID列表中选择一个WebID,即该用户希望用该WebID所对应的用户身份访问该网址所对应的网页,该WebID即为身份标识。浏览器界面单元将该待访问的网址信息和身份标识发送给浏览器内核单元。
浏览器内核单元可以通过操作***提供的CAPICOM接口,提供给用户身份选择界面,以选择本机所保存的数字证书。该身份选择界面也可以为操作***所提供的数字证书管理器对应的数字证书管理器界面。
浏览器内核单元也根据用户配置或***策略,浏览器内核单元自动为用户选择某个用户身份用于此次身份认证,不再需要通过可用WebID列表或数字证书管理器界面与用户进行显式交互,可以极大地缩短整体流程的处理时间,提高处理效率。
本实施例的步骤703和704可以参照图1所述实施例的步骤102和103的相关描述,在此不再赘述。
图8为本发明实施例提供的再一种身份认证信令图。以下结合图8对本实施例的身份认证方法做详细说明。
801、浏览器界面单元向浏览器内核单元发送用户输入的网址和WebID;
802、浏览器内核单元根据该WebID确定用户数字证书,将携带有该用户数字证书的登录请求发送给应用服务器,具体地,浏览器内核单元可以对网址和时间戳用用户私钥进行加密,并在登录请求中作为参数携带;
803、应用服务器从认证服务器获取该用户的用户数字证书,接收认证服务器发送的用户数字证书,进行用户数字证书匹配,若匹配成功,则执行804,若匹配失败,则向浏览器内核单元返回身份认证失败响应(图中未示出),具体地,应用服务器收到登录请求后,使用用户公钥进行解密,如果解密得到的网址与用户正在访问的网址相匹配,则可确认该登录请求确实由浏览器代理用户发出,否则可能由第三方通过消息截获手段进行伪造;
804、应用服务器向浏览器内核单元返回身份认证成功响应,该身份认证成功响应中携带有网页文件,该网页文件具体为html/css/js文件;
805、浏览器内核单元解析该网页文件;
806、浏览器界面单元对解析出的网页进行显示。
用户对Web应用的使用过程中,可以对用户状态进行检测,以避免对已经登录的用户重复进行身份认证。
图9为本发明实施例提供的第五种身份认证方法流程图。如图9所示,具体地,本实施例与图1所述实施例不同之处在于,在图1所述实施例的步骤101,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求之前,本实施例所述方法还可以包括如下步骤:
步骤901、所述浏览器内核单元检测登录触发事件,将所述登录触发事件发送给Web应用单元;
步骤902、所述Web应用单元根据所述登录触发事件确定登录触发操作对应的网址,若判断获知对所述网址的访问需要身份认证,则获取用户状态,若所述用户状态为未登录状态,则调用所述浏览器内核单元的认证对象的登录接口;
步骤903、所述浏览器内核单元获取默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或所述浏览器内核单元获取多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书确定一个为所述选择的用户数字证书。
可以由Web应用单元来判断是否需要对用户进行身份认证。Web应用单元根据登录触发事件确定登录触发操作对应的网址,该登录触发事件具体可以参照上述实施例中的登录触发事件的相关描述,此不再赘述。Web应用单元根据该网址确定用户访问的网络资源的安全性、重要性和隐私性。若判断获知对网址的访问需要身份认证,则进一步获取用户状态,用户状态具体可以为登录状态或未登录状态。若用户状态为未登录状态,则Web应用单元调用浏览器内核单元的认证对象的登录接口,登录接口调用过程以及浏览器内核单元确定选择的用户数字证书的过程可以参照上述实施例的相关描述,此不再赘述。
本实施例的步骤904-906的相关描述可以参照图1所述实施例中的步骤101-103,在此不再赘述。
若步骤902中,获取到的用户状态为登录状态,则在步骤905中,所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步包括:
所述Web应用单元将所述网址发送给所述浏览器内核单元;
所述浏览器内核单元根据所述网址向所述应用服务器发送访问请求,接收所述应用服务器根据所述访问请求返回的响应。
具体地,若用户已经登录,则在用户后续对网页的访问过程中,可以不用进行身份认证,Web应用单元直接将网址发送给浏览器内核单元,以使浏览器内核单元根据该网址向应用服务器发送访问请求,应用服务器接收到该访问请求后,向浏览器内核单元返回携带有请求的网页文件的响应。
在本实施例中,所述Web应用单元获取所述选择的用户数字证书所指示的用户的用户状态,具体可以包括如下步骤:
所述Web应用单元通过调用所述浏览器内核单元的用户登录状态查询接口获取所述选择的用户数字证书所指示的用户的用户状态。
Web应用单元可以调用浏览器内核提供的用户登录状态查询接口webIDAthentication::doQueryUserstatus,通过参数指定要查询的WebID,获取该WebID当前用户状态。Web应用单元可以预先实现了回调接口onQueryUserstatus,则浏览器内核单元可以通过调用该回调函数onQueryUserstatus方式将用户状态通知给Web应用单元。如果用户已经登录,浏览器内核单元返回用户状态为online。如果用户尚未登录,浏览器内核单元返回用户状态为offline。Web应用单元还可以预先建立对用户当前登录状态事件的监听,浏览器内核单元通过事件上报方式将用户状态通知给Web应用单元。
在本实施例中,用户可以通过点击“登出”按钮或关闭Web应用对应的网页实现登出。具体地,Web应用单元调用浏览器内核单元提供的用户登出webIDAthentication::doLogout接口,通过参数指定要登出的WebID。浏览器内核单元向应用服务器发出HTTP请求用于用户登出,并接收应用服务器返回的HTTP响应。浏览器内核单元从HTTP响应中解析出用户登出的结果,Web应用单元可以预先建立对用户登出事件的监听,浏览器内核单元通过事件上报方式将用户登出的结果通知给Web应用,Web应用单元还可以预先实现了回调接口onLogout,浏览器内核单元通过调用回调函数onLogout方式将用户登出的结果通知给Web应用。
图10为本发明实施例提供的一种身份认证***结构示意图。如图10所示,本实施例提供的身份认证***具体包括身份认证装置1001和应用服务器1002,该身份认证装置1001具体可以实现本发明任意实施例提供的身份认证方法的各个流程,此不再赘述。本实施例提供的身份认证装置1001具体包括浏览器内核单元10011和浏览器界面单元10012。浏览器内核单元10011用于根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器1002,以及接收所述应用服务器1002根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元10012。所述浏览器界面单元10012用于对所述网页进行显示。
本实施例提供的身份认证装置1001,浏览器内核单元10011根据选择的用户数字证书,生成携带有选择的用户数字证书的登录请求,将登录请求发送给应用服务器1002,浏览器内核单元10011接收应用服务器1002发送的用以指示认证成功的响应,从响应中提取网页文件,对网页文件进行解析,生成网页并发送给浏览器界面单元10012,浏览器界面单元10012对网页进行显示。通过用户数字证书进行身份认证,用户无需记住用户名和密码,而且可以避免密码在传输过程中被截获,提高了身份认证的便捷性和安全性。
图11为本发明实施例提供的另一种身份认证***结构示意图。如图11所示,本实施例提供的身份认证***具体包括身份认证装置111和应用服务器112,本实施例提供的身份认证装置111具体包括浏览器内核单元1111和浏览器界面单元1112。在一种应用场景下,用户在通过浏览器使用Web应用时,在访问到的网络资源不需要进行身份认证时,并不需要登录。当用户访问到的网络资源需要进行身份认证时,才需要用户提供用户数字证书以进行身份认证。用户在浏览器界面单元1112所展示的网页中点击包含超链接的文字、按钮或图片时,会产生用户点击事件。在本实施例中,与图10所述实施例不同的是,本实施例中的身份认证装置111进一步包括:Web应用单元1113。所述浏览器界面单元1112进一步用于检测登录触发事件,将所述登录触发事件发送给Web应用单元1113,以及根据所述Web应用单元1113发送的所述网址向所述应用服务器112发送访问请求,接收所述应用服务器112根据所述访问请求所返回的需要身份认证信息,并且根据所述需要身份认证指示信息确定所述选择的用户数字证书。所述Web应用单元1113用于根据所述登录触发事件确定登录触发操作对应的网址,将所述网址发送给所述浏览器内核单元1111。
在本实施例中,所述浏览器内核单元1111进一步用于根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元1113,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或所述浏览器内核单元1111获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。所述Web应用单元1113进一步用于接收所述需要身份认证事件,调用所述浏览器内核单元11的认证对象的登录接口。
在本实施例中,所述浏览器内核单元1111进一步用于从所述响应中解析出认证成功的认证结果,将所述认证结果通过认证结果事件或回调函数发送给所述Web应用单元1113。
在上述实现方式中,浏览器内核单元1111对应用服务器112发送的需要身份认证指示信息和响应均进行解析处理,可以降低Web应用单元1113的处理复杂度。当然,对应用服务器112发送的需要身份认证指示信息和响应进行解析的处理流程也可以由Web应用单元1113来实现。则在另一种实现方式中:
所述浏览器内核单元1111进一步用于根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元1113,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元1111获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。所述Web应用单元1113进一步用于根据所述需要身份认证指示信息调用所述浏览器内核单元1111的数字证书管理对象的数字证书选择接口。
在本实施例中,所述浏览器内核单元1111进一步用于通过调用所述Web应用单元1113的超文本传输协议请求接口,将所述响应发送给所述Web应用单元1113。所述Web应用单元1113进一步用于从所述响应中解析出认证成功的认证结果。
在另一种应用场景下,用户在使用Web应用时登录,用户在浏览器界面单元1112显示的地址栏中输入一个网址,该网址即为待访问的网址信息,浏览器界面单元1112为用户提供WebID列表,以供用户进行WebID的选择。在本实施例中,所述浏览器界面单元1112进一步用于接收待访问的网址信息和身份标识,将所述待访问的网址信息和所述身份标识发送给所述浏览器内核单元1111。所述浏览器内核单元1111进一步用于根据所述身份标识确定所述选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给所述应用服务器112。
用户对Web应用的使用过程中,可以对用户状态进行检测,以避免重复进行身份认证。在本实施例中,所述浏览器内核单元1111进一步用于检测登录触发事件,将所述登录触发事件发送给Web应用单元1113,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或所述浏览器内核单元1111获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。所述Web应用单元1113进一步用于根据所述登录触发事件确定登录触发操作对应的网址,若判断获知对所述网址的访问需要身份认证,则获取所述选择的用户数字证书所指示的用户的用户状态,若所述用户状态为未登录状态,则调用所述浏览器内核单元1111的认证对象的登录接口。
在本实施例中,若所述用户状态为登录状态,则所述Web应用单元1113进一步用于将所述网址发送给所述浏览器内核单元1111。所述浏览器内核单元1111进一步用于根据所述网址向所述应用服务器112发送访问请求,接收所述应用服务器112根据所述访问请求返回的响应。
在本实施例中,所述Web应用单元1113进一步用于通过调用所述浏览器内核单元1111的用户登录状态查询接口获取所述选择的用户数字证书所指示的用户的用户状态。
本实施例提供的身份认证装置具体可以为个人计算机、笔记本电脑、平板电脑和智能手机等设置有处理器和存储器的设备,该身份认证装置上设置有浏览器和应用程序。浏览器和应用程序的相关指令均存储在存储器中,处理器调用存储器中的相关指令并执行,以生成最终的显示界面通过身份认证装置的显示器进行显示,分别实现浏览器内核单元、浏览器显示单元和Web应用单元的功能。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (18)
1.一种身份认证方法,其特征在于,包括:
浏览器内核单元检测登录触发事件,将所述登录触发事件发送给Web应用单元,以使所述Web应用单元根据所述登录触发事件确定登录触发操作对应的网址,将所述网址发送给所述浏览器内核单元;
所述浏览器内核单元根据所述Web应用单元发送的所述网址向所述应用服务器发送访问请求;
所述浏览器内核单元接收所述应用服务器根据所述访问请求所返回的需要身份认证指示消息,所述身份认证指示信息中携带有身份认证限定参数,根据所述身份认证限定参数对用户数字证书进行筛选,以选择符合所述身份认证限定参数的用户数字证书,所述身份认证限定参数包括至少一种以下参数:证书发布者、证书类型、签名算法或公钥算法;
浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器;
所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
所述浏览器界面单元对所述网页进行显示。
2.根据权利要求1所述的身份认证方法,其特征在于,所述浏览器内核单元接收所述应用服务器根据所述访问请求所返回的需要身份认证信息,并且根据所述需要身份认证指示信息确定选择的所述用户数字证书,包括:
所述浏览器内核单元根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元;
所述Web应用单元接收所述需要身份认证事件,调用所述浏览器内核单元的认证对象的登录接口;
所述浏览器内核单元获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。
3.根据权利要求1所述的身份认证方法,其特征在于,所述浏览器内核单元接收所述应用服务器根据所述访问请求所返回的需要身份认证信息,并且根据所述需要身份认证指示信息确定选择的所述用户数字证书,包括:
所述浏览器内核单元根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元;
所述Web应用单元根据所述需要身份认证指示信息,调用所述浏览器内核单元的数字证书管理对象的数字证书选择接口;
所述浏览器内核单元获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。
4.根据权利要求1或2所述的身份认证方法,其特征在于,所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应之后,所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步包括:
所述浏览器内核单元从所述响应中解析出认证成功的认证结果,将所述认证结果通过认证结果事件或回调函数发送给所述Web应用单元。
5.根据权利要求1或3所述的身份认证方法,其特征在于,所述浏览器内核单元接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应之后,所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步包括:
所述浏览器内核单元通过调用所述Web应用单元的超文本传输协议请求接口,将所述响应发送给所述Web应用单元;
所述Web应用单元从所述响应中解析出认证成功的认证结果。
6.根据权利要求1所述的身份认证方法,其特征在于,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器之前,所述方法进一步包括:所述浏览器界面单元接收待访问的网址信息和身份标识,将所述待访问的网址信息和所述身份标识发送给所述浏览器内核单元;
所述浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器,包括:
所述浏览器内核单元根据所述身份标识确定所述选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给所述应用服务器。
7.根据权利要求1所述的身份认证方法,其特征在于,浏览器内核单元根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求之前,所述方法进一步包括:
所述浏览器内核单元检测登录触发事件,将所述登录触发事件发送给Web应用单元;
所述Web应用单元根据所述登录触发事件确定登录触发操作对应的网址,若判断获知对所述网址的访问需要身份认证,则获取所述选择的用户数字证书所指示的用户的用户状态,若所述用户状态为未登录状态,则调用所述浏览器内核单元的认证对象的登录接口;
所述浏览器内核单元获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书。
8.根据权利要求7所述的身份认证方法,其特征在于,若所述用户状态为登录状态,则所述浏览器内核单元从所述响应中提取网页文件之前,所述方法进一步包括:
所述Web应用单元将所述网址发送给所述浏览器内核单元;
所述浏览器内核单元根据所述网址向所述应用服务器发送访问请求,接收所述应用服务器根据所述访问请求返回的响应。
9.根据权利要求7所述的身份认证方法,其特征在于,所述Web应用单元获取所述选择的用户数字证书所指示的用户的用户状态,包括:
所述Web应用单元通过调用所述浏览器内核单元的用户登录状态查询接口获取所述选择的用户数字证书所指示的用户的用户状态。
10.一种身份认证装置,其特征在于:包括Web应用单元、浏览器内核单元和浏览器界面单元;
浏览器内核单元用于检测登录触发事件,将所述登录触发事件发送给Web应用单元;
所述Web应用单元用于根据所述登录触发事件确定登录触发操作对应的网址,将所述网址发送给所述浏览器内核单元;
所述浏览器内核单元根据所述Web应用单元发送的网址向所述应用服务器发送访问请求,接收所述应用服务器根据所述访问请求所返回的需要身份认证指示消息,所述身份认证指示信息中携带有身份认证限定参数,根据所述身份认证限定参数对用户数字证书进行筛选,以选择符合所述身份认证限定参数的用户数字证书,所述身份认证限定参数包括至少一种以下参数:证书发布者、证书类型、签名算法或公钥算法;
所述浏览器内核单元用于根据选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给应用服务器,以及接收所述应用服务器根据所述选择的数字证书进行身份认证之后所返回的指示认证成功的响应,从所述响应中提取网页文件,对所述网页文件进行解析,生成网页并发送给浏览器界面单元;
所述浏览器界面单元用于对所述网页进行显示。
11.根据权利要求10所述的身份认证装置,其特征在于:
所述浏览器内核单元进一步用于根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元进一步获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书;
所述Web应用单元进一步用于接收所述需要身份认证事件,调用所述浏览器内核单元的认证对象的登录接口。
12.根据权利要求10所述的身份认证装置,其特征在于:
所述浏览器内核单元进一步根据所述需要身份认证指示信息生成需要身份认证事件,将所述需要身份认证事件上报给所述Web应用单元,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或者所述浏览器内核单元进一步获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书;
所述Web应用单元进一步用于根据所述需要身份认证指示信息调用所述浏览器内核单元的数字证书管理对象的数字证书选择接口。
13.根据权利要求10或11所述的身份认证装置,其特征在于:
所述浏览器内核单元进一步用于从所述响应中解析出认证成功的认证结果,将所述认证结果通过认证结果事件或回调函数发送给所述Web应用单元。
14.根据权利要求10或12所述的身份认证装置,其特征在于:
所述浏览器内核单元进一步用于通过调用所述Web应用单元的超文本传输协议请求接口,将所述响应发送给所述Web应用单元;
所述Web应用单元进一步用于从所述响应中解析出认证成功的认证结果。
15.根据权利要求10所述的身份认证装置,其特征在于:
所述浏览器界面单元进一步用于接收待访问的网址信息和身份标识,将所述待访问的网址信息和所述身份标识发送给所述浏览器内核单元;
所述浏览器内核单元进一步用于根据所述身份标识确定所述选择的用户数字证书,生成携带有所述选择的用户数字证书的登录请求,将所述登录请求发送给所述应用服务器。
16.根据权利要求10所述的身份认证装置,其特征在于:
所述浏览器内核单元进一步用于检测登录触发事件,将所述登录触发事件发送给Web应用单元,以及获取本地存储的默认的用户数字证书,确定所述默认的用户数字证书为所述选择的用户数字证书,或所述浏览器内核单元进一步获取本地存储的多个待选择的用户数字证书,根据接收到的选择指示信息从所述多个待选择的用户数字证书中确定一个用户数字证书为所述选择的用户数字证书;
所述Web应用单元进一步用于根据所述登录触发事件确定登录触发操作对应的网址,若判断获知对所述网址的访问需要身份认证,则获取所述选择的用户数字证书所指示的用户的用户状态,若所述用户状态为未登录状态,则调用所述浏览器内核单元的认证对象的登录接口。
17.根据权利要求16所述的身份认证装置,其特征在于:若所述用户状态为登录状态,
所述Web应用单元进一步用于将所述网址发送给所述浏览器内核单元;
所述浏览器内核单元进一步用于根据所述网址向所述应用服务器发送访问请求,接收所述应用服务器根据所述访问请求返回的响应。
18.根据权利要求16所述的身份认证装置,其特征在于:
所述Web应用单元进一步用于通过调用所述浏览器内核单元的用户登录状态查询接口获取所述选择的用户数字证书所指示的用户的用户状态。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/077939 WO2014000281A1 (zh) | 2012-06-29 | 2012-06-29 | 身份认证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103621008A CN103621008A (zh) | 2014-03-05 |
CN103621008B true CN103621008B (zh) | 2016-11-30 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1556449A (zh) * | 2004-01-08 | 2004-12-22 | 中国工商银行 | 对网上银行数据进行加密、认证的装置和方法 |
CN1787513A (zh) * | 2004-12-07 | 2006-06-14 | 上海鼎安信息技术有限公司 | 安全远程访问***和方法 |
US20080189778A1 (en) * | 2007-02-05 | 2008-08-07 | Peter Andrew Rowley | Secure authentication in browser redirection authentication schemes |
CN101610157A (zh) * | 2009-07-28 | 2009-12-23 | 江苏先安科技有限公司 | 一种Web表单中使用数字证书自动签名的***和方法 |
US7752448B1 (en) * | 2004-02-17 | 2010-07-06 | The Weather Channel, Inc. | Domain-based application functionality |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1556449A (zh) * | 2004-01-08 | 2004-12-22 | 中国工商银行 | 对网上银行数据进行加密、认证的装置和方法 |
US7752448B1 (en) * | 2004-02-17 | 2010-07-06 | The Weather Channel, Inc. | Domain-based application functionality |
CN1787513A (zh) * | 2004-12-07 | 2006-06-14 | 上海鼎安信息技术有限公司 | 安全远程访问***和方法 |
US20080189778A1 (en) * | 2007-02-05 | 2008-08-07 | Peter Andrew Rowley | Secure authentication in browser redirection authentication schemes |
CN101610157A (zh) * | 2009-07-28 | 2009-12-23 | 江苏先安科技有限公司 | 一种Web表单中使用数字证书自动签名的***和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2860906B1 (en) | Identity authentication method and device | |
US9871791B2 (en) | Multi factor user authentication on multiple devices | |
Dasgupta et al. | Multi-factor authentication: more secure approach towards authenticating individuals | |
JP6527590B2 (ja) | オフライン・ネットワーク・トラフィックに基づいてカバート・チャネルのネットワーク侵入を検出するためのシステムおよび方法 | |
Petsas et al. | Two-factor authentication: is the world ready? Quantifying 2FA adoption | |
KR101148627B1 (ko) | 통보 방법, 통보 장치 및 비일시적 컴퓨터 판독가능 저장 매체 | |
CA2641995C (en) | System and method for network-based fraud and authentication services | |
Sun et al. | The devil is in the (implementation) details: an empirical analysis of OAuth SSO systems | |
JP4856755B2 (ja) | カスタマイズ可能なサインオンサービス | |
US20090013391A1 (en) | Identification System and Method | |
CN103634399B (zh) | 一种实现跨域数据传输的方法和装置 | |
US20080168546A1 (en) | Randomized images collection method enabling a user means for entering data from an insecure client-computing device to a server-computing device | |
CN114616795B (zh) | 用于防止重试或重放攻击的安全机制 | |
CN109842616B (zh) | 账号绑定方法、装置及服务器 | |
CN103647652B (zh) | 一种实现数据传输的方法、装置和服务器 | |
Jammalamadaka et al. | Delegate: A proxy based architecture for secure website access from an untrusted machine | |
Wedman et al. | An analytical study of web application session management mechanisms and HTTP session hijacking attacks | |
Sun et al. | OpenIDemail enabled browser: towards fixing the broken web single sign-on triangle | |
CN109729045A (zh) | 单点登录方法、***、服务器以及存储介质 | |
CN112836186A (zh) | 一种页面控制方法及装置 | |
Wang et al. | A framework for formal analysis of privacy on SSO protocols | |
Ghiani et al. | Security in migratory interactive web applications | |
Jindal et al. | Multi-factor authentication scheme using mobile app and camera | |
CN103621008B (zh) | 身份认证方法及装置 | |
Srivastava et al. | Security and Scalability of E-Commerce Website by OWASP threats. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |