CN116506136A - 政务服务的跨域登录认证方法及装置 - Google Patents
政务服务的跨域登录认证方法及装置 Download PDFInfo
- Publication number
- CN116506136A CN116506136A CN202210053013.XA CN202210053013A CN116506136A CN 116506136 A CN116506136 A CN 116506136A CN 202210053013 A CN202210053013 A CN 202210053013A CN 116506136 A CN116506136 A CN 116506136A
- Authority
- CN
- China
- Prior art keywords
- government
- gateway
- government service
- service area
- login
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000003860 storage Methods 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims abstract description 9
- 230000015654 memory Effects 0.000 claims description 23
- 230000008520 organization Effects 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 12
- 238000012790 confirmation Methods 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 6
- 239000000758 substrate Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 13
- 230000001360 synchronised effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000013475 authorization Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 235000014510 cooky Nutrition 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/41—User authentication where a single sign-on provides access to a plurality of computers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种政务服务的跨域登录认证方法、装置、电子设备、计算机可读存储介质及计算机程序产品;方法包括:将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求;通过第一认证服务器获取用户账号的身份信息,并基于身份信息生成能够被第二政务服务区域对应的第二网关识别的登录态数据结构;基于登录态数据结构,将用户账号对应的登录态写入第二网关,其中,登录态用于供第二网关响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态。通过本申请,能够实现灵活登录不同政务服务区域客户端。
Description
技术领域
本申请涉及互联网和电子政务技术领域,尤其涉及一种政务服务的跨域登录认证方法及装置。
背景技术
随着互联网技术的快速发展,互联网技术已经被广泛应用于各个领域。为提升行政的现代化水平,各级政府正在积极普及办公自动化、无纸办公、远程办公等新兴行政方式,即所谓的电子政务。电子政务充分应用了现代网络及通信技术,能够优化政府组织结构及工作流程,有利于打破时空、时间等条件的制约,从而向社会提供全方位透明、规范、高效、安全的服务。
然而,相关技术提供的方案中,由于在多级行政区划应用场景下,每个政务服务区域的政务服务系统是隔离开来分别建设的,导致不同政务服务区域之间相互独立,例如政务服务区域A的政务人员只能使用自身的用户账号登录政务服务区域A的政务应用,而无法登录政务服务区域B的政务应用。
发明内容
本申请实施例提供一种政务服务的跨域登录认证方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够实现灵活登录不同政务服务区域客户端。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种政务服务的跨域登录认证方法,包括:
将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;
接收到所述第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,其中,所述第二政务服务区域客户端是用于使用所述第二政务服务区域的政务服务的客户端;
通过所述第一认证服务器获取所述用户账号的身份信息,并基于所述身份信息生成能够被所述第二政务服务区域对应的第二网关识别的登录态数据结构;
基于所述登录态数据结构,将所述用户账号对应的登录态写入所述第二网关,其中,所述登录态用于供所述第二网关响应所述用户账号针对所述第二政务服务区域客户端的访问请求时,将所述用户账号认证为已登录状态。
本申请实施例提供一种政务服务的跨域登录认证装置,包括:
同步模块,用于将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;
接收模块,用于接收到所述第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,其中,所述第二政务服务区域客户端是用于使用所述第二政务服务区域的政务服务的客户端;
获取模块,用于通过所述第一认证服务器获取所述用户账号的身份信息;
生成模块,用于基于所述身份信息生成能够被所述第二政务服务区域对应的第二网关识别的登录态数据结构;
写入模块,用于基于所述登录态数据结构,将所述用户账号对应的登录态写入所述第二网关,其中,所述登录态用于供所述第二网关响应所述用户账号针对所述第二政务服务区域客户端的访问请求时,将所述用户账号认证为已登录状态。
上述方案中,所述同步模块,还用于将所述第一政务服务区域对应的第一网关的地址同步到所述第二认证服务器;所述获取模块,还用于从所述第一网关获取所述用户账号的身份信息,其中,所述身份信息是所述第一认证服务器在对所述第一网关发送的用户账号和密码验证通过后,返回给所述第一网关的。
上述方案中,所述接收模块,还用于接收所述第二网关发送的携带键的身份信息获取请求消息,其中,所述键是所述第一网关在接收到所述第一认证服务器返回的所述用户账号的身份信息后生成,且是由所述第一网关发送给所述第二网关的;所述装置还包括发送模块,用于响应于所述身份信息获取请求消息,向所述第二网关返回所述用户账号的身份信息,其中,所述身份信息用于供所述第二网关生成所述登录态数据结构。
上述方案中,所述发送模块,还用于通过所述第二网关向所述第一网关发送所述登录态写入成功的通知消息,其中,所述通知消息用于供所述第一网关控制终端设备从登录页面跳转至所述第二政务服务区域客户端的详情页面。
上述方案中,所述接收模块,还用于接收到所述第二网关发送的写入登录态请求消息;所述写入模块,还用于响应于所述写入登录态请求消息,将所述用户账号对应的登录态写入所述第二认证服务器,其中,所述写入登录态请求消息是所述第一网关通过调用所述第二认证服务器提供的接口向所述第一认证服务器发送,并经由所述第一认证服务器转发至所述第二网关的。
上述方案中,所述接收模块,还用于接收所述第一政务服务区域对应的第一网关发送的所述用户账号的身份信息;其中,所述身份信息是所述第一政务服务区域客户端向所述第一网关发送的,且是由所述第一政务服务区域客户端在接收到所述第一网关发送的携带编码的身份信息获取请求消息之后发送的,所述编码是所述第一政务服务区域客户端在接收到所述第一网关发送的确认登录请求消息之后返回给所述第一网关的,所述第一政务服务区域客户端是用于使用所述第一政务服务区域的政务服务的客户端。
上述方案中,所述获取模块,还用于当第一政务服务区域客户端的组织机构标识与所述第二政务服务区域客户端的组织机构标识不同时,从所述第一政务服务区域对应的第一网关获取所述用户账号的身份信息;其中,所述身份信息是所述第一政务服务区域客户端在接收到所述第一网关发送的携带编码的身份信息获取请求消息之后向所述第一网关发送的,且所述编码是所述第二网关基于所述第二认证服务器返回的所述第一政务服务区域客户端的标识生成,并发送给所述第一网关的,所述第一政务服务区域客户端是用于使用所述第一政务服务区域的政务服务的客户端。
上述方案中,所述同步模块,还用于将所述第一政务服务区域客户端的域名同步到所述第二认证服务器,所述装置还包括建立模块,用于建立所述第一政务服务区域客户端与所述第二政务服务区域客户端之间的映射关系,其中,所述映射关系用于供所述第二认证服务器基于所述第二政务服务区域客户端获取所述第一政务服务区域客户端的标识。
上述方案中,所述同步模块,还用于执行以下处理至少之一:将第一政务服务区域客户端的密钥和标识同步到所述第二认证服务器;将所述第一政务服务区域对应的通讯录同步到所述第二认证服务器。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的政务服务的跨域登录认证方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的政务服务的跨域登录认证方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或指令,用于引起处理器执行时,实现本申请实施例提供的政务服务的跨域登录认证方法。
本申请实施例具有以下有益效果:
通过将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器,如此,当接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求时,可以通过第一认证服务器获取用户账号的身份信息,并基于所获取的身份信息生成登录态数据结构,随后可以基于登录态数据结构,将用户账号对应的登录态写入第二政务服务区域对应的第二网关,以使第二网关在响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态,从而实现第一政务服务区域的政务人员能够使用自身的用户账号登录并访问第二政务服务区域客户端,即实现在不同政务服务区域客户端之间的灵活登录和访问。
附图说明
图1是本申请实施例提供的政务服务的跨域登录认证系统100的架构示意图;
图2是本申请实施例提供的第二认证服务器500的结构示意图;
图3是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图4A是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图4B是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图5是本申请实施例提供的政务服务的跨域登录认证系统的架构示意图;
图6是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图7是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图8是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图;
图9是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)政务服务区域:又称政务区域管理地,是国家为了进行分级管理而实行的区域划分,例如根据《中华人民共和国宪法》规定:全国可以分为省、自治区、直辖市,而省、自治区又可以进一步划分为自治州、县、自治县、市等。
2)网关:又称网间连接器、协议转换器,在网络层以上实现网络互连,是复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。
3)域名:又称网域,是由一串用点分隔的名字组成的互联网上某一台计算设备(例如服务器)或计算设备组的名称,用于在数据传输时对计算设备的定位标识。
4)登录态:又称登录状态,客户端在登录成功后,由服务器发送给客户端,用于维持登录状态的随机字符串,这个字符串又可以称之为令牌,从而在登录后,客户端每次请求时都需要把令牌发送给服务器,服务器在接收到令牌后,会校验令牌对应的数据信息,从而判断客户端是否处于已登录状态。
5)小程序:是一种不需要下载安装即可使用的应用程序。为了向用户提供更多样化的业务服务,开发者可为终端设备的应用(例如即时通信应用、购物应用、邮件应用等)开发相应的小程序,该小程序可作为子应用被嵌入至终端设备的应用中,通过运行应用内的子应用(即对应的小程序)能够为用户提供相应的业务服务。
6)响应于:用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
相关技术在进行跨域登录时,通常采用OAuth协议(一种授权协议,不涉及具体的代码,只是表示一种约定的流程和规范)实现。OAuth协议一般用于用户决定是否把自己在某个服务器上面的资源授权给第三方应用访问。具体过程如下:用户打开客户端以后,客户端要求用户给予授权;用户同意给予客户端授权;客户端使用上一步获得的授权,向认证服务器申请令牌;认证服务器对客户端进行认证以后,确认无误,同意发放令牌;客户端使用令牌,向资源服务器申请获取资源;资源服务器确认令牌无误,同意向客户端开放资源。
然而,申请人在实施本申请实施例的过程中发现:相关技术提供的方案在实现跨域登录时,需要增加额外的认证服务器,导致在进行跨域登录时资源消耗过多。
对此,针对电子政务中的多级行政区划应用场景,考虑将第一政务服务区域(例如市政务)对应的第一认证服务器的域名同步到第二政务服务区域(例如省政务)对应的第二认证服务器,接着在接收到第一政务服务区域的用户账号(即市政员工的用户账号)针对第二政务服务区域客户端(即省政务应用)的登录请求时,可以基于域名从第一认证服务器中获取市政员工的身份信息,并基于市政员工的身份信息生成能够被第二政务服务区域对应的第二网关(即省网关)识别的登录态数据结构;随后基于登录态数据结构,将市政员工的用户账号对应的登录态写入省网关中(即省网关已经将市政员工的用户账号认证为已登录状态,此时,省网关还可以向市政员工的终端设备发送通知消息,以使终端设备从登录界面跳转至应用详情界面),如此,当省网关后续接收到市政员工基于自身的用户账号针对省政务应用发起的访问请求时,可以直接向市政员工的终端设备返回省政务应用中访问请求对应的相关数据,如此,在进行跨域登录时,无需额外的认证服务器,能够高效地实现基于市政员工的用户账号访问省政务应用的目的。
鉴于此,本申请实施例提供一种政务服务的跨域登录认证方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够高效地实现灵活登录不同政务服务区域客户端。下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为服务器,或者由终端设备和服务器协调实施。
下面以由服务器(例如图1中示出的第二认证服务器500)单独实施本申请实施例提供的政务服务的跨域登录认证方法为例进行说明。参见图1,图1是本申请实施例提供的政务服务的跨域登录认证系统100的架构示意图,为实现支撑灵活登录不同政务服务区域客户端的应用,其中,政务服务的跨域登录认证系统100包括:第一政务服务区域(包括第一政务服务区域对应的第一认证服务200、第一政务服务区域对应的第一网关300和第一政务服务区域客户端400,即用于使用第一政务服务区域的政务服务的客户端)和第二政务服务区域(包括第二政务服务区域对应的第二认证服务器500、第二政务服务区域对应的第二网关600和第二政务服务区域客户端700,即用于使用第二政务服务区域的政务服务的客户端),下面进行具体说明。
第二政务服务区域对应的第二认证服务器500接收第一政务服务区域对应的第一认证服务器200发送的域名,并将接收到的第一认证服务器200的域名保存到第二认证服务器500,接着当接收到第一政务服务区域的用户账号针对第二政务服务区域客户端700的登录请求时(例如第一政务服务区域的政务人员使用自身的用户账号请求登录第二政务服务区域客户端700),通过第一认证服务器200获取用户账号的身份信息(例如第一认证服务器200在对第一网关300发送的用户账号和密码验证通过后,将用户账号的身份信息返回给第一网关300,从而第二认证服务器500可以从第一网关300中获取用户账号的身份信息;当然,用户账号的身份信息也可以是由第一政务服务区域客户端400发送给第一网关300的,并由第一网关300发送给第二认证服务器500),并基于身份信息生成能够被第二政务服务区域对应的第二网关600识别的登录态数据结构,最后可以基于登录态数据结构,将用户账号对应的登录态写入第二网关600,其中,登录态用于供第二网关600响应第一政务服务区域的政务人员的用户账号针对第二政务服务区域客户端700的访问请求时,将用户账号认证为已登录状态,从而实现第一政务服务区域的政务人员可以灵活访问第二政务服务区域客户端,如此,一方面极大地提高了政务应用在多级行政区划应用场景下的分发效率,另一方面也降低了政务应用在多级行政区划应用场景下的开发成本。
在一些实施例中,本申请实施例还可以借助于云技术(Cloud Technology)实现,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源。示例的,图1中示出的第一认证服务器200和第二认证服务器500可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
下面继续对图1中示出的第二认证服务器500的结构进行说明。参见图2,图2是本申请实施例提供的第二认证服务器500的结构示意图,图2所示的第二认证服务器500包括:至少一个处理器510、存储器540、至少一个网络接口520。第二认证服务器500中的各个组件通过总线系统530耦合在一起。可理解,总线系统530用于实现这些组件之间的连接通信。总线系统530除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统530。
处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器540可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器540可选地包括在物理位置上远离处理器510的一个或多个存储设备。
存储器540包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器540旨在包括任意适合类型的存储器。
在一些实施例中,存储器540能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统541,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块542,用于经由一个或多个(有线或无线)网络接口520到达其他电子设备,示例性的网络接口520包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
在一些实施例中,本申请实施例提供的政务服务的跨域登录认证装置可以采用软件方式实现,图2示出了存储在存储器540中的政务服务的跨域登录认证装置543,其可以是程序和插件等形式的软件,包括以下软件模块:同步模块5431、接收模块5432、获取模块5433、生成模块5434、写入模块5435、发送模块5436和建立模块5437,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。需要说明的是,在图2中为了表述方便,一次性示出了上述所有模块,在实际应用中,不排除政务服务的跨域登录认证装置543中仅包括同步模块5431、接收模块5432、获取模块5433、生成模块5434和写入模块5435的实施,将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的政务服务的跨域登录认证装置可以采用硬件方式实现,作为示例,本申请实施例提供的政务服务的跨域登录认证装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的政务服务的跨域登录认证方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
下面将从第一政务服务区域包括的第一网关、第一认证服务器、以及第一政务服务区域客户端与第二政务服务区域包括的第二网关、第二认证服务器、以及第二政务服务区域客户端之间交互的角度,对本申请实施例提供的政务服务的跨域登录认证方法进行说明。
参见图3,图3是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图,将结合图3示出的步骤进行说明。
在步骤101中,第二政务服务区域对应的第二认证服务器接收第一政务服务区域对应的第一认证服务器发送的第一认证服务器的域名。
在一些实施例中,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,由于在多级行政区划应用场景下,每个政务区域管理地的政务服务系统都是相互隔离单独建设的,因此,每个政务区域管理地都有一个对应的认证服务器,例如假设政务区域管理地A对应的认证服务器为认证服务器1,政务区域管理地B对应的认证服务器为认证服务器2,则可以将政务区域管理地A对应的认证服务器1的域名同步到政务区域管理地B对应的认证服务器2,例如政务区域管理地A对应的认证服务器1可以将自身的域名通过网络发送至政务区域管理地B对应的认证服务器2。
示例的,以第一政务服务区域为A市、第二政务服务区域为B市为例,可以将A市对应的认证服务器(例如认证服务器1,用于对A市的政务人员的用户账号进行认证)的域名同步到B市对应的认证服务器(例如认证服务器2,用于对B市的政务人员的用户账号进行认证),例如A市对应的认证服务器1可以将自身的域名通过网络发送至B市对应的认证服务器2。
在另一些实施例中,在将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器之后,还可以执行以下处理至少之一:将第一政务服务区域客户端的密钥(Secret,是用于保障客户端数据安全的钥匙,每一个政务应用都有一个独立的访问密钥)和标识(AgentID,用于区别不同的政务应用)同步到第二认证服务器;将第一政务服务区域对应的通讯录同步到第二认证服务器,如此,第二政务服务区域的政务人员也可以访问第一政务服务区域客户端、以及查看第一政务服务区域对应的通讯录,例如查看第一政务服务区域的政务人员的名单列表。
在步骤102中,第二认证服务器接收第二政务服务区域客户端发送的登录请求。
这里,第二政务服务区域客户端是用于使用第二政务服务区域的政务服务的客户端,例如可以是独立的用于提供政务服务的应用程序,或者是集成在即时通信客户端(例如政务微信)中的功能模块,例如小程序。登录请求是第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,例如第一政务服务区域的政务人员使用自身的用户账号和密码请求登录第二政务服务区域客户端。
在步骤103中,第二政务服务区域对应的第二认证服务器向第一政务服务区域对应的第一认证服务器发送身份信息获取请求消息。
在一些实施例中,当第二认证服务器接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求时,可以根据在步骤101中接收到的第一认证服务器的域名,向第一认证服务器发送身份信息获取请求消息,以获取用户账号的身份信息。
示例的,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,假设政务区域管理地A对应的认证服务器为认证服务器1,政务区域管理地B对应的认证服务器为认证服务器2,当政务区域管理地B对应的认证服务器2接收到政务区域管理地A的用户账号针对政务区域管理地B的客户端的登录请求(例如政务区域管理地A的政务人员使用自身的用户账号和密码请求登录政务区域管理地B的政务应用)时,可以根据在步骤101中接收到的认证服务器1的域名,向政务区域管理地A对应的认证服务器1发送身份信息获取请求消息,以获取用户账号的身份信息。
在步骤104中,第一政务服务区域对应的第一认证服务器向第二政务服务区域对应的第二认证服务器返回用户账号的身份信息。
在一些实施例中,当步骤102中的登录请求对应的登录方式为网页端的账号密码登录时,可以根据图4A示出的步骤1041A至步骤1043A实现上述的步骤104,将结合图4A示出的步骤进行说明。
在步骤1041A中,第一政务服务区域对应的第一网关向第一认证服务器发送用户账号和密码。
在一些实施例中,当第一政务服务区域的政务人员在第二政务服务区域客户端对应的网页端登录页面中输入自身的用户账号和密码时,第一政务服务区域对应的第一网关会将第一政务服务区域的政务人员在登录页面中输入的用户账号和密码发送至第一认证服务器。
示例的,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,当政务区域管理地A的政务人员(例如政务人员1)在浏览器中输入政务区域管理地B的应用对应的网址时,在浏览器中显示政务区域管理地B的应用对应的登录页面,接着政务人员1可以在登录页面中输入自己的用户账号和密码,随后政务区域管理地A对应的网关可以将政务人员1在登录页面中输入的用户账号和密码发送至政务区域管理地A对应的认证服务器。
在步骤1042A中,第一认证服务器向第一网关返回用户账号的身份信息。
在一些实施例中,第一政务服务区域对应的第一认证服务器在接收到第一网关发送的用户账号和密码之后,对第一网关发送的用户账号和密码进行验证,例如判断第一网关发送的用户账号和密码和第一认证服务器中预先存储的用户账号和密码是否匹配,当匹配时确定验证通过,并向第一网关返回用户账号的身份信息。
示例的,以第一政务服务区域为政务区域管理地A为例,假设政务区域管理地A对应的认证服务器为认证服务器1,当认证服务器1接收到政务区域管理地A对应的网关(例如网关1)发送的用户账号和密码之后,对接收到的用户账号和密码进行验证,例如判断网关1发送的用户账号和密码与认证服务器1中预先存储的用户账号和密码是否匹配,并在匹配时确定验证通过,并向网关1返回用户账号的身份信息。
在步骤1043A中,第一网关向第二政务服务区域对应的第二认证服务器发送用户账号的身份信息。
在一些实施例中,第一网关在接收到第一认证服务器返回的用户账号的身份信息之后,可以向第二认证服务器发送接收到的用户账号的身份信息。示例的,可以预先将第一政务服务区域对应的第一网关的地址(例如互联网协议地址)同步到第二政务服务区域对应的第二认证服务器,如此,第二认证服务器可以基于之前接收到的第一网关的地址,从第一网关获取用户账号的身份信息。
在另一些实施例中,当步骤102中的登录请求对应的登录方式为网页端的扫描登录时,第二认证服务器可以通过图4B示出的步骤1041B至步骤1045B获取用户账号的身份信息,将结合图4B示出的步骤进行说明。
在步骤1041B中,第一政务服务区域对应的第一网关向第一政务服务区域客户端发送确认登录请求消息。
这里,第一政务服务区域客户端是用于使用第一政务服务区域的政务服务的客户端。
在一些实施例中,当第一政务服务区域的政务人员通过第一政务服务区域客户端对浏览器界面中显示的第二政务服务区域客户端对应的图形码(例如二维码)进行扫描时,第一政务服务区域对应的第一网关可以向第一政务服务区域客户端发送确认登录请求消息。
示例的,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,当政务区域管理地A的政务人员(例如政务人员1)在浏览器中输入政务区域管理地B的应用对应的网址时,在浏览器中显示政务区域管理地B的应用对应的二维码,当政务人员1使用政务区域管理地A的应用对二维码进行扫描时,政务区域管理地A对应的网关(例如网关1)会向政务区域管理地A的应用发送确认登录请求消息。
在步骤1042B中,第一政务服务区域客户端向第一网关返回编码。
在一些实施例中,第一政务服务区域客户端在接收到第一网关发送的确认登录请求消息之后进行确认,并在确认通过之后向第一网关返回与用户账号的身份信息对应的编码(Code)。
在步骤1043B中,第一网关向第一政务服务区域客户端发送身份信息获取请求消息。
在一些实施例中,第一网关在接收到第一政务服务区域客户端返回的编码之后,可以将编码封装至身份信息获取请求消息,并向第一政务服务区域客户端发送携带编码的身份信息获取请求消息。
在步骤1044B中,第一政务服务区域客户端向第一网关返回用户账号的身份信息。
在一些实施例中,第一政务服务区域客户端在接收到第一网关发送的身份信息获取请求消息之后,可以从接收到的身份信息获取请求消息中提取出携带的编码,并根据编码获取对应的用户账号的身份信息,并将所获取的用户账号的身份信息返回给第一网关。
在步骤1045B中,第一网关向第二认证服务器发送用户账号的身份信息。
在一些实施例中,第一网关在接收到第一政务服务区域客户端返回的用户账号的身份信息之后,可以向第二认证服务器发送接收到的用户账号的身份信息。示例的,可以预先将第一政务服务区域对应的第一网关的地址(例如互联网协议地址)同步到第二政务服务区域对应的第二认证服务器,如此,第二认证服务器可以基于之前接收到的第一网关的地址,从第一网关获取用户账号的身份信息。
在一些实施例中,当步骤102中的登录请求对应的登录方式为通过客户端登录时,第二认证服务器还可以通过以下方式获取用户账号的身份信息:当第一政务服务区域客户端的组织机构标识(例如CropID)与第二政务服务区域客户端的组织机构标识不同时,从第一政务服务区域对应的第一网关获取用户账号的身份信息;其中,身份信息是第一政务服务区域客户端在接收到第一网关发送的携带编码的身份信息获取请求消息之后向第一网关发送的,且编码是第二网关基于第二认证服务器返回的第一政务服务区域客户端的标识(例如AgentID和CropID)生成,并发送给第一网关的。
在另一些实施例中,承接上述示例,第二认证服务器在从第一政务服务区域对应的第一网关获取用户账号的身份信息之前,还可以执行以下处理:将第一政务服务区域客户端的域名同步到第二认证服务器,并建立第一政务服务区域客户端与第二政务服务区域客户端之间的映射关系,其中,映射关系用于供第二认证服务器基于第二政务服务区域客户端获取第一政务服务区域客户端的标识。
示例的,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,可以预先将政务区域管理地A的应用(例如政务应用1)的域名同步到政务区域管理地B对应的认证服务器(例如认证服务器2),并建立政务应用1与政务区域管理地B的应用(例如政务应用2)之间的映射关系,接着当政务区域管理地B对应的认证服务器(例如认证服务器2)接收到政务区域管理地B对应的网关(例如网关2)发送的获取政务应用1的标识的请求消息时,根据预先建立的映射关系,基于政务应用2查找到政务应用1的标识,并将政务应用1的标识返回给网关2,随后网关2根据政务应用1的标识生成编码,并将所生成的编码发送至政务区域管理地A对应的网关(例如网关1),从而网关1可以向政务应用1发送携带编码的身份信息获取请求消息,以使政务应用1向网关1返回与编码对应的用户账号的身份信息。
在步骤105中,第二认证服务器将用户账号的身份信息发送至第二网关。
在一些实施例中,第二认证服务器在接收到用户账号的身份信息之后,可以将用户账号的身份信息发送至第二政务服务区域对应的第二网关,以使第二网关根据第二认证服务器发送的用户账号的身份信息生成能够被第二网关识别的登录态数据结构,并基于所生成的登录态数据结构,将用户账号对应的登录态写入第二网关。其中,登录态数据结构的示例如下:
{
UserID:“1pjtmtdyg078km533dkfgp”,
DeviceID:“E790F42E-64A7-496B-9090”,
Errcode:0,
Errmsg:“OK”,
Usertype:3
}
其中,UserID表示用户标识、DeviceID表示设备标识、Errcode表示错误码,0位表示正常、Errmsg表示错误信息,OK表示正常、Usertype表示用户类型,用于供第二认证服务器确定用户账号的访问权限(即基于该用户账号能够访问的第二政务服务区域客户端的范围),3表示访问权限为3级的用户,访问权限的等级越高,用户能够访问的数据也越多。
示例的,可以预先将用户类型划分成3个等级,分别为1级、2级和3级,并建立用户类型与访问权限之间的映射表(例如用户类型为1级的用户,对应的访问权限为1级;用户类型为2级的用户,对应的访问权限为中级;用户类型为3级的用户,对应的访问权限为高级),具体来说,针对用户类型为1级的用户(对应的访问权限为低级),因此,在基于该用户的用户账号访问第二政务服务区域客户端时,仅能访问第二政务服务区域客户端提供的基础数据(即仅能够使用第二政务服务区域客户端的部分功能);针对用户类型为2级的用户(对应的访问权限为中级),因此,在基于该用户的用户账号访问第二政务服务区域客户端时,能够访问第二政务服务区域客户端的数据多于用户类型为1级的用户(但不能访问第二政务服务区域客户端的所有数据);而针对用户类型为3级的用户(对应的访问权限为高级),因此,在基于该用户的用户账号访问第二政务服务区域客户端时,能够访问第二政务服务区域客户端提供的所有数据(即能够使用第二政务服务区域客户端的所有功能)。
示例的,当登录请求对应的登录方式为网页端的账号密码登录、且第二认证服务器接收到第二网关发送的携带键(Key)的身份信息获取请求消息时,可以响应于第二网关发送的身份信息获取请求消息,向第二网关返回用户账号的身份信息,其中,身份信息获取请求消息中携带的键是第一网关在接收到第一认证服务器返回的用户账号的身份信息后生成的,且是由第一网关发送给第二网关的。
举例来说,以第一政务服务区域为政务区域管理地A、第二政务服务区域为政务区域管理地B为例,当政务区域管理地A对应的网关(例如网关1)在接收到政务区域管理地A对应的认证服务器(例如认证服务器1)返回的用户账号的身份信息之后,根据用户账号的身份信息生成对应的键值对(Key-Value),其中,键可以是用户账号的身份信息对应的标识,值为用户账号的身份信息本身,接着网关1可以将生成的键值对中的键发送给政务区域管理地B对应的网关(例如网关2),从而网关2可以向政务区域管理地B对应的认证服务器(例如认证服务器2)发送携带键的身份信息获取请求消息,以使认证服务器2在接收到身份信息获取请求消息之后进行响应,并向网关2返回与身份信息获取请求消息中携带的键匹配的用户账号的身份信息(即与键对应的值)。
在另一些实施例中,第二认证服务器在接收到用户账号的身份信息之后,还可以首先基于用户账号的身份信息生成能够被第二政务服务区域对应的第二网关识别的登录态数据结构,并将登录态数据结构发送给第二网关,以使第二网关基于登录态数据结构,写入用户账号对应的登录态。
在步骤106中,第二网关基于身份信息生成登录态数据结构,并基于登录态数据结构,写入用户账号对应的登录态。
这里,用户账号对应的登录态用于供第二网关响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态,如此,当第二网关接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的访问请求时,可以在访问请求的头部(Header)中携带用户账号的身份信息,并向用户账号对应的终端设备返回相应的数据,以在终端设备的人机交互界面中进行呈现,从而实现第一政务服务区域的政务人员能够访问第二政务服务区域客户端的目的。
在一些实施例中,第二网关在将用户账号对应的登录态写入第二网关之后,还可以向第一政务服务区域对应的第一网关发送登录态写入成功的通知消息,其中,通知消息用于供第一网关控制终端设备当前显示的界面从登录页面跳转至第二政务服务区域客户端的详情页面,如此,第一政务服务区域的政务人员可以对第二政务服务区域客户端进行访问。
在另一些实施例中,在将用户账号对应的登录态写入第二网关之后,还可以在第二认证服务器中备份用户账号对应的登录态,示例的,当第二认证服务器接收到第二网关发送的写入登录态请求消息时,响应于写入登录态请求消息,将用户账号对应的登录态写入第二认证服务器,其中,写入登录态请求消息是第一政务服务区域对应的第一网关通过调用第二认证服务器提供的接口向第一认证服务器发送,并经由第一认证服务器转发至第二网关的,如此,通过在第二认证服务器中备份用户账号对应的登录态,避免了由于某些原因(例如网络抖动)导致第二网关中存储的用户账号对应的登录态丢失,进而造成第一政务服务区域的政务人员无法继续访问第二政务服务区域客户端。
本申请实施例提供的政务服务的跨域登录认证方法,通过将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器,如此,当接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求时,可以通过第一认证服务器获取用户账号的身份信息,并基于所获取的身份信息生成登录态数据结构,随后可以基于登录态数据结构,将用户账号对应的登录态写入第二政务服务区域对应的第二网关,以使第二网关在响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态,从而实现第一政务服务区域的政务人员能够使用自身的用户账号登录第二政务服务区域客户端。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
本申请实施例提供一种政务服务的跨域登录认证方法,使得多个属于不同政务区域管理地的政务人员可以通过特定的登录认证方式,实现相互访问其他政务区域管理地的政务应用(对应于上述的政务服务区域客户端),从而达到政务应用在单个政务区域管理地部署后,其他政务区域管理地的政务人员也能访问的目的。
具体的,主要包括以下几个方面:第一、一个政务区域管理地(例如政务区域管理地A)的政务人员登录另一个政务区域管理地(例如政务区域管理地B)的政务应用时,支持政务人员选择认证源,例如可以选择政务区域管理地A认证或者选择政务区域管理地B认证;第二、提供了多种登录方式供政务人员在登录时进行选择,例如包括账号密码登录、手机验证码登录、手机政务微信客户端扫描登录等;第三、支持多种客户端实现登录,例如包括个人计算机(PC,Personal Computer)网页(Web)端、PC客户端、移动客户端等;第四、支持配置化管理认证的政务区域管理地的政务网站,例如政务区域管理地A的政务人员想要登录另一个政务区域管理地B的政务应用时,只需要在政务区域管理地A的政务统一认证后台(对应于上述的认证服务器)配置政务区域管理地B的政务应用,例如可以将政务区域管理地B的政务统一认证后台的域名、以及政务应用的域名配置到政务区域管理地A的政务统一认证后台;第五、在第四点配置后,支持自动实时地将政务区域管理地B的政务人员通讯录同步到政务区域管理地A的政务统一认证后台。
下面对本申请实施例提供的政务服务的跨域登录认证方法进行具体说明。
本申请实施例提供的政务服务的跨域登录认证方法可以基于云平台(例如腾讯云)提供的政务统一认证应用进行实现,在政务统一认证应用中实现便利的添加级联节点配置(即单个政务统一认证节点在配置后支持使用级联认证的方式登录访问另一个政务区域管理地的政务应用时,该政务统一认证节点称为级联节点)、级联应用配置(即一个政务区域管理地的政务人员通过级联认证的方式登录另一个政务区域管理地的政务应用,该支持级联登录的政务应用称为级联应用),从而实现支持通过级联认证(即一个政务区域管理地的政务人员通过特定的认证方式登录另一个政务区域管理地的政务应用,该特定的认证方式称为级联认证)的方式登录访问级联应用,同时还支持多级联节点之间通讯录的同步。
下面对级联节点配置、级联应用配置、级联节点通讯录同步配置、以及级联应用登录的过程进行具体说明。
在一些实施例中,针对级联节点配置:支持在一个政务区域管理地A的政务统一认证后台中配置另一个政务区域管理地B的政务统一认证后台,例如可以将政务区域管理地B的政务统一认证后台的域名配置到政务区域管理地A的政务统一认证后台中。
在一些实施例中,针对级联应用配置:在配置好级联节点(例如政务区域管理地A)的政务统一认证后台之后,支持配置另一个政务区域管理地B的政务应用,例如可以将政务区域管理地B的政务应用的域名、以及政务微信的Secret和AgentID同步到政务区域管理地A的政务统一认证后台中。
在一些实施例中,针对级联节点通讯录同步配置:在配置好级联节点(例如政务区域管理地A)的政务统一认证后台之后,支持添加另一个政务区域管理地B的通讯录,例如可以将政务区域管理地B的通讯录同步到政务区域管理地A的政务统一认证后台中。
在一些实施例中,针对级联应用登录:在登录政务区域管理地A的政务应用时,支持多个认证源,例如包括政务区域管理地A的政务统一认证后台(例如下文中的省政务认证),或者政务区域管理地B的政务统一认证后台(例如下文中的市政务认证)。
示例的,参见图5,图5是本申请实施例提供的政务服务的跨域登录认证系统的架构示意图,如图5所示,市政员工在经过级联认证后可以登录省政务应用,其中,图5中的第2步为实现级联认证的关键步骤,下面进行详细说明。
在一些实施例中,当市政员工选择的登录方式为PCweb端账号密码登录,且选择的认证源为市政务认证(即市政务的政务统一认证后台)时,省政务认证(即省政务的政务统一认证后台)可以通过市政务认证获取市政员工的身份信息,并基于所获取的身份信息将登录态写入省政务认证中,即完成了级联登录的关键部分,其中,核心逻辑包括两部分:1、在省政务网关中如何获取市政员工的用户信息,可以通过级联节点配置实现该目的,例如可以在级联节点配置中将市政务网关的地址配置到省政务认证中;2、省政务网关获取到市政员工的用户信息后,拼接成网关识别的登录态数据结构,并将登录态写入省政务网关中。
下面结合图6对上述的级联登录过程进行具体说明。
示例的,参见图6,图6是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图,将结合图6示出的步骤进行说明。
在步骤201中,市政务网关获取市政员工输入的用户账号和密码。
示例的,市政员工可以在浏览器显示的登录页面中输入自己的用户账号和密码,从而市政务网关可以获取市政员工在登录页面中输入的用户账号和密码。
在步骤202中,市政务网关将用户账号和密码发送至市政务认证。
在步骤203中,市政务认证向市政务网关返回编码。
示例的,市政务认证在接收到市政务网关发送的用户账号和密码之后进行验证,并在验证通过向市政务网关返回对应的编码(code)。
在步骤204中,市政务网关向市政务认证发送用户信息获取请求消息。
示例的,市政务网关在接收到市政务认证返回的code之后,可以将code封装到用户信息获取请求消息中,并向市政务认证发送携带code的用户信息获取请求消息。
在步骤205中,市政务认证向市政务网关返回用户信息。
在步骤206中,市政务网关向省政务认证发送用户信息。
示例的,当市政务网关确定出是级联认证时,可以将市政务认证返回的用户信息(对应于上述的用户账号的身份信息)缓存到省政务认证。
在步骤207中,市政务网关写登录态,并缓存用户信息到Redis和Cookie。
在步骤208中,市政务网关将登录态的Key发送至省政务网关。
示例的,市政务网关在获取到用户信息之后,将用户信息拼接成网关识别的登录态数据结构,并将登录态写入市政务网关中。随后还可以针对登录态生成对应的键值对,并带上登录态的键(Key)跳转到省政务网关。
在步骤209中,省政务网关向省政务认证发送用户信息获取请求消息。
示例的,省政务网关在接收到市政务网关发送的登录态的Key之后,将Key封装到用户信息获取请求消息中,以根据Key获取用户信息。
在步骤210中,省政务认证向省政务网关返回用户信息。
在步骤211中,省政务网关写登录态,并缓存用户信息到Redis和Cookie。
示例的,省政务网关在获取到用户信息之后,可以将用户信息拼接成网关识别的登录态数据结构,并将登录态写入省政务网关中。
在步骤212中,省政务网关向市政务网关发送登录态写入成功的通知消息。
在步骤213中,市政务网关向市政员工的终端设备发送跳转指令。
示例的,市政务网关在接收到省政务网关发送的登录态写入成功的通知消息之后,可以向市政员工的终端设备发送跳转指令,从而使市政员工的终端设备显示的界面跳转到应用页面。
在步骤214中,省政务网关接收市政员工发送的访问请求。
示例的,当市政员工的终端设备的界面跳转到应用页面之后,市政员工可以访问省政务应用,此时省政务网关会获取市政员工的终端设备发送的访问请求。
在步骤215中,省政务网关向省政务应用发送访问请求。
示例的,省政务网关可以在访问请求的头部(Header)插入用户信息,从而向省政务应用发送携带用户信息的访问请求,以获取相应的数据。
在步骤216中,省政务应用向省政务网关返回数据。
在步骤217中,省政务网关向市政员工返回数据。
示例的,省政务网关在接收到省政务应用返回的数据之后,可以向市政员工的终端设备返回接收到的数据,从而实现市政员工访问省政务应用的目的。
在另一些实施例中,当通过账号密码登录时,还可以将登录态写入省政务认证中,即在省政务认证中备份登录态,下面将结合图7示出的步骤具体说明上述过程。
在步骤301中,市政务网关向市政务认证发送用户账号和密码。
在步骤302中,市政务认证向市政务网关返回编码。
在步骤303中,市政务网关向市政务认证发送用户信息获取请求消息。
在步骤304中,市政务认证向市政务网关返回用户信息。
在步骤305中,市政务网关调用市政务认证中的接口。
示例的,可以在市政务网关内部调用市政务认证中的接口,该接口用于写入登录态到省政务认证中。
在步骤306中,市政务认证调用写省政务认证登录态接口。
示例的,可以在市政务认证内部调用写省政务认证登录态接口,该接口通过省政务网关转发至省政务认证。
在步骤307中,省政务网关向省政务认证发送请求消息。
示例的,省政务认证的写入登录态的接口接收到请求消息之后,会将登录态写入省政务认证中,从而可以实现市政员工使用市政务认证的账号登录省政务认证的省政务应用,即实现了市政员工的用户账号既能登录市政务应用,又能登录省政务应用的目的。
需要说明的是,图7示出的步骤308至步骤313与图6示出的步骤207至步骤212是相同的,可以参考图6的描述,本申请实施例在此不再赘述。
在另一些实施例中,当市政员工选择的登录方式为PCweb端,且认证源为市政务认证时,可以在登录界面生成市政务微信二维码,从而省政务认证可以通过市政务认证获取用户信息,并基于用户信息将登录态写入省政务认证中,即完成了级联登录的关键部分,其中,扫码登录获取用户信息是市政员工通过市政务微信扫码后,市政务微信返回用户信息给市政务网关和省政务网关,下面结合图8对上述过程进行具体说明。
示例的,参见图8,图8是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图,将结合图8示出的步骤进行说明。
在步骤401中,市政务网关接收市政员工发送的登录请求消息。
示例的,当市政员工在浏览器显示的登录页面中选择扫码登录时,可以在登录页面中生成市政务微信二维码,从而市政员工可以通过市政务微信进行扫码登录,从而市政务网关接收市政员工在扫码后发送的登录请求消息。
在步骤402中,市政务网关向市政务微信发送确认登录消息。
在步骤403中,市政务微信向市政务网关返回编码。
示例的,市政务微信在对市政务网关发送的确认登录消息中携带的信息进行验证通过后,向市政务网关返回对应的Code。
在步骤404中,市政务网关向市政务微信发送用户信息获取请求消息。
示例的,市政务网关在接收到市政务微信返回的Code之后,可以将Code封装到用户信息获取请求消息中,并将市政务微信发送携带Code的用户信息获取请求消息。
在步骤405中,市政务微信向市政务网关返回用户信息。
需要说明的是,图8中示出的步骤406至步骤417与图6中示出的步骤206至步骤217是相同的,可以参照图6的描述,本申请实施例在此不再赘述。
在一些实施例中,当市政员工选择的登录方式为客户端(例如桌面客户端或者手机客户端)登录时,与账号密码登录和扫码登录的流程不同,市政员工在使用市政务客户端登录时,会通过客户端传入的政务微信的组织机构标识(CropID)判断是否为级联登录,即通过市政务微信的CropID和省政务微信的CropID来判断当前的登录是否为级联等级。此外,在级联应用配置时,还可以配置市政务应用和省政务应用之间的映射关系,如此,可以通过省政务应用获取市政务应用,再通过市政务应用获取市政员工的身份信息,最后基于所获取的身份信息在省政务认证中写入登录态,下面结合图9对上述过程进行具体说明。
示例的,参见图9,图9是本申请实施例提供的政务服务的跨域登录认证方法的流程示意图,将结合图9示出的步骤进行说明。
在步骤501中,省政务网关接收市政务人员发送的携带市政务微信的组织机构标识的请求消息。
示例的,市政员工在使用市政务客户端进行级联登录时,可以通过客户端向省政务网关传入市政务微信的组织机构标识(例如CropID),例如可以通过用户代理(UA,UserAgent)的方式向省政务网关发送市政务微信的CropID。
在步骤502中,省政务网关判断市政务微信的组织机构标识与省政务微信的组织机构标识是否相同,当两者相同时,执行步骤503,当两者不同时,执行步骤504至步骤520。
示例的,省政务网关在接收到市政员工通过客户端传入的市政务微信的CropID之后,与省政务微信的CropID进行比较,当两者的CropID相同时,确定为非级联登录,执行后续的步骤503,当确定出两者的CropID不同时,确定为级联登录,则执行后续的步骤504至步骤520。
在步骤503中,省政务网关执行省认证流程。
示例的,当省政务微信的CropID与市政务微信的CropID相同时,省政务网关执行正常的省政务认证流程。
在步骤504中,省政务网关向省政务认证发送市政务应用标识的获取请求消息。
示例的,当省政务微信的CropID与市政务微信的CropID不同时,即级联登录,则省政务网关可以向省政务认证发送查询市政务应用的AgentID和CropID的请求消息。
在步骤505中,省政务认证向省政务网关返回市政务应用的标识。
示例的,省政务认证可以向省政务网关发送所请求的市政务应用的AgentID和CropID。
在步骤506中,省政务网关向市政务网关发送编码。
示例的,省政务网关可以通过调用开放授权协议(Open Authorization)提供的接口(例如Oauth2.0接口)隐式获取编码(Code),并将所获取的Code发送至市政务网关。
在步骤507中,市政务网关向市政务微信发送用户信息获取请求消息。
示例的,市政务网关在接收到省政务网关发送的Code之后,可以将Code封装至用户信息获取请求消息中,并向市政务微信发送携带Code的用户信息获取请求消息。
在步骤508中,市政务微信向市政务网关返回用户信息。
在步骤509中,市政务网关写登录态,并缓存用户信息到Redis和Cookie。
在步骤510中,当市政务网关确定为级联认证时,将用户信息缓存至省政务认证。
在步骤511中,市政务网关将登录态的Key发送至省政务网关。
在步骤512中,省政务网关向省政务认证发送用户信息获取请求消息。
在步骤513中,省政务认证向省政务网关返回用户信息。
在步骤514中,省政务网关写登录态,并缓存用户信息到Redis和Cookie。
在步骤515中,省政务网关将登录态写入成功的通知消息发送至市政务网关。
在步骤516中,市政务网关向市政员工发送跳转指令。
示例的,当市政务网关接收到省政务网关发送的登录态写入成功的通知消息之后,可以向市政员工的终端设备发送跳转指令,以控制市政员工的终端设备跳转至应用页面。
在步骤517中,省政务网关接收市政员工发送的访问请求。
在步骤518中,省政务网关将访问请求转发至省政务应用。
在步骤519中,省政务应用向省政务网关返回数据。
在步骤520中,省政务网关向市政员工返回数据。
示例的,省政务网关在接收到省政务应用返回的数据之后,可以将接收到的数据发送至市政员工的终端设备,从而实现市政员工访问省政务应用的目的。
本申请实施例提供的政务服务的跨域登录认证方法,实现了一个政务区域管理地A的政务应用的级联认证部署后,即可使用另一个政务区域管理地B的政务人员的账号登录政务区域管理地A的政务应用,达到单次单地部署,多地灵活登录的目的,如此,一方面极大地提高了政务应用在多级行政区划应用场景下分发的效率,另一方面也降低了政务应用在多级行政区划应用场景下的开发成本。
下面继续说明本申请实施例提供的政务服务的跨域登录认证装置543的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器540的政务服务的跨域登录认证装置543中的软件模块可以包括:同步模块5431、接收模块5432、获取模块5433、生成模块5434和写入模块5435。
同步模块5431,用于将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;接收模块5432,用于接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,其中,第二政务服务区域客户端是用于使用第二政务服务区域的政务服务的客户端;获取模块5433,用于通过第一认证服务器获取用户账号的身份信息;生成模块5434,用于基于身份信息生成能够被第二政务服务区域对应的第二网关识别的登录态数据结构;写入模块5435,用于基于登录态数据结构,将用户账号对应的登录态写入第二网关,其中,登录态用于供第二网关响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态。
在一些实施例中,同步模块5431,还用于将第一政务服务区域对应的第一网关的地址同步到第二认证服务器;获取模块5433,还用于从第一网关获取用户账号的身份信息,其中,身份信息是第一认证服务器在对第一网关发送的用户账号和密码验证通过后,返回给第一网关的。
在一些实施例中,接收模块5432,还用于接收第二网关发送的携带键的身份信息获取请求消息,其中,键是第一网关在接收到第一认证服务器返回的用户账号的身份信息后生成,且是由第一网关发送给第二网关的;政务服务的跨域登录认证装置543还包括发送模块5436,用于响应于身份信息获取请求消息,向第二网关返回用户账号的身份信息,其中,身份信息用于供第二网关生成登录态数据结构。
在一些实施例中,发送模块5436,还用于通过第二网关向第一网关发送登录态写入成功的通知消息,其中,通知消息用于供第一网关控制终端设备从登录页面跳转至第二政务服务区域客户端的详情页面。
在一些实施例中,接收模块5432,还用于接收到第二网关发送的写入登录态请求消息;写入模块5435,还用于响应于写入登录态请求消息,将用户账号对应的登录态写入第二认证服务器,其中,写入登录态请求消息是第一网关通过调用第二认证服务器提供的接口向第一认证服务器发送,并经由第一认证服务器转发至第二网关的。
在一些实施例中,接收模块5432,还用于接收第一政务服务区域对应的第一网关发送的用户账号的身份信息;其中,身份信息是第一政务服务区域客户端向第一网关发送的,且是由第一政务服务区域客户端在接收到第一网关发送的携带编码的身份信息获取请求消息之后发送的,编码是第一政务服务区域客户端在接收到第一网关发送的确认登录请求消息之后返回给第一网关的,第一政务服务区域客户端是用于使用第一政务服务区域的政务服务的客户端。
在一些实施例中,获取模块5433,还用于当第一政务服务区域客户端的组织机构标识与第二政务服务区域客户端的组织机构标识不同时,从第一政务服务区域对应的第一网关获取用户账号的身份信息;其中,身份信息是第一政务服务区域客户端在接收到第一网关发送的携带编码的身份信息获取请求消息之后向第一网关发送的,且编码是第二网关基于第二认证服务器返回的第一政务服务区域客户端的标识生成,并发送给第一网关的,第一政务服务区域客户端是用于使用第一政务服务区域的政务服务的客户端。
在一些实施例中,同步模块5431,还用于将第一政务服务区域客户端的域名同步到第二认证服务器,政务服务的跨域登录认证装置543还包括建立模块5437,用于建立第一政务服务区域客户端与第二政务服务区域客户端之间的映射关系,其中,映射关系用于供第二认证服务器基于第二政务服务区域客户端获取第一政务服务区域客户端的标识。
在一些实施例中,同步模块5431,还用于执行以下处理至少之一:将第一政务服务区域客户端的密钥和标识同步到第二认证服务器;将第一政务服务区域对应的通讯录同步到第二认证服务器。
需要说明的是,本申请实施例中关于装置的描述,与上文中政务服务的跨域登录认证方法的实现是类似的,并具有相似的有益效果,因此不做赘述。对于本申请实施例提供的政务服务的跨域登录认证装置中未尽的技术细节,可以根据图3、图4A、或图4B任一附图的说明而理解。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令(即可执行指令),该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本申请实施例上述的政务服务的跨域登录认证方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3、图4A、或图4B示出的政务服务的跨域登录认证方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
综上所述,本申请实施例通过将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器,如此,当接收到第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求时,可以通过第一认证服务器获取用户账号的身份信息,并基于所获取的身份信息生成登录态数据结构,随后可以基于登录态数据结构,将用户账号对应的登录态写入第二政务服务区域对应的第二网关,以使第二网关在响应用户账号针对第二政务服务区域客户端的访问请求时,将用户账号认证为已登录状态,从而实现第一政务服务区域的政务人员能够使用自身的用户账号登录第二政务服务区域客户端。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (14)
1.一种政务服务的跨域登录认证方法,其特征在于,所述方法包括:
将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;
接收到所述第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,其中,所述第二政务服务区域客户端是用于使用所述第二政务服务区域的政务服务的客户端;
通过所述第一认证服务器获取所述用户账号的身份信息,并基于所述身份信息生成能够被所述第二政务服务区域对应的第二网关识别的登录态数据结构;
基于所述登录态数据结构,将所述用户账号对应的登录态写入所述第二网关,其中,所述登录态用于供所述第二网关响应所述用户账号针对所述第二政务服务区域客户端的访问请求时,将所述用户账号认证为已登录状态。
2.根据权利要求1所述的方法,其特征在于,当所述登录请求对应的登录方式为网页端的账号密码登录时,所述通过所述第一认证服务器获取所述用户账号的身份信息,包括:
将所述第一政务服务区域对应的第一网关的地址同步到所述第二认证服务器;
从所述第一网关获取所述用户账号的身份信息,其中,所述身份信息是所述第一认证服务器在对所述第一网关发送的用户账号和密码验证通过后,返回给所述第一网关的。
3.根据权利要求2所述的方法,其特征在于,所述基于所述身份信息生成能够被所述第二政务服务区域对应的第二网关识别的登录态数据结构,包括:
接收所述第二网关发送的携带键的身份信息获取请求消息,其中,所述键是所述第一网关在接收到所述第一认证服务器返回的所述用户账号的身份信息后生成,且是由所述第一网关发送给所述第二网关的;
响应于所述身份信息获取请求消息,向所述第二网关返回所述用户账号的身份信息,其中,所述身份信息用于供所述第二网关生成所述登录态数据结构。
4.根据权利要求2所述的方法,其特征在于,在将所述用户账号对应的登录态写入所述第二网关之后,所述方法还包括:
通过所述第二网关向所述第一网关发送所述登录态写入成功的通知消息,其中,所述通知消息用于供所述第一网关控制终端设备从登录页面跳转至所述第二政务服务区域客户端的详情页面。
5.根据权利要求2至4任一项所述的方法,其特征在于,所述方法还包括:
接收到所述第二网关发送的写入登录态请求消息;
响应于所述写入登录态请求消息,将所述用户账号对应的登录态写入所述第二认证服务器,其中,所述写入登录态请求消息是所述第一网关通过调用所述第二认证服务器提供的接口向所述第一认证服务器发送,并经由所述第一认证服务器转发至所述第二网关的。
6.根据权利要求1所述的方法,其特征在于,当所述登录请求对应的登录方式为网页端的扫码登录时,所述方法还包括:
接收所述第一政务服务区域对应的第一网关发送的所述用户账号的身份信息;
其中,所述身份信息是所述第一政务服务区域客户端向所述第一网关发送的,且是由所述第一政务服务区域客户端在接收到所述第一网关发送的携带编码的身份信息获取请求消息之后发送的,所述编码是所述第一政务服务区域客户端在接收到所述第一网关发送的确认登录请求消息之后返回给所述第一网关的,所述第一政务服务区域客户端是用于使用所述第一政务服务区域的政务服务的客户端。
7.根据权利要求1所述的方法,其特征在于,当所述登录请求对应的登录方式为通过客户端登录时,所述方法还包括:
当第一政务服务区域客户端的组织机构标识与所述第二政务服务区域客户端的组织机构标识不同时,从所述第一政务服务区域对应的第一网关获取所述用户账号的身份信息;
其中,所述身份信息是所述第一政务服务区域客户端在接收到所述第一网关发送的携带编码的身份信息获取请求消息之后向所述第一网关发送的,且所述编码是所述第二网关基于所述第二认证服务器返回的所述第一政务服务区域客户端的标识生成,并发送给所述第一网关的,所述第一政务服务区域客户端是用于使用所述第一政务服务区域的政务服务的客户端。
8.根据权利要求7所述的方法,其特征在于,在从所述第一政务服务区域对应的第一网关获取所述用户账号的身份信息之前,所述方法还包括:
将所述第一政务服务区域客户端的域名同步到所述第二认证服务器,并建立所述第一政务服务区域客户端与所述第二政务服务区域客户端之间的映射关系,其中,所述映射关系用于供所述第二认证服务器基于所述第二政务服务区域客户端获取所述第一政务服务区域客户端的标识。
9.根据权利要求1所述的方法,其特征在于,在将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器之后,所述方法还包括:
执行以下处理至少之一:
将第一政务服务区域客户端的密钥和标识同步到所述第二认证服务器;
将所述第一政务服务区域对应的通讯录同步到所述第二认证服务器。
10.根据权利要求1所述的方法,其特征在于,
所述登录态数据结构包括用户类型;
其中,所述用户类型用于供所述第二认证服务器确定所述用户账号的访问权限,所述访问权限用于表征基于所述用户账号能够访问的所述第二政务服务区域客户端的范围。
11.一种政务服务的跨域登录认证装置,其特征在于,所述装置包括:
同步模块,用于将第一政务服务区域对应的第一认证服务器的域名同步到第二政务服务区域对应的第二认证服务器;
接收模块,用于接收到所述第一政务服务区域的用户账号针对第二政务服务区域客户端的登录请求,其中,所述第二政务服务区域客户端是用于使用所述第二政务服务区域的政务服务的客户端;
获取模块,用于通过所述第一认证服务器获取所述用户账号的身份信息;
生成模块,用于基于所述身份信息生成能够被所述第二政务服务区域对应的第二网关识别的登录态数据结构;
写入模块,用于基于所述登录态数据结构,将所述用户账号对应的登录态写入所述第二网关,其中,所述登录态用于供所述第二网关响应所述用户账号针对所述第二政务服务区域客户端的访问请求时,将所述用户账号认证为已登录状态。
12.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至10任一项所述的政务服务的跨域登录认证方法。
13.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至10任一项所述的政务服务的跨域登录认证方法。
14.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时,实现权利要求1至10任一项所述的政务服务的跨域登录认证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210053013.XA CN116506136A (zh) | 2022-01-18 | 2022-01-18 | 政务服务的跨域登录认证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210053013.XA CN116506136A (zh) | 2022-01-18 | 2022-01-18 | 政务服务的跨域登录认证方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116506136A true CN116506136A (zh) | 2023-07-28 |
Family
ID=87327141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210053013.XA Pending CN116506136A (zh) | 2022-01-18 | 2022-01-18 | 政务服务的跨域登录认证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116506136A (zh) |
-
2022
- 2022-01-18 CN CN202210053013.XA patent/CN116506136A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108650262B (zh) | 一种基于微服务架构的云平台扩展方法及系统 | |
CN108901022B (zh) | 一种微服务统一鉴权方法及网关 | |
US11088903B2 (en) | Hybrid cloud network configuration management | |
CN110999213B (zh) | 混合认证系统和方法 | |
US10911426B2 (en) | Custom authenticator for enterprise web application | |
US9432353B2 (en) | Serialized authentication and authorization services | |
CN110278187B (zh) | 多终端单点登录方法、系统、同步服务器及介质 | |
CN113630377B (zh) | 托管移动设备的单点登录 | |
CN112613010A (zh) | 一种认证服务方法、装置、服务器及认证服务系统 | |
CN103930897A (zh) | 移动应用、单点登录管理 | |
CN108712372B (zh) | 一种客户端接入web第三方登录的方法及系统 | |
CN111786969A (zh) | 单点登录方法、装置及系统 | |
CN111651747B (zh) | 登录票据同步系统及方法、相关设备 | |
KR20170076861A (ko) | 기업용 클라우드 서비스의 접근 통제 방법 | |
CN111818088A (zh) | 授权模式管理方法、装置、计算机设备及可读存储介质 | |
US11722481B2 (en) | Multiple identity provider authentication system | |
CN113761509B (zh) | iframe验证登录方法及装置 | |
CN103069741A (zh) | 凭据认证方法及单点登录服务器 | |
CN116506136A (zh) | 政务服务的跨域登录认证方法及装置 | |
CN112597118B (zh) | 一种共享文件的添加方法及装置 | |
CN115329297A (zh) | 基于区块链的应用互信方法、装置、设备及存储介质 | |
CN113992446A (zh) | 一种跨域浏览器用户认证方法、系统及计算机储存介质 | |
CN115951884A (zh) | 一种信息处理方法、装置及微前端架构系统 | |
CN112632491A (zh) | 一种实现多信息系统共用账号体系的方法 | |
CN112929453A (zh) | 一种共享session数据的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |