CN117411725B - 门户应用认证方法、装置、及计算机设备 - Google Patents
门户应用认证方法、装置、及计算机设备 Download PDFInfo
- Publication number
- CN117411725B CN117411725B CN202311706192.3A CN202311706192A CN117411725B CN 117411725 B CN117411725 B CN 117411725B CN 202311706192 A CN202311706192 A CN 202311706192A CN 117411725 B CN117411725 B CN 117411725B
- Authority
- CN
- China
- Prior art keywords
- authentication
- application
- tag
- single sign
- authentication application
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000012795 verification Methods 0.000 claims description 49
- 238000004590 computer program Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种门户应用认证方法、装置、及计算机设备,其中,方法包括:终端响应APP登录操作,发送认证请求至IAM平台,IAM平台基于所述认证请求携带的用户信息进行认证,认证成功时,生成会话令牌、并下发至终端,终端响应用户的应用选择操作,识别用户选定的认证应用,基于会话令牌生成认证应用的单点登录标签,基于该单点登录标签访问认证应用对应的服务器,认证应用对应的服务器请求IAM平台对单点登录标签进行校验,在校验成功时,IAM平台反馈用户信息至认证应用对应的服务器,认证应用对应的服务器基于用户信息生成应用页面、并发送应用页面至终端。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种门户应用认证方法、装置、计算机设备和存储介质。
背景技术
门户应用是一种常见的应用,它本身是一个超级应用,内部嵌入了很多其它应用。门户应用登录之后,如何直接单点登录到内部的其它应用需要一套灵活的机制。
如果门户是一个WEB(World Wide Web,万维网)应用,那么门户应用和其它应用都可以使用标准协议与IAM平台(IdentityAnd Access Management,身份管理和访问控制平台)集成,只要登录了门户,可以自动SSO(Single Sign On,单点登录)到其它应用。如果是非WEB应用,比如终端APP或者客户端应用,由于其无法实现便捷、安全的认证,因此针对此类非WEB应用就无法实现便捷、安全的单点登录功能。
因此,目前急需一种便捷、且安全的门户应用认证方案。
发明内容
基于此,有必要针对上述技术问题,提供一种便捷、且安全的门户应用认证方法、装置、计算机设备、以及计算机可读存储介质。
第一方面,本申请提供了一种门户应用认证方法。所述方法包括:
响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签;
发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
接收所述认证应用对应的服务器返回的应用页面。
在其中一个实施例中,所述响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签之前,还包括:
发送应用注册请求至IAM平台;
接收、并缓存所述IAM平台分配的不同应用对应的应用标识和密钥。
在其中一个实施例中,所述响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签包括:
响应应用选择操作,获取认证应用id;
将所述认证应用id、以及所述会话令牌发送至所述IAM平台;
接收所述IAM平台回传的所述认证应用的单点登录标签,所述单点登录标签由所述IAM平台在根据所述会话令牌、以及所述认证应用id校验通过时生成。
第二方面,本申请还提供一种门户应用认证方法。应用于IAM平台,所述方法包括:
接收终端发送的认证请求;
当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;
接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
若校验通过,则返回用户信息至所述认证应用对应的服务器。
在其中一个实施例中,所述接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端包括:
接收终端发送的单点登录标签生成请求;
解析所述单点登录标签生成请求,获取会话令牌、以及认证应用id;
当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端。
在其中一个实施例中,所述当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端包括:
当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签;
将所述单点登录标签与认证应用id绑定、并配置所述单点登录标签的有效时间,得到处理后的单点登录标签;
将所述处理后的单点登录标签下发至终端。
在其中一个实施例中,上述门户应用认证方法还包括:
若校验所述会话令牌有效,则基于所述认证应用id检查所述认证应用是否有申请单点登录标签权限;
若有,则采用安全随机数生成认证应用的单点登录标签、并下发至终端。
第三方面,本申请还提供一种门户应用认证装置,应用于终端,所述装置包括:
第一发送模块,用于响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
令牌接收模块,用于接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
标签获取模块,用于响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签;
第二发送模块,用于发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
页面接收模块,用于接收所述认证应用对应的服务器返回的应用页面。
第四方面,本申请还提供一种门户应用认证装置,应用于IAM平台,所述装置包括:
第一接收模块,用于接收终端发送的认证请求;
令牌生成模块,用于当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
标签生成模块,用于接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;
第二接收模块,用于接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
回传模块,用于当校验通过时,返回用户信息至所述认证应用对应的服务器。
第五方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签;
发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
接收所述认证应用对应的服务器返回的应用页面。
第六方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收终端发送的认证请求;
当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;
接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
若校验通过,则返回用户信息至所述认证应用对应的服务器。
第七方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签;
发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
接收所述认证应用对应的服务器返回的应用页面。
第八方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收终端发送的认证请求;
当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;
接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
若校验通过,则返回用户信息至所述认证应用对应的服务器。
上述门户应用认证方法、装置、计算机设备和存储介质,终端响应APP登录操作,发送认证请求至IAM平台,IAM平台基于所述认证请求携带的用户信息进行认证,认证成功时,生成会话令牌、并下发至终端,终端响应用户的应用选择操作,识别用户选定的认证应用,基于会话令牌生成认证应用的单点登录标签,基于该单点登录标签访问认证应用对应的服务器,认证应用对应的服务器请求IAM平台对单点登录标签进行校验,在校验成功时,IAM平台反馈用户信息至认证应用对应的服务器,认证应用对应的服务器基于用户信息生成应用页面、并发送应用页面至终端。整个过程中,通过终端、IAM平台、以及认证应用对应的服务器三者之间交互,由IAM平台来完成用户信息的认证,可以实现便捷、且安全的门户应用认证,支持不同应用便捷实现单点登录功能。
附图说明
图1为一个实施例中门户应用认证方法的应用环境图;
图2为一个实施例中门户应用认证方法应用于终端的流程示意图;
图3为一个实施例中门户应用认证方法应用于终端的流程示意图;
图4为一个实施例中门户应用认证方法应用于IAM平台的流程示意图;
图5为又一个实施例中门户应用认证方法应用于IAM平台的流程示意图;
图6为一个应用实例中门户应用认证方法交互的时序示意图;
图7为一个实施例中门户应用认证装置的结构框图;
图8为又一个实施例中门户应用认证装置的结构框图;
图9为一个实施例中计算机设备的内部结构图;
图10为又一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的门户应用认证方法,可以应用于如图1所示的应用环境中。其中,终端102、IAM平台104、以及应用对应的服务器106之间通过网络进行通信,用户在终端102侧操作,终端102上装载有APP,用户点击APP进行登录操作,终端102响应APP登录操作,发送认证请求至IAM平台104,IAM平台104基于认证请求携带的用户信息进行认证,认证成功时,生成会话令牌、并下发至终端102,终端102响应用户在APP中应用的选择操作,识别用户选定的认证应用(例如小程序1),基于会话令牌生成认证应用的单点登录标签,基于该单点登录标签访问认证应用对应的服务器106,认证应用对应的服务器106请求IAM平台104对单点登录标签进行校验,在校验成功时,IAM平台104反馈用户信息至认证应用对应的服务器106,认证应用对应的服务器106基于用户信息生成应用页面、并发送应用页面至终端102,终端102将应用页面显示,用户此时即可以浏览到选择应用的页面,进行下一步操作。需要指出的是,终端102具体可以是移动终端,例如手机、平板电脑等,其还可以是固定的终端,例如其可以为台式电脑等。即在实际应用中,本申请门户应用认证方法对应的程序可以加载至移动终端的APP中,该程序还可以加载至固定终端(例如台式电脑、控制终端)的APP中,例如加载到钉钉的windows客户端中。
在一个实施例中,如图2所示,提供了一种门户应用认证方法,以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
S210:响应APP登录操作,发送认证请求至IAM平台,认证请求携带用户信息。
终端上装载有多个APP,例如可以装载有微信、微博、XX单车等这些APP,用户在使用这些APP时,需要先登录上这些APP。用户点开APP进行登录操作,终端响应用户的APP登录操作,发送认证请求至IAM平台,以请求IAM平台对用户身份进行认证,在该认证请求中携带有用户信息,具体可以为用户账号、密码等。IAM平台用于实现统一身份认证,其具体在接收到认证请求之后,会从认证请求中提取用户信息,基于用户信息对用户进行身份认证。
S220:接收IAM平台在基于用户信息认证成功时反馈的会话令牌。
IAM平台基于认证请求中携带的用户信息来进行身份认证,这里的用户信息具体可以是用户的账号、密码;用户手机号码+验证码等。IAM平台在认证成功之后会生成会话令牌(session token),IAM平台将生成的sessiontoken发送至终端。进一步的,IAM平台还可以将生成的session token与用户信息关联存储,这样在获取到session token时,即可对应查找到用户信息。终端在接收到IAM平台反馈的sessiontoken之后,即完成APP的登录,此时用户通过终端继续操作APP。
S230:响应应用选择操作,识别选定的认证应用、并基于会话令牌获取认证应用的单点登录标签。
在每个APP中可能包含有多个不同的应用,例如在微信中可能有小程序1、小程序2、……、小程序n这些,此时用户根据自己的需要选择某个应用,用户选择的该应用即程序目前需要认证的应用,即认证应用。以用户选择小程序1为例,此时终端识别出小程序1为认证应用。终端在识别出认证应用之后,再基于会话令牌来获取到认证应用的单点登录标签(SSO Ticket)。具体来说,终端可以再次访问IAM平台,请求由IAM平台基于session token来生成认证应用对应的SSO Ticket。在这里,APP可以为其他类型的应用程序,在不同的应用程序中可以加载有不同的应用。进一步来说,这里的应用还可以是除小程序之外的应用,例如H5 web应用等。
S240:发送携带单点登录标签的访问请求至认证应用对应的服务器,由认证应用对应的服务器请求IAM平台对单点登录标签进行校验,并接收IAM平台在校验成功时反馈的用户信息。
终端发送访问请求至认证应用对应的服务器,在该访问请求中是携带有S230获取到的SSO Ticket。具体来说,认证应用对应的服务器是指认证应用对应的后台服务器,以认证应用为XX单车的小程序为例,此时认证应用对应的服务器即为XX单车的后台服务器,此时终端通过发送访问请求的方式请求访问XX单车的后台服务器。认证应用对应的服务器在接收到访问请求之后,会提取该访问请求中携带的SSO Ticket,然后请求IAM平台来对该SSO Ticket进行有效性校验,如果IAM平台校验该SSO Ticket有效时,IAM平台发送对应的用户信息至认证应用对应的后台服务器,此时认证应用对应的后台服务器即知晓当前是谁(哪个用户)在请求访问。
S250:接收认证应用对应的服务器返回的应用页面。
认证应用对应的后台服务器在得到用户信息之后,会生成对应的应用页面,然后将该应用页面推送至终端,终端侧的用户即可浏览到该认证应用对应的应用页面,用户可以继续进行下一步操作。
上述门户应用认证方法,终端响应APP登录操作,发送认证请求至IAM平台,IAM平台基于认证请求携带的用户信息进行认证,认证成功时,生成会话令牌、并下发至终端,终端响应用户的应用选择操作,识别用户选定的认证应用,基于会话令牌生成认证应用的单点登录标签,基于该单点登录标签访问认证应用对应的服务器,认证应用对应的服务器请求IAM平台对单点登录标签进行校验,在校验成功时,IAM平台反馈用户信息至认证应用对应的服务器,认证应用对应的服务器基于用户信息生成应用页面、并发送应用页面至终端。整个过程中,通过终端、IAM平台、以及认证应用对应的服务器三者之间交互,由IAM平台来完成用户信息的认证,可以实现便捷、且安全的门户应用认证,支持不同应用便捷实现单点登录功能。
在其中一个实施例中,响应应用选择操作,识别选定的认证应用、并基于会话令牌获取认证应用的单点登录标签之前,还包括:
发送应用注册请求至IAM平台;接收、并缓存IAM平台分配的不同应用对应的应用标识和密钥。
在执行具体的应用认证之前,在终端APP、以及APP中的应用都需要IAM平台注册,IAM平台给这些应用分配对应的应用标识(应用id)和密钥(client secret)。这样可以便于后续来识别具体应用的身份,以及确保整个数据交互过程的安全。
如图3所示,在其中一个实施例中,S230包括:
S232:响应应用选择操作,获取认证应用id;
S234:将认证应用id、以及会话令牌发送至IAM平台;
S236:接收IAM平台回传的认证应用的单点登录标签,单点登录标签由IAM平台在根据会话令牌、以及认证应用id校验通过时生成。
终端响应用户的应用选择操作,确定认证应用,读取到该认证应用对应的认证应用id;终端将认证应用id、以及之前得到的会话令牌发送IAM平台,其中会话令牌可以表征用户信息,在将这些数据发送至IAM平台之后,根据会话令牌、以及认证应用id进行校验,待校验通过时,IAM平台生成单点登录标签,并将单点登录标签下发至终端,后续用户可以在终端侧操作之后,应用即可基于该单点登录标签访问认证应用对应的后台服务器,以实现该应用对应的功能。进一步来说,这里的校验可以包括两个部分,首先基于会话令牌校验用户是否为合法用户;其次,基于认证应用id校验认证应用是否开通了单点登录标签的权限,若两个部分校验均通过,则判定校验通过,生成单点登录标签。
如图4所示,与上述应用于终端的门户应用认证方法对应,本申请还提供一种门户应用认证方法。应用于IAM平台,方法包括:
S410:接收终端发送的认证请求。
IAM平台接收终端发送的认证请求,该认证请求是由终端响应用户在终端发起的APP登录操作生成的,在该认证请求中会携带有用户信息,用户信息具体可以包括用户的身份凭据、手机号码、或账号/密码等数据。
S420:当基于认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端。
IAM平台基于认证请求中携带的用户信息进行认证,判断用户是否为合法用户,当认证成功时,IAM平台生成、并下发会话令牌session token至终端,该会话令牌可以表征用户身份。
S430:接收终端发送的单点登录标签生成请求,根据单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端。
终端在接收到会话令牌session token之后,发送单点登录标签生成请求至IAM平台,以请求IAM平台生成单点登录标签SSO Ticket,IMA平台在生成之后下发至终端。
S440:接收认证应用对应的服务器发送的校验请求,校验请求携带认证应用的单点登录标签。
终端在接收到单点登录标签SSO Ticket之后,携带单点登录标签单点登录标签SSO Ticket访问应用对应的服务器,应用对应的服务器发送校验请求至IAM平台,以请求IAM平台校验该单点登录标签SSO Ticket是否有效,IAM平台主要需要校验该单点登录标签SSO Ticket是否还在有效期、或有效次数内;若在,则判定校验通过;若不在有效期、或不在有效次数之后,则判定校验不通过。具体来说,这里的有效期是指SSO Ticket的有效时间,该时间一般比较短例如3分钟到5分钟。一般而言,为了确保数据交互的安全, SSO Ticket的有效次数一般为一次,即SSO Ticket只能使用一次,并且其是与待访问的应用绑定的,只能认证应用使用。具体来说,SSO Ticket生成的时候,IAM平台记录了当前的SSO Ticket是给哪个应用生成的SSO Ticket校验的时候,应用需要传递自己的身份,IAM会校验当前应用的身份和SSO Ticket在服务端记录的对应应用是否一致。
S450:若校验通过,则返回用户信息至认证应用对应的服务器。
若校验通过,即表明当前的单点登录标签SSO Ticket为有效的SSO Ticket、且其与认证应用对应,此时IAM平台将用户信息发送至认证应用对应的服务器,服务器即可基于该用户信息生成对应的应用页面,并且将应用页面发回至终端,用户即可在终端侧浏览到应用页面。
上述门户应用认证方法,终端响应APP登录操作,发送认证请求至IAM平台,IAM平台基于认证请求携带的用户信息进行认证,认证成功时,生成会话令牌、并下发至终端,终端响应用户的应用选择操作,识别用户选定的认证应用,基于会话令牌生成认证应用的单点登录标签,基于该单点登录标签访问认证应用对应的服务器,认证应用对应的服务器请求IAM平台对单点登录标签进行校验,在校验成功时,IAM平台反馈用户信息至认证应用对应的服务器,认证应用对应的服务器基于用户信息生成应用页面、并发送应用页面至终端。整个过程中,通过终端、IAM平台、以及认证应用对应的服务器三者之间交互,由IAM平台来完成用户信息的认证,可以实现便捷、且安全的门户应用认证,支持不同应用便捷实现单点登录功能。
如图5所示,在其中一个实施例中,S430包括:
S432:接收终端发送的单点登录标签生成请求;
S434:解析单点登录标签生成请求,获取会话令牌、以及认证应用id;
S436:当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端。
IAM平台接收终端发送的单点登录标签生成请求,解析该请求从中获取到会话令牌Session token,以及认证应用id。IAM平台基于会话令牌Sessiontoken、以及认证应用id进行有效性校验,具体校验Session token的有效性、以及认证应用id的有效性,其中,认证应用id的有效性校验是指校验认证应用是否申请单点登录标签的权限,若有申请,则认证应用id有效性校验通过;若未申请,则认证应用id校验不通过。在会话令牌、以及认证应用id校验后效之后,生成认证应用的单点登录标签SSO ticket。
进一步来说,当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端包括:当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签;将单点登录标签与认证应用id绑定、并配置单点登录标签的有效时间,得到处理后的单点登录标签;将处理后的单点登录标签下发至终端。
在本实施例中,当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签SSO ticket,其具体可以是使用预设安全随机数来生成单点登录标签SSOticket,在得到单点登录标签SSO ticket之后,将其与认证应用id绑定、再配置单点登录标签SSO ticket的有效时间,这个有效时间一般比较短,例如可以为3~5分钟等,然后将处理后的单点登录标签SSO ticket下发至终端。
为详细说明本申请门户应用认证方法技术方案,下面将采用具体应用实例,并且结合交互时序图图6详细描述整个方案。在具体应用实例中,认证应用为小程序X,整个门户应用认证方法包括以下步骤:
1、用户在终端侧操作,终端响应用户APP登录操作,发送登录请求至IAM平台;
2、IAM平台校验登录请求中携带的APP标识、以及用户信息是否有效,若有效,则生成session token,IAM平台将session token返回至终端;
3、用户在APP中选择小程序X,此时认证应用即为小程序X,终端生成单点登录标签生成请求、并发送至IAM平台,以请求IAM平台生成SSO ticket;
4、IAM平台基于session token,以及小程序X的id进行校验,若校验有效,则生成SSO ticket,反馈生成的SSO ticket至终端;
5、终端发送携带SSO ticket的访问请求至小程序X对应的后台服务器;
6、小程序X对应的后台服务器发送校验请求至IAM平台,以请求校验SSO ticket的有效性;
7、IMA平台在校验SSO ticket有效时,返回用户信息至小程序X对应的后台服务器;
8、小程序X对应的后台服务器基于IAM平台返回的用户信息,生成对应的应用页面,并反馈至终端;
9、终端显示小程序X对应的应用页面。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的门户应用认证方法的门户应用认证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个门户应用认证装置实施例中的具体限定可以参见上文中对于门户应用认证方法的限定,在此不再赘述。
如图7所示,本申请还提供一种门户应用认证装置,应用于终端,装置包括:
第一发送模块710,用于响应APP登录操作,发送认证请求至IAM平台,认证请求携带用户信息;
令牌接收模块720,用于接收IAM平台在基于用户信息认证成功时反馈的会话令牌;
标签获取模块730,用于响应应用选择操作,识别选定的认证应用、并基于会话令牌获取认证应用的单点登录标签;
第二发送模块740,用于发送携带单点登录标签的访问请求至认证应用对应的服务器,由认证应用对应的服务器请求IAM平台对单点登录标签进行校验,并接收IAM平台在校验成功时反馈的用户信息;
页面接收模块750,用于接收认证应用对应的服务器返回的应用页面。
在其中一个实施例中,标签获取模块730还用于发送应用注册请求至IAM平台;接收、并缓存IAM平台分配的不同应用对应的应用标识和密钥。
在其中一个实施例中,标签获取模块730还用于响应应用选择操作,获取认证应用id;将认证应用id、以及会话令牌发送至IAM平台;接收IAM平台回传的认证应用的单点登录标签,单点登录标签由IAM平台在根据会话令牌、以及认证应用id校验通过时生成。
如图8,本申请还提供一种门户应用认证装置,应用于IAM平台,装置包括:
第一接收模块810,用于接收终端发送的认证请求;
令牌生成模块820,用于当基于认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
标签生成模块830,用于接收终端发送的单点登录标签生成请求,根据单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;
第二接收模块840,用于接收认证应用对应的服务器发送的校验请求,校验请求携带认证应用的单点登录标签;
回传模块850,用于当校验通过时,返回用户信息至认证应用对应的服务器。
在其中一个实施例中,标签生成模块830还用于接收终端发送的单点登录标签生成请求;解析单点登录标签生成请求,获取会话令牌、以及认证应用id;当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端。
在其中一个实施例中,标签生成模块830还用于当基于会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签;将单点登录标签与认证应用id绑定、并配置单点登录标签的有效时间,得到处理后的单点登录标签;将处理后的单点登录标签下发至终端。
在其中一个实施例中,标签生成模块830还用于当校验会话令牌有效时,基于认证应用id检查认证应用是否有申请单点登录标签权限;若有,则采用安全随机数生成认证应用的单点登录标签、并下发至终端。
上述门户应用认证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种门户应用认证方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种门户应用认证方法。
本领域技术人员可以理解,图9、图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述门户应用认证方法步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述门户应用认证方法步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述门户应用认证方法步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(FerroelectricRandom Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(RandomAccess Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random AccessMemory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种门户应用认证方法,其特征在于,应用于终端,所述方法包括:
响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签,所述单点登录标签由所述IAM平台在根据所述会话令牌、以及认证应用id校验通过时生成;
发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
接收所述认证应用对应的服务器返回的应用页面;
IAM平台根据所述会话令牌、以及认证应用id进行校验包括:基于会话令牌校验用户是否为合法用户、以及基于认证应用id校验认证应用是否开通单点登录标签的权限,若两个部分校验均通过,则判定校验通过。
2.根据权利要求1所述的方法,其特征在于,所述响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签之前,还包括:
发送应用注册请求至IAM平台;
接收、并缓存所述IAM平台分配的不同应用对应的应用标识和密钥。
3.根据权利要求1所述的方法,其特征在于,所述响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签包括:
响应应用选择操作,获取认证应用id;
将所述认证应用id、以及所述会话令牌发送至所述IAM平台;
接收所述IAM平台回传的所述认证应用的单点登录标签。
4.一种门户应用认证方法,其特征在于,应用于IAM平台,所述方法包括:
接收终端发送的认证请求;
当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端;所述单点登录标签由所述IAM平台在根据所述会话令牌、以及认证应用id校验通过时生成;
接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
若校验通过,则返回用户信息至所述认证应用对应的服务器;
IAM平台根据所述会话令牌、以及认证应用id进行校验包括:基于会话令牌校验用户是否为合法用户、以及基于认证应用id校验认证应用是否开通单点登录标签的权限,若两个部分校验均通过,则判定校验通过。
5.根据权利要求4所述的方法,其特征在于,所述接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端包括:
接收终端发送的单点登录标签生成请求;
解析所述单点登录标签生成请求,获取会话令牌、以及认证应用id;
当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端。
6.根据权利要求5所述的方法,其特征在于,所述当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签、并下发至终端包括:
当基于所述会话令牌、以及认证应用id校验有效时,生成认证应用的单点登录标签;
将所述单点登录标签与认证应用id绑定、并配置所述单点登录标签的有效时间,得到处理后的单点登录标签;
将所述处理后的单点登录标签下发至终端。
7.根据权利要求5所述的方法,其特征在于,还包括:
若校验所述会话令牌有效,则基于所述认证应用id检查所述认证应用是否有申请单点登录标签权限;
若有,则采用安全随机数生成认证应用的单点登录标签、并下发至终端。
8.一种门户应用认证装置,其特征在于,应用于终端,所述装置包括:
第一发送模块,用于响应APP登录操作,发送认证请求至IAM平台,所述认证请求携带用户信息;
令牌接收模块,用于接收所述IAM平台在基于所述用户信息认证成功时反馈的会话令牌;
标签获取模块,用于响应应用选择操作,识别选定的认证应用、并基于所述会话令牌获取所述认证应用的单点登录标签,所述单点登录标签由所述IAM平台在根据所述会话令牌、以及认证应用id校验通过时生成;
第二发送模块,用于发送携带所述单点登录标签的访问请求至所述认证应用对应的服务器,由所述认证应用对应的服务器请求所述IAM平台对所述单点登录标签进行校验,并接收所述IAM平台在校验成功时反馈的用户信息;
页面接收模块,用于接收所述认证应用对应的服务器返回的应用页面;
IAM平台根据所述会话令牌、以及认证应用id进行校验包括:基于会话令牌校验用户是否为合法用户、以及基于认证应用id校验认证应用是否开通单点登录标签的权限,若两个部分校验均通过,则判定校验通过。
9.一种门户应用认证装置,其特征在于,应用于IAM平台,所述装置包括:
第一接收模块,用于接收终端发送的认证请求;
令牌生成模块,用于当基于所述认证请求携带的用户信息认证成功时,生成、并下发会话令牌至终端;
标签生成模块,用于接收终端发送的单点登录标签生成请求,根据所述单点登录标签生成请求携带的会话令牌,生成认证应用的单点登录标签、并下发至终端,所述单点登录标签由所述IAM平台在根据所述会话令牌、以及认证应用id校验通过时生成;
第二接收模块,用于接收认证应用对应的服务器发送的校验请求,所述校验请求携带所述认证应用的单点登录标签;
回传模块,用于当校验通过时,返回用户信息至所述认证应用对应的服务器;
IAM平台根据所述会话令牌、以及认证应用id进行校验包括:基于会话令牌校验用户是否为合法用户、以及基于认证应用id校验认证应用是否开通单点登录标签的权限,若两个部分校验均通过,则判定校验通过。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311706192.3A CN117411725B (zh) | 2023-12-13 | 2023-12-13 | 门户应用认证方法、装置、及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311706192.3A CN117411725B (zh) | 2023-12-13 | 2023-12-13 | 门户应用认证方法、装置、及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117411725A CN117411725A (zh) | 2024-01-16 |
CN117411725B true CN117411725B (zh) | 2024-04-30 |
Family
ID=89500188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311706192.3A Active CN117411725B (zh) | 2023-12-13 | 2023-12-13 | 门户应用认证方法、装置、及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117411725B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857484A (zh) * | 2011-07-01 | 2013-01-02 | 阿里巴巴集团控股有限公司 | 一种实现单点登录的方法、系统及装置 |
CN106254328A (zh) * | 2016-07-27 | 2016-12-21 | 杭州华为数字技术有限公司 | 一种访问控制方法及装置 |
CN109314704A (zh) * | 2016-09-14 | 2019-02-05 | 甲骨文国际公司 | 用于多租户身份和数据安全管理云服务的单点登录和单点注销功能 |
CN112235285A (zh) * | 2020-10-12 | 2021-01-15 | 山东健康医疗大数据有限公司 | 基于非会话的用户认证模式和服务的方法及系统 |
CN113132402A (zh) * | 2021-04-27 | 2021-07-16 | 奇安信科技集团股份有限公司 | 单点登录方法和系统 |
CN114186208A (zh) * | 2021-12-16 | 2022-03-15 | 上海申铁信息工程有限公司 | 一种统一身份认证的方法及存储介质 |
CN114385995A (zh) * | 2022-01-06 | 2022-04-22 | 徐工汉云技术股份有限公司 | 一种基于Handle的标识解析微服务接入工业互联网的方法及标识服务系统 |
CN115499177A (zh) * | 2022-08-30 | 2022-12-20 | 新华三技术有限公司 | 云桌面访问方法、零信任网关、云桌面客户端和服务端 |
CN115982694A (zh) * | 2022-12-27 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 一种资源访问的方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10764273B2 (en) * | 2018-06-28 | 2020-09-01 | Oracle International Corporation | Session synchronization across multiple devices in an identity cloud service |
-
2023
- 2023-12-13 CN CN202311706192.3A patent/CN117411725B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857484A (zh) * | 2011-07-01 | 2013-01-02 | 阿里巴巴集团控股有限公司 | 一种实现单点登录的方法、系统及装置 |
CN106254328A (zh) * | 2016-07-27 | 2016-12-21 | 杭州华为数字技术有限公司 | 一种访问控制方法及装置 |
CN109314704A (zh) * | 2016-09-14 | 2019-02-05 | 甲骨文国际公司 | 用于多租户身份和数据安全管理云服务的单点登录和单点注销功能 |
CN112235285A (zh) * | 2020-10-12 | 2021-01-15 | 山东健康医疗大数据有限公司 | 基于非会话的用户认证模式和服务的方法及系统 |
CN113132402A (zh) * | 2021-04-27 | 2021-07-16 | 奇安信科技集团股份有限公司 | 单点登录方法和系统 |
CN114186208A (zh) * | 2021-12-16 | 2022-03-15 | 上海申铁信息工程有限公司 | 一种统一身份认证的方法及存储介质 |
CN114385995A (zh) * | 2022-01-06 | 2022-04-22 | 徐工汉云技术股份有限公司 | 一种基于Handle的标识解析微服务接入工业互联网的方法及标识服务系统 |
CN115499177A (zh) * | 2022-08-30 | 2022-12-20 | 新华三技术有限公司 | 云桌面访问方法、零信任网关、云桌面客户端和服务端 |
CN115982694A (zh) * | 2022-12-27 | 2023-04-18 | 北京天融信网络安全技术有限公司 | 一种资源访问的方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117411725A (zh) | 2024-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111756753B (zh) | 一种权限验证方法及系统 | |
CN111556006B (zh) | 第三方应用系统登录方法、装置、终端及sso服务平台 | |
CN103023918B (zh) | 为多个网络服务统一提供登录的方法、系统和装置 | |
US8955082B2 (en) | Authenticating using cloud authentication | |
CN112597472B (zh) | 单点登录方法、装置及存储介质 | |
KR101850677B1 (ko) | 웹사이트에 로그인하는 단말기가 모바일 단말기인지를 결정하기 위한 방법 및 시스템 | |
US8898764B2 (en) | Authenticating user through web extension using token based authentication scheme | |
US20090320116A1 (en) | Federated realm discovery | |
CN110784450A (zh) | 一种基于浏览器的单点登录方法和装置 | |
KR20040049272A (ko) | 네트워크 위치의 하위 위치에 대한 사용자의 인증을 위한방법 및 시스템 | |
CN103475484B (zh) | USB key认证方法及系统 | |
US20110202991A1 (en) | Preserving privacy with digital identities | |
CN105162775A (zh) | 虚拟机登陆方法及装置 | |
CN111818088A (zh) | 授权模式管理方法、装置、计算机设备及可读存储介质 | |
CN116484338A (zh) | 数据库访问方法及装置 | |
CN109600342B (zh) | 基于单点技术的统一认证方法及装置 | |
US11606192B2 (en) | Server side authentication | |
CN117411725B (zh) | 门户应用认证方法、装置、及计算机设备 | |
CN108965335B (zh) | 防止恶意访问登录接口的方法、电子设备及计算机介质 | |
US9479492B1 (en) | Authored injections of context that are resolved at authentication time | |
KR102016976B1 (ko) | 싱글 사인 온 서비스 기반의 상호 인증 방법 및 시스템 | |
CN113901428A (zh) | 多租户系统的登录方法及装置 | |
CN117688550B (zh) | 账号密码代填方法、装置、计算机设备和存储介质 | |
US20240073024A1 (en) | Passkey integration techniques for identity management | |
CN117081816A (zh) | 访问控制方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |