CN114024688A - 网络请求方法、网络认证方法、终端设备和服务端 - Google Patents

网络请求方法、网络认证方法、终端设备和服务端 Download PDF

Info

Publication number
CN114024688A
CN114024688A CN202111435419.6A CN202111435419A CN114024688A CN 114024688 A CN114024688 A CN 114024688A CN 202111435419 A CN202111435419 A CN 202111435419A CN 114024688 A CN114024688 A CN 114024688A
Authority
CN
China
Prior art keywords
authentication
identity authentication
network
user
token
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
Application number
CN202111435419.6A
Other languages
English (en)
Inventor
张剑锋
苏景博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Jinxin Software Co Ltd
Original Assignee
Zhongdian Jinxin Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongdian Jinxin Software Co Ltd filed Critical Zhongdian Jinxin Software Co Ltd
Priority to CN202111435419.6A priority Critical patent/CN114024688A/zh
Publication of CN114024688A publication Critical patent/CN114024688A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

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)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请提供一种网络请求方法、网络认证方法、终端设备和服务端,获取访问业务系统需调用的服务端网络接口的网络认证等级;并根据用户的注册信息,确定在网络认证等级下对用户进行访问权限认证所需的至少一种身份认证方式;获取每种身份认证方式需认证的至少一个身份认证参数;将基于每种身份认证方式的至少一个身份认证参数以及网络接口的接口认证参数所生成的网络请求令牌发送至服务端,以供服务端对用户是否具有访问权限进行认证。这样,便可通过服务端的网络接口对用户是否具有访问权限进行认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。

Description

网络请求方法、网络认证方法、终端设备和服务端
技术领域
本申请涉及通信技术领域,具体而言,涉及一种网络请求方法、网络认证方法、终端设备和服务端。
背景技术
随着网络通信技术的日趋成熟,越来越多企业在处理相关业务时需依赖于网络,且企业中各部门员工之间的交流也需依赖于网络,因此,在终端设备上进行网络通信的安全性也逐渐地受到了大家的重视,为了保证网络通信的安全性对访问者的身份进行认证是必不可少的步骤。
目前,在众多的网络框架中,例如,OKhttp网络框架,并不会为使用者提供身份认证功能,若使用者想要在该网络框架的基础上实现身份认证功能,则需更改该网络框架的所应用的终端设备的前端程序代码,所以,使用该网络框架的企业需通过具有更改程序代码能力的开发人员,对已有网络框架的程序代码进行修改,以增加身份认证功能,由于,开发人员的水平参差不齐,身份认证功能的代码编写质量无法得到保证,并且,还会由于开发人员在开发程序时所使用的开发组件的不同,在更改了前端程序代码后使得终端设备的系统出现不兼容的情况,致使开发人员的开发难度较大,开发成本较高。
发明内容
为了解决上述问题,本申请实施例提供一种网络请求方法、网络认证方法、终端设备和服务端,在用户访问业务系统时,无需修改用户所使用的终端设备的前端程序代码,通过服务端的网络接口对用户是否具有访问权限进行认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
本申请实施例提供了一种网络请求方法,应用于终端设备,所述网络请求方法包括:
响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级;
根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;
获取每种身份认证方式需认证的至少一个身份认证参数;
基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌;
将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
进一步的,所述身份认证方式包括哈希运算消息认证、关键字认证、数据网络令牌认证、角色访问控制认证以及基本访问认证中的一种或多种;所述获取每种身份认证方式需认证的至少一个身份认证参数,包括:
当所述身份认证方式为所述哈希运算消息认证时,获取所述哈希运算消息认证所需的哈希运算消息认证码以及密钥;
当所述身份认证方式为关键字认证时,获取所述关键字认证所需认证的目标关键字;
当所述身份认证方式为数据网络令牌认证时,获取所述数据网络令牌认证所需认证的数据关键字;
当所述身份认证方式为角色访问控制认证时,获取所述用户的用户信息;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;
当所述身份认证方式为基本访问认证时,获取所述用户的登录信息;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。
进一步的,所述基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌,包括:
基于所述接口认证参数生成初始请求令牌;
针对于每种身份认证方式,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌;
将每种身份认证方式的身份认证令牌封装在所述初始请求令牌的请求头中,得到所述网络请求令牌。
进一步的,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌,包括:
利用预设的编码方式对所述至少一个身份认证参数进行编码,得到该身份认证方式对应的身份认证令牌。
进一步的,所述获取每种身份认证方式需认证的至少一个身份认证参数,包括:
为所述用户提供参数输入界面,接收所述用户在所述参数输入界面中输入的至少一个身份认证参数;和/或,
从所述用户的登录系统中,获取所述至少一个身份认证参数。
本申请实施例提供了一种网络认证方法,应用于服务端,所述网络认证方法包括:
接收终端设备发送的网络请求令牌;
根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;
针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;
基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;
当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
进一步的,所述根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式,包括:
解析所述网络请求令牌,得到接口认证参数;
基于所述接口认证参数,确定访问业务系统需调用的网络接口,并确定所述网络接口的至少一种身份认证方式。
进一步的,所述根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式,包括:
解析所述网络请求令牌,得到至少一个身份认证参数;
根据所述至少一个身份认证参数,从多个候选认证方式中确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
进一步的,所述认证所述身份认证令牌,确定该身份认证方式的认证结果,包括:
获取该身份认证方式对应的已保存的标准认证令牌;
按照每个身份认证参数的比对优先级,分别将所述身份认证令牌所携带的每个身份认证参数逐一与所述标准认证令牌中的每个标准认证参数进行比较,确定该身份认证方式的认证结果。
本申请实施例还提供了一种终端设备,所述终端设备包括:
等级确定模块,用于响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级;
第一方式确定模块,用于根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;
参数获取模块,用于获取每种身份认证方式需认证的至少一个身份认证参数;
令牌生成模块,用于基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌;
令牌发送模块,用于将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
进一步的,所述身份认证方式包括哈希运算消息认证、关键字认证、数据网络令牌认证、角色访问控制认证以及基本访问认证中的一种或多种;所述参数获取模块在用于获取每种身份认证方式需认证的至少一个身份认证参数时,所述参数获取模块用于:
当所述身份认证方式为所述哈希运算消息认证时,获取所述哈希运算消息认证所需的哈希运算消息认证码以及密钥;
当所述身份认证方式为关键字认证时,获取所述关键字认证所需认证的目标关键字;
当所述身份认证方式为数据网络令牌认证时,获取所述数据网络令牌认证所需认证的数据关键字;
当所述身份认证方式为角色访问控制认证时,获取所述用户的用户信息;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;
当所述身份认证方式为基本访问认证时,获取所述用户的登录信息;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。
进一步的,所述令牌生成模块在用于基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌时,所述令牌生成模块用于:
基于所述接口认证参数生成初始请求令牌;
针对于每种身份认证方式,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌;
将每种身份认证方式的身份认证令牌封装在所述初始请求令牌的请求头中,得到所述网络请求令牌。
进一步的,所述令牌生成模块在用于基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌时,所述令牌生成模块用于:
利用预设的编码方式对所述至少一个身份认证参数进行编码,得到该身份认证方式对应的身份认证令牌。
进一步的,所述参数获取模块在用于获取每种身份认证方式需认证的至少一个身份认证参数时,所述参数获取模块用于:
为所述用户提供参数输入界面,接收所述用户在所述参数输入界面中输入的至少一个身份认证参数;和/或,
从所述用户的登录系统中,获取所述至少一个身份认证参数。
本申请实施例还提供了一种终端设备,所述终端设备包括:
令牌接收模块,用于接收终端设备发送的网络请求令牌;
第二方式确定模块,用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;
参数确定模块,用于针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;
结果认证模块,用于基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;
内容反馈模块,用于当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
进一步的,所述第二方式确定模块在用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式时,所述第二方式确定模块用于:
解析所述网络请求令牌,得到接口认证参数;
基于所述接口认证参数,确定访问业务系统需调用的网络接口,并确定所述网络接口的至少一种身份认证方式。
进一步的,所述第二方式确定模块在用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式时,所述第二方式确定模块用于:
解析所述网络请求令牌,得到至少一个身份认证参数;
根据所述至少一个身份认证参数,从多个候选认证方式中确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
进一步的,所述参数确定模块在用于认证所述身份认证令牌,确定该身份认证方式的认证结果时,所述参数确定模块用于:
获取该身份认证方式对应的已保存的标准认证令牌;
按照每个身份认证参数的比对优先级,分别将所述身份认证令牌所携带的每个身份认证参数逐一与所述标准认证令牌中的每个标准认证参数进行比较,确定该身份认证方式的认证结果。
本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的网络请求方法的步骤和/或上述的网络认证方法的步骤。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的网络请求方法的步骤和/或上述的网络认证方法的步骤。
本申请实施例提供的网络请求方法、网络认证方法、终端设备和服务端,响应于用户针对业务系统的访问请求,获取访问业务系统需调用的服务端网络接口的网络认证等级;并根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;获取每种身份认证方式需认证的至少一个身份认证参数;基于每种身份认证方式的至少一个身份认证参数以及网络接口的接口认证参数,生成网络请求令牌;将网络请求令牌发送至服务端,以供服务端通过所述至少一种身份认证方式对用户是否具有所述业务系统的访问权限进行认证。这样,在用户访问业务系统时,无需修改用户所使用的终端设备的前端程序代码,通过服务端的网络接口对用户是否具有访问权限进行认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种网络请求方法的流程图;
图2为本申请实施例提供的一种网络认证方法的流程图;
图3为本申请实施例所提供的一种终端设备的结构示意图;
图4为本申请实施例所提供的一种服务端的结构示意图;
图5为本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述。
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
经研究发现,在众多的网络框架中,例如,OKhttp网络框架,并不会为使用者提供身份认证功能,若使用者想要在该网络框架的基础上实现身份认证功能,则需更改该网络框架的所应用的终端设备的前端程序代码,并再次对和更改后的前端程序代码进行封装,以在现有的网络框架的基础上增加身份验证功能,所以,使用该网络框架的企业需通过具有更改程序代码能力的开发人员,对已有网络框架的程序代码进行修改,增加身份认证功能,由于,开发人员的水平参差不齐,身份认证功能的代码编写质量无法得到保证,并且,还会由于开发人员在开发程序时所使用的开发组件的不同,在更改了前端程序代码后使得终端设备的系统出现不兼容的情况,致使开发人员的开发难度较大,开发成本较高。
以上相关技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。
请参考图1,图1为本申请实施例提供的一种网络请求方法的流程图。所述网络请求方法应用于终端设备,如图1所示,所述网络请求方法包括:
步骤S101、响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级。
步骤S102、根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式。
步骤S103、获取每种身份认证方式需认证的至少一个身份认证参数。
步骤S104、基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌。
步骤S105、将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
在一些应用场景中,终端设备可以根据用户的触发操作来确定用户是否具有访问业务系统的需求。例如,用户可以在终端设备上通过点击按钮A,向终端设备发起访问按钮A所对应的业务系统的访问请求。
目前,大多数的业务系统在访问时均需要经过身份验证,并且由于终端设备想要实现对于用户身份的验证,需尝试改变终端设备的前端程序代码,因此,为了避免在终端设备的现有网络框架的基础上增加新的程序代码,本申请将对用户身份进行验证的工作放置在服务端。
因为,在用户访问业务系统时,需调用服务端的网络接口来实现,所以,本申请便直接通过网络接口来实现用户身份的验证,以此来避免修改终端设备的前端程序代码,验证时仅需要将用户的身份信息以令牌的形式发送至网络接口即可。
在步骤S101中,响应于用户针对业务系统所发出的访问请求,获取访问业务系统时需调用的网络接口的网络认证等级,并按照网络认证等级确定是否需要对用户的访问权限进行认证。
若网络接口的网络认证等级较低,例如,网络认证等级为0级,则说明无需对用户的访问权限进行认证,即无需对用户的身份进行认证,用户可直接访问所请求访问的业务系统。
若网路接口的网络认证等级较高(例如,大于0级),则还需要根据网络认证等级确定出身份认证的方式,并通过相应的身份认证方式来实现用户身份的验证;或者,还可以根据用户的注册信息,确定用户在相应的网络认证等级下是否需要进行访问权限的认证,以此可针对于不同的用户提供相应的访问权限认证机制。
随着网络认证等级的增加,对用户身份进行认证的认证方式的数量也就随之增多,在一些应用场景中,身份认证方式可以包括下述五种方式中的一种或多种:哈希运算消息认证(Hmac)、关键字认证(KeyAuth)、数据网络令牌认证(JwtAuth)、角色访问控制认证(WolfAuth)以及基本访问认证(BasicAuth);当网络认证等级大于0级时,则说明在用户的访问该网络接口所调用的业务系统时需要进行访问权限的认证;在不同的网络认证等级下需采取不同的身份认证方式,示例性的,当网络认证等级为1级时,需要对用户身份进行哈希运算消息认证(Hash-based MessageAuthentication Code,简称Hmac);当网络认证等级为2级时,需要对用户身份进行关键字认证(KeyAuth)和数据网络令牌认证(JwtAuth)等等。
其中,哈希运算消息认证(Hmac)可以视为在配置哈希运算消息认证权限时,用以在该认证方式下标识网络请求的身份的参数;关键字认证(KeyAuth)可以视为在配置关键字认证权限时,用以在该认证方式下标识网络请求的身份的参数;数据网络令牌认证(JwtAuth)可以视为在配置JwtAuth权限时,用以在该认证方式下标识网络请求的身份的参数;角色访问控制认证(WolfAuth)可以视为在配置WolfAuth权限时,用以在该认证方式下标识网络请求的身份的参数;基本访问认证(BasicAuth)可以视为在配置BasicAuth权限时,用以在该认证方式下标识网络请求的身份的参数。这里,Hmac、KeyAuth、JwtAuth、WolfAuth以及BasicAuth是本领域技术人员所周知的身份认证类型,开发人员可以根据实际情况配置对应的身份认证参数。
在步骤S102中,可根据用户的注册信息,确定在网络接口的网络认证等级下是否需要对用户进行访问权限的认证;若需要,进一步地根据该用户的注册信息,确定在该网络认证等级下需要对该用户进行访问权限认证时所需的至少一种身份认证方式。
其中,所述身份认证方式包括哈希运算消息认证、关键字认证、数据网络令牌认证、角色访问控制认证以及基本访问认证中的一种或多种。
这里,对于不同的用户来说,即使不同用户所要求访问的业务系统相同,访问业务系统时需调用的网络接口相同,且具有相同的网络认证等级,也会由于用户的注册信息的不同,使得不同用户所需要进行的身份认证方式存在区别。
具体的,可根据用户的注册信息确定用户的访问级别,根据访问级别与网络认证等级之间的对应关系,来确定在不同网络认证等级下对该用户进行访问权限认证所采取的至少一种身份认证方式;示例性的,若该用户具有较高的访问级别,则仅需要在高级别的网络认证等级下才需要对该用户进行访问权限认证;例如,当用户的访问级别为3级时,仅需要在3级及以上等级的网络认证等级下,对该用户进行访问权限认证,且不同网络认证等级下采取得身份认证方式也并不相同,在3级的网络认证等级下仅需采用一种身份认证方式对该用户进行认证,在4级的网络认证等级下需采取两种身份认证方式等等;相应的,当用户的访问级别为2级时,需要在3级的网络认证等级下,采用两种身份认证方式对该用户进行访问权限认证。
这里,访问等级与网络认证等级之间具有相应的关联关系,在用户注册之前便已经设置好,需认证时终端设备便能够结合用户的注册信息以及需调用的网络接口的相关信息确定出认证时所采用的身份认证方式。
步骤S103中,若确定需采取至少一种身份认证方式对用户的访问权限进行认证,则终端设备可自行获取每种身份认证方式需认证的至少一个身份认证参数,以将至少一个身份认证参数发送至服务端,供服务端进行认证。
具体的,当所述身份认证方式为所述哈希运算消息认证时,获取所述哈希运算消息认证所需的哈希运算消息认证码以及密钥;在一些应用场景中,密钥例如可以为服务端中信息内容所在的网页的链接、信息内容的生成日期等信息的组合。
当所述身份认证方式为关键字认证时,获取所述关键字认证所需认证的目标关键字;这里的关键字例如可以为用户编号。
当所述身份认证方式为数据网络令牌认证时,获取所述数据网络令牌认证所需认证的数据关键字;这里的目标关键字例如可以为用户的身份证号码。
当所述身份认证方式为角色访问控制认证时,获取所述用户的用户信息;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;这里,上述应用身份信息例如可以是应用程序的身份标识码;用户登录信息例如可以是用户在使用应用程序时,注册的用户名称,以用于之后登录该应用程序所用;登录密码例如可以是数字、字符的组合。
当所述身份认证方式为基本访问认证时,获取所述用户的登录信息;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。这里,登录用户信息例如可以是用户在使用应用程序时,注册的用户名称,以用于之后登录该应用程序所用;登录密码例如可以是数字、字符的组合。
由于,本申请采取后端(即服务端)的认证方式,所以,需将服务端认证时所需认证的至少一个身份认证参数以令牌的形式发送至后端,以便后端对至少一个身份认证参数进行认证。
应当说明的是,在配置每一种权限时,开发人员可以选择上述提供的身份认证参数,也可以根据实际情况进行适应性调整。
在一些可选的实现方式中,身份认证方式配置在对应的网络接口中,通过注解方式进行配置。
这里,开发人员可以将对应的身份认证参数配置在网络请求所对应的网络接口中,以完成身份认证方式的配置。这样,在接收到网络请求时,可以调用相应的网络接口,继而可以通过网络接口进行用户访问权限的认证。在一些应用场景中,开发人员可以在安卓系统的原生网络中调用该接口,也可以通过桥接方式供内嵌在安卓系统中的诸如网页、小程序等调用。
通过注解方式配置时,开发人员可以将对应的身份认证参数直接配置在网络请求中,以简化网络调用流程,减轻样板代码的编写工作。
在一种实施方式中,步骤S103包括:为所述用户提供参数输入界面,接收所述用户在所述参数输入界面中输入的至少一个身份认证参数;和/或,从所述用户的登录系统中,获取所述至少一个身份认证参数。
该步骤中,在获取每种身份认证方式需认证的至少一个身份认证参数时,可在用户所使用的终端设备的显示屏上为用户提供参数输入界面,以使用户能够在参数输入界面中输入至少一个身份认证参数,接收用户在参数输入界面中所输入对的至少一个身份认证参数;
或者,还可直接从用户的登录系统中直接获取用于认证的至少一个身份认证参数,减少了用户的输入过程,进而,降低访问权限认证的复杂程度。
在步骤S104中,在获取到需服务端认证的至少一个身份认证参数后,将至少一个身份认证参数结合所调用的网络接口的接口认证参数,以网络请求令牌的形式发送给服务端,以供服务端对用户是否具有业务系统的访问权限进行认证。
这里,接口认证参数能够表明用户访问业务系统的访问路径参数,根据访问路径参数便可知道用户访问业务系统所需调用的网络接口,进而,便能够知道网络接口的网络认证等级。
在一种实施方式中,步骤S104包括:基于所述接口认证参数生成初始请求令牌;针对于每种身份认证方式,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌;将每种身份认证方式的身份认证令牌封装在所述初始请求令牌的请求头中,得到所述网络请求令牌。
其中,网络请求令牌中可以包括符号、数字、字母等。
这里,针对于每种身份认证方式,基于该身份认证方式所需认证的至少一个身份认证参数,生成表征该身份认证方式的唯一身份认证令牌,进而,在认证时便可以直接在该身份认证方式下使用该身份认证方式所对应的身份认证令牌,进行访问权限上的认证即可,无需临时在携带有全部数据的网络请求令牌中逐一的寻找需在该身份认证方式下进行认证的身份认证参数,节省了访问权限认证的时间。
为了使得服务端能够及时且准确地确定出用户访问业务系统需调用的网络接口,在生成网络请求令牌时还需要将接口认证参数添加在网络请求令牌中,以清楚的指示出访问业务系统的途径;
具体的,首先,在用户发起访问业务系统的访问请求时,基于能够表明用户访问业务系统的途径的接口认证参数生成初始请求令牌,即,在用户发起访问请求时,向访问请求中添加接口认证参数,得到初始请求令牌;然后,针对于每种身份认证方式,基于该身份认证方式所需认证的至少一个身份认证参数,生成该身份认证方式的身份认证令牌;最后,逐一将每种身份认证方式的身份认证令牌封装在初始请求令牌的请求头中,得到网络请求令牌。
在一种实施方式中,所述基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌,包括:利用预设的编码方式对所述至少一个身份认证参数进行编码,得到该身份认证方式对应的身份认证令牌。
该步骤中,对于生成每种身份认证方式对应的方式,可以采用每种身份认证方式对应预设的编码方式,来对该身份认证方式需认证的至少一个身份认证参数进行编码,以得到该身份认证方式对应的身份认证令牌。
示例性的,当身份认证方式为哈希运算消息认证(Hmac),具体的编码过程如下:
Figure BDA0003381604480000161
Figure BDA0003381604480000171
在一些应用场景中,密钥例如可以封装在字符“signing_string”中,具体的,signing_string例如可以通过字符串得到,该字符串例如可以为:HTTPMethod+\n+HTTPURI+\n+canonical_query_string+\n+access_key+\n+Date+\n+signed_headers_string。其中,Http Method为请求方法;Http url为请求路径;Canonical_query_string为对查询参数编码后的结果;Access_key为访问的密钥;Date为请求头中的时间数据;Signed_headers_string为从请求头中获取客户端制定的字段,并按顺序拼接字符串的结果。
当身份认证方式为关键字认证(KeyAuth),具体的编码过程如下:
Figure BDA0003381604480000172
在步骤S105中,在生成了网络请求令牌后,将网络请求令牌发送至服务端,以使服务端从网络请求令牌中识别出每种身份认证方式所需认证的至少一种身份认证参数,进而,使得服务端可以通过至少一种身份认证方式实现用户是否具有访问业务系统的访问权限的认证。
本申请实施例提供的网络请求方法,应用于终端设备,响应于用户针对业务系统的访问请求,获取访问业务系统需调用的服务端网络接口的网络认证等级;并根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;获取每种身份认证方式需认证的至少一个身份认证参数;基于每种身份认证方式的至少一个身份认证参数以及网络接口的接口认证参数,生成网络请求令牌;将网络请求令牌发送至服务端,以供服务端通过所述至少一种身份认证方式对用户是否具有所述业务系统的访问权限进行认证。这样,在用户访问业务系统时,无需修改用户所使用的终端设备的前端程序代码,通过服务端的网络接口对用户是否具有访问权限进行认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
请参阅图2,图2为本申请实施例所提供的网络认证方法的流程图。所述网络认证方法应用于服务端;如图2中所示,本申请实施例提供的网络认证方法,包括:
步骤S201、接收终端设备发送的网络请求令牌。
步骤S202、根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
步骤S203、针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数。
步骤S204、基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果。
步骤S205、当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
在步骤S202中,当服务端接收到终端设备所发送的网络请求令牌后,根据网络请求令牌,确定出用户访问业务系统时所需调用的网络接口,进而,根据该网络接口的网络认证等级,确定该用户在该网络认证等级下进行访问权限认证需采取的至少一种身份认证方式。
在一种实施方式中,步骤S202包括:解析所述网络请求令牌,得到接口认证参数;基于所述接口认证参数,确定访问业务系统需调用的网络接口,并确定所述网络接口的至少一种身份认证方式。
该步骤中,服务端可通过解析来自终端设备的网络请求令牌,确定出网络请求令牌中所携带的接口认证参数;进而,根据接口认证参数,确定用户访问业务系统的途径,确定出用户访问业务系统所需调用的网络接口,从而,确定在该网络接口的网络认证等级下,对用户进行访问权限认证需采取的至少一种身份认证方式。
在另一种实施方式中,步骤S202包括:解析所述网络请求令牌,得到至少一个身份认证参数;根据所述至少一个身份认证参数,从多个候选认证方式中确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
在该步骤中,解析来自终端设备的网络请求令牌,确定出网络请求令牌所携带的至少一个身份认证参数,可通过识别每个身份认证参数的属性,和/或组合各个身份认证参数,确定出对用户的访问权限进行认证时需采取的至少一种身份认证方式。
示例性的,当从网络请求令牌中解析出哈希运算消息认证码以及密钥时,确定需采取的身份认证方式包括哈希运算消息认证;
当从网络请求令牌中解析出目标关键字时,确定需采取的身份认证方式包括关键字认证;
当从网络请求令牌中解析出数据关键字时,确定需采取的身份认证方式包括数据网络令牌认证;
当从网络请求令牌中解析出用户信息时,确定需采取的身份认证方式包括角色访问控制认证;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;
当从网络请求令牌中解析出登录信息时,确定需采取的身份认证方式包括基本访问认证;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。
在步骤S203中,针对于每种身份认证方式,从网络请求令牌解析出按照该身份认证方式进行认证时所需认证的身份认证令牌,并通过该身份认证方式认证相应的身份认证令牌,确定出在该身份认证方式下的认证结果;其中,身份认证令牌中携带有用于认证的至少一个身份认证参数;认证结果包括通过认证和未通过认证中的任意一种。
在一种实施方式中,步骤S203包括:获取该身份认证方式对应的已保存的标准认证令牌;按照每个身份认证参数的比对优先级,分别将所述身份认证令牌所携带的每个身份认证参数逐一与所述标准认证令牌中的每个标准认证参数进行比较,确定该身份认证方式的认证结果。
该步骤中,在通过身份认证方式对该身份认证方式对应的身份认证令牌进行认证时,获取该身份认证方式对应的已保存的标准认证令牌,确定在该种身份认证方式下需认证的各个身份认证参数的比对优先级;按照各个身份认证参数的比对优先级,逐一将身份认证令牌中所携带的每个身份认证参数与标准认证令牌中相应的标准认证参数进行比较;若每个身份认证参数均与标准认证参数一致,则确定该用户在该中身份认证方式下通过认证。
在步骤S204中,基于每种身份认证方式的认证结果,确定出该用户是否具有业务系统访问权限的认证结果;具体的,当用户通过全部的身份认证方式后,确定该用户具有业务系统的访问权限;否则,该用户的认证结果为不具有业务系统的访问权限;或者是,当用户通过的身份认证方式的数量达到通过阈值时,确定该用户具有业务系统的访问权限;否则,该用户的认证结果为不具有业务系统的访问权限。
在步骤S205中,当访问权限认证结果指示该用户具有业务系统的访问权限时,向用户所使用的终端设备返回用户所请求的业务系统的内容,以便用户查看业务系统中的内容。
本申请实施例提供的网络认证方法,应用于服务端,接收终端设备发送的网络请求令牌;根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。这样,服务端便可实现对于用户是否具有业务系统访问权限的认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
请参阅图3,图3为本申请实施例所提供的一种终端设备的结构示意图。如图3中所示,所述终端设备300包括:
等级确定模块310,用于响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级;
第一方式确定模块320,用于根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;
参数获取模块330,用于获取每种身份认证方式需认证的至少一个身份认证参数;
令牌生成模块340,用于基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌;
令牌发送模块350,用于将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
进一步的,所述身份认证方式包括哈希运算消息认证、关键字认证、数据网络令牌认证、角色访问控制认证以及基本访问认证中的一种或多种;所述参数获取模块330在用于获取每种身份认证方式需认证的至少一个身份认证参数时,所述参数获取模块330用于:
当所述身份认证方式为所述哈希运算消息认证时,获取所述哈希运算消息认证所需的哈希运算消息认证码以及密钥;
当所述身份认证方式为关键字认证时,获取所述关键字认证所需认证的目标关键字;
当所述身份认证方式为数据网络令牌认证时,获取所述数据网络令牌认证所需认证的数据关键字;
当所述身份认证方式为角色访问控制认证时,获取所述用户的用户信息;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;
当所述身份认证方式为基本访问认证时,获取所述用户的登录信息;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。
进一步的,所述令牌生成模块340在用于基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌时,所述令牌生成模块340用于:
基于所述接口认证参数生成初始请求令牌;
针对于每种身份认证方式,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌;
将每种身份认证方式的身份认证令牌封装在所述初始请求令牌的请求头中,得到所述网络请求令牌。
进一步的,所述令牌生成模块340在用于基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌时,所述令牌生成模块340用于:
利用预设的编码方式对所述至少一个身份认证参数进行编码,得到该身份认证方式对应的身份认证令牌。
进一步的,所述参数获取模块330在用于获取每种身份认证方式需认证的至少一个身份认证参数时,所述参数获取模块330用于:
为所述用户提供参数输入界面,接收所述用户在所述参数输入界面中输入的至少一个身份认证参数;和/或,
从所述用户的登录系统中,获取所述至少一个身份认证参数。
本申请实施例提供的终端设备,响应于用户针对业务系统的访问请求,获取访问业务系统需调用的服务端网络接口的网络认证等级;并根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;获取每种身份认证方式需认证的至少一个身份认证参数;基于每种身份认证方式的至少一个身份认证参数以及网络接口的接口认证参数,生成网络请求令牌;将网络请求令牌发送至服务端,以供服务端通过所述至少一种身份认证方式对用户是否具有所述业务系统的访问权限进行认证。这样,在用户访问业务系统时,无需修改用户所使用的终端设备的前端程序代码,通过服务端的网络接口对用户是否具有访问权限进行认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
请参阅图4,图4为本申请实施例所提供的一种服务端的结构示意图。如图4中所示,所述服务端400包括:
令牌接收模块410,用于接收终端设备发送的网络请求令牌;
第二方式确定模块420,用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;
参数确定模块430,用于针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;
结果认证模块440,用于基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;
内容反馈模块450,用于当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
进一步的,所述第二方式确定模块420在用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式时,所述第二方式确定模块420用于:
解析所述网络请求令牌,得到接口认证参数;
基于所述接口认证参数,确定访问业务系统需调用的网络接口,并确定所述网络接口的至少一种身份认证方式。
进一步的,所述第二方式确定模块420在用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式时,所述第二方式确定模块420用于:
解析所述网络请求令牌,得到至少一个身份认证参数;
根据所述至少一个身份认证参数,从多个候选认证方式中确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
进一步的,所述参数确定模块430在用于认证所述身份认证令牌,确定该身份认证方式的认证结果时,所述参数确定模块430用于:
获取该身份认证方式对应的已保存的标准认证令牌;
按照每个身份认证参数的比对优先级,分别将所述身份认证令牌所携带的每个身份认证参数逐一与所述标准认证令牌中的每个标准认证参数进行比较,确定该身份认证方式的认证结果。
本申请实施例提供的服务端,接收终端设备发送的网络请求令牌;根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。这样,服务端便可实现对于用户是否具有业务系统访问权限的认证,可以避免由于更改了前端程序代码使得终端设备的系统出现不兼容的情况,有助于降低开发人员的开发难度以及开发成本。
请参阅图5,图5为本申请实施例所提供的一种电子设备的结构示意图。如图5中所示,所述电子设备500包括处理器510、存储器520和总线530。
所述存储器520存储有所述处理器510可执行的机器可读指令,当电子设备500运行时,所述处理器510与所述存储器520之间通过总线530通信,所述机器可读指令被所述处理器510执行时,可以执行如上述图1所示方法实施例中的网络请求方法的步骤和/或图2所示方法实施例中的网络认证方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1所示方法实施例中的网络请求方法的步骤和/或图2所示方法实施例中的网络认证方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random AccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (13)

1.一种网络请求方法,其特征在于,应用于终端设备,所述网络请求方法包括:
响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级;
根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;
获取每种身份认证方式需认证的至少一个身份认证参数;
基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌;
将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
2.根据权利要求1所述的网络请求方法,其特征在于,所述身份认证方式包括哈希运算消息认证、关键字认证、数据网络令牌认证、角色访问控制认证以及基本访问认证中的一种或多种;所述获取每种身份认证方式需认证的至少一个身份认证参数,包括:
当所述身份认证方式为所述哈希运算消息认证时,获取所述哈希运算消息认证所需的哈希运算消息认证码以及密钥;
当所述身份认证方式为关键字认证时,获取所述关键字认证所需认证的目标关键字;
当所述身份认证方式为数据网络令牌认证时,获取所述数据网络令牌认证所需认证的数据关键字;
当所述身份认证方式为角色访问控制认证时,获取所述用户的用户信息;其中,所述用户信息包括应用身份信息、用户登录信息以及登录密码中的一种或多种;
当所述身份认证方式为基本访问认证时,获取所述用户的登录信息;其中,所述登录信息包括登录用户信息以及登录密码中的一种或多种。
3.根据权利要求1所述的网络请求方法,其特征在于,所述基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌,包括:
基于所述接口认证参数生成初始请求令牌;
针对于每种身份认证方式,基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌;
将每种身份认证方式的身份认证令牌封装在所述初始请求令牌的请求头中,得到所述网络请求令牌。
4.根据权利要求3所述的网络请求方法,其特征在于,所述基于该身份认证方式的至少一个身份认证参数,确定该身份认证方式对应的身份认证令牌,包括:
利用预设的编码方式对所述至少一个身份认证参数进行编码,得到该身份认证方式对应的身份认证令牌。
5.根据权利要求1所述的网络请求方法,其特征在于,所述获取每种身份认证方式需认证的至少一个身份认证参数,包括:
为所述用户提供参数输入界面,接收所述用户在所述参数输入界面中输入的至少一个身份认证参数;和/或,
从所述用户的登录系统中,获取所述至少一个身份认证参数。
6.一种网络认证方法,其特征在于,应用于服务端,所述网络认证方法包括:
接收终端设备发送的网络请求令牌;
根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;
针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;
基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;
当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
7.根据权利要求6所述的网络认证方法,其特征在于,所述根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式,包括:
解析所述网络请求令牌,得到接口认证参数;
基于所述接口认证参数,确定访问业务系统需调用的网络接口,并确定所述网络接口的至少一种身份认证方式。
8.根据权利要求6所述的网络认证方法,其特征在于,所述根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式,包括:
解析所述网络请求令牌,得到至少一个身份认证参数;
根据所述至少一个身份认证参数,从多个候选认证方式中确定用户访问业务系统所调用的网络接口的至少一种身份认证方式。
9.根据权利要求6所述的网络认证方法,其特征在于,所述认证所述身份认证令牌,确定该身份认证方式的认证结果,包括:
获取该身份认证方式对应的已保存的标准认证令牌;
按照每个身份认证参数的比对优先级,分别将所述身份认证令牌所携带的每个身份认证参数逐一与所述标准认证令牌中的每个标准认证参数进行比较,确定该身份认证方式的认证结果。
10.一种终端设备,其特征在于,所述终端设备包括:
等级确定模块,用于响应于用户针对业务系统的访问请求,获取访问所述业务系统需调用的服务端网络接口的网络认证等级;
第一方式确定模块,用于根据用户的注册信息,确定在所述网络认证等级下对所述用户进行访问权限认证所需的至少一种身份认证方式;
参数获取模块,用于获取每种身份认证方式需认证的至少一个身份认证参数;
令牌生成模块,用于基于每种身份认证方式的至少一个身份认证参数以及所述网络接口的接口认证参数,生成网络请求令牌;
令牌发送模块,用于将所述网络请求令牌发送至服务端,以供所述服务端通过所述至少一种身份认证方式对所述用户是否具有所述业务系统的访问权限进行认证。
11.一种服务端,其特征在于,所述服务端包括:
令牌接收模块,用于接收终端设备发送的网络请求令牌;
第二方式确定模块,用于根据所述网络请求令牌,确定用户访问业务系统所调用的网络接口的至少一种身份认证方式;
参数确定模块,用于针对于每种身份认证方式,从所述网络请求令牌中确定出按照该身份认证方式进行认证时所需的身份认证令牌,并认证所述身份认证令牌,确定该身份认证方式的认证结果;其中,所述身份认证令牌中携带有用于认证的至少一个身份认证参数;
结果认证模块,用于基于每种身份认证方式的认证结果,确定所述用户的访问权限认证结果;
内容反馈模块,用于当所述访问权限认证结果指示所述用户具有所述业务系统的访问权限时,向所述终端设备返回所述业务系统的内容。
12.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过所述总线进行通信,所述机器可读指令被所述处理器运行时执行如权利要求1至5任一所述的网络请求方法的步骤和/或如权利要求6至9任一所述的网络认证方法的步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至5任一所述的网络请求方法的步骤和/或如权利要求6至9任一所述的网络认证方法的步骤。
CN202111435419.6A 2021-11-29 2021-11-29 网络请求方法、网络认证方法、终端设备和服务端 Pending CN114024688A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111435419.6A CN114024688A (zh) 2021-11-29 2021-11-29 网络请求方法、网络认证方法、终端设备和服务端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111435419.6A CN114024688A (zh) 2021-11-29 2021-11-29 网络请求方法、网络认证方法、终端设备和服务端

Publications (1)

Publication Number Publication Date
CN114024688A true CN114024688A (zh) 2022-02-08

Family

ID=80067015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111435419.6A Pending CN114024688A (zh) 2021-11-29 2021-11-29 网络请求方法、网络认证方法、终端设备和服务端

Country Status (1)

Country Link
CN (1) CN114024688A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128547A1 (en) * 2002-12-31 2004-07-01 Robert Laidlaw Method and system for modular authentication and session management
US20140208119A1 (en) * 2013-01-21 2014-07-24 International Business Machines Corporation Controlling Exposure of Sensitive Data and Operation Using Process Bound Security Tokens in Cloud Computing Environment
CN104104672A (zh) * 2014-06-30 2014-10-15 重庆智韬信息技术中心 基于身份认证建立动态授权码的方法
CN107172049A (zh) * 2017-05-19 2017-09-15 北京信安世纪科技有限公司 一种智能身份认证系统
US20190229922A1 (en) * 2018-01-23 2019-07-25 Neopost Technologies Authentication and authorization using tokens with action identification
CN111027033A (zh) * 2019-11-27 2020-04-17 中国银行股份有限公司 一种接口的访问方法及装置
CN113014576A (zh) * 2021-02-23 2021-06-22 中国联合网络通信集团有限公司 一种服务权限控制方法、装置、服务器及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128547A1 (en) * 2002-12-31 2004-07-01 Robert Laidlaw Method and system for modular authentication and session management
US20140208119A1 (en) * 2013-01-21 2014-07-24 International Business Machines Corporation Controlling Exposure of Sensitive Data and Operation Using Process Bound Security Tokens in Cloud Computing Environment
CN104104672A (zh) * 2014-06-30 2014-10-15 重庆智韬信息技术中心 基于身份认证建立动态授权码的方法
CN107172049A (zh) * 2017-05-19 2017-09-15 北京信安世纪科技有限公司 一种智能身份认证系统
US20190229922A1 (en) * 2018-01-23 2019-07-25 Neopost Technologies Authentication and authorization using tokens with action identification
CN111027033A (zh) * 2019-11-27 2020-04-17 中国银行股份有限公司 一种接口的访问方法及装置
CN113014576A (zh) * 2021-02-23 2021-06-22 中国联合网络通信集团有限公司 一种服务权限控制方法、装置、服务器及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陆佳炜;吴斐斐;徐俊;张元鸣;肖刚;: "基于动态授权机制的自适应云访问控制方法研究", 计算机应用与软件, no. 07, 15 July 2017 (2017-07-15) *

Similar Documents

Publication Publication Date Title
CN110602052B (zh) 微服务处理方法及服务器
US10073916B2 (en) Method and system for facilitating terminal identifiers
CN105610810B (zh) 一种数据处理方法、客户端和服务器
US8239954B2 (en) Access control based on program properties
CN108769041A (zh) 登录方法、系统、计算机设备和存储介质
US11924247B1 (en) Access control policy simulation and testing
US10705897B1 (en) Data driven API conversion
US20130185645A1 (en) Determining repeat website users via browser uniqueness tracking
CN107992771B (zh) 一种数据脱敏方法和装置
CN109684873B (zh) 数据访问控制方法、装置、计算机设备和存储介质
CN106549909B (zh) 一种授权验证方法及设备
CN111818088A (zh) 授权模式管理方法、装置、计算机设备及可读存储介质
JP2011215753A (ja) 認証システムおよび認証方法
US10135808B1 (en) Preventing inter-application message hijacking
CN112131564A (zh) 加密数据通信方法、装置、设备以及介质
CN116324766A (zh) 通过浏览简档优化抓取请求
CN112118238A (zh) 认证登录的方法、装置、系统、设备及存储介质
RU2638779C1 (ru) Способ и сервер для вьполнения авторизации приложения на электронном устройстве
CN110636038A (zh) 账号解析方法、装置、安全网关及系统
CN112699034B (zh) 虚拟登录用户构建方法、装置、设备及存储介质
CN112600864A (zh) 一种验证码校验方法、装置、服务器及介质
CN117375986A (zh) 一种应用访问方法、装置、服务器
CN108965335B (zh) 防止恶意访问登录接口的方法、电子设备及计算机介质
CN114257451B (zh) 验证界面更换方法、装置、存储介质及计算机设备
CN114422586B (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