CN109889342B - 接口测试鉴权方法、装置、电子设备及存储介质 - Google Patents
接口测试鉴权方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN109889342B CN109889342B CN201811537747.5A CN201811537747A CN109889342B CN 109889342 B CN109889342 B CN 109889342B CN 201811537747 A CN201811537747 A CN 201811537747A CN 109889342 B CN109889342 B CN 109889342B
- Authority
- CN
- China
- Prior art keywords
- user information
- key
- information
- authenticated
- interface test
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供一种接口测试鉴权方法、装置、电子设备及存储介质。所述接口测试鉴权方法包括:当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;验证所述用户信息;当所述用户信息通过验证时,提取所述用户信息中的关键字;对所述关键字进行加密,生成密钥信息;获取所述接口测试任务中的待鉴权事件;以所述密钥信息对所述待鉴权事件进行鉴权。本发明能实现接口测试过程中的自动化鉴权,提高安全性,避免人为操作给用户带来的不便,不仅节约人力成本,还减少了时间消耗。
Description
技术领域
本发明涉及接口测试技术领域,尤其涉及一种接口测试鉴权方法、装置、电子设备及存储介质。
背景技术
现有技术方案中,在一次接口测试过程中,通常需要涉及到多次鉴权操作,以保证在一次接口测试中的多个需要鉴权的测试事件,都能够在得到授权后顺利执行。
但是,现有技术中通常需要人工鉴权,步骤繁琐,且耗时耗力,给用户造成不便。
发明内容
鉴于以上内容,有必要提供一种接口测试鉴权方法、装置、电子设备及存储介质,能实现接口测试过程中的自动化鉴权,提高安全性,避免人为操作给用户带来的不便,不仅节约人力成本,还减少了时间消耗。
一种接口测试鉴权方法,所述方法包括:
当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;
验证所述用户信息;
当所述用户信息通过验证时,提取所述用户信息中的关键字;
对所述关键字进行加密,生成密钥信息;
获取所述接口测试任务中的待鉴权事件;
以所述密钥信息对所述待鉴权事件进行鉴权。
根据本发明优选实施例,所述当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息包括以下任意一种方式:
接收用户输入的信息,将接收的信息确定为所述用户信息;或者
从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
根据本发明优选实施例,所述验证所述用户信息包括:
获取预先存储的用户信息;
将所述用户信息与所述预先存储的用户信息进行对比;
当所述用户信息与所述预先存储的用户信息全部一致时,确定所述用户信息通过验证;或者
当所述用户信息与所述预先存储的用户信息不全一致时,确定所述用户信息未通过验证。
根据本发明优选实施例,所述关键字包括以下一种或者多种的组合:
用户身份识别码、用户名。
根据本发明优选实施例,所述当所述用户信息通过验证时,提取所述用户信息中的关键字包括:
采用JsonPath规则,获取索引表达式;
根据所述索引表达式,提取所述用户信息中的关键字。
根据本发明优选实施例,所述对所述关键字进行加密,生成密钥信息包括以下任意一种方式:
生成令牌Token,将所述关键字及所述Token确定为所述密钥信息;或者
根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息;或者
为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息。
根据本发明优选实施例,所述以所述密钥信息对所述待鉴权事件进行鉴权包括以下任意一种方式:
从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权;或者
解密所述数字档案以确定所述待鉴权事件是否通过鉴权;或者
从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
一种接口测试鉴权装置,所述装置包括:
获取单元,用于当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;
验证单元,用于验证所述用户信息;
提取单元,用于当所述用户信息通过验证时,提取所述用户信息中的关键字;
加密单元,用于对所述关键字进行加密,生成密钥信息;
所述获取单元,还用于获取所述接口测试任务中的待鉴权事件;
鉴权单元,用于以所述密钥信息对所述待鉴权事件进行鉴权。
根据本发明优选实施例,当接收到鉴权请求指令时,所述获取单元获取所述鉴权请求指令对应的接口测试任务的用户信息包括以下任意一种方式:
接收用户输入的信息,将接收的信息确定为所述用户信息;或者
从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
根据本发明优选实施例,所述验证单元具体用于:
获取预先存储的用户信息;
将所述用户信息与所述预先存储的用户信息进行对比;
当所述用户信息与所述预先存储的用户信息全部一致时,确定所述用户信息通过验证;或者
当所述用户信息与所述预先存储的用户信息不全一致时,确定所述用户信息未通过验证。
根据本发明优选实施例,所述关键字包括以下一种或者多种的组合:
用户身份识别码、用户名。
根据本发明优选实施例,所述提取单元具体用于:
采用JsonPath规则,获取索引表达式;
根据所述索引表达式,提取所述用户信息中的关键字。
根据本发明优选实施例,所述加密单元对所述关键字进行加密,生成密钥信息包括以下任意一种方式:
生成令牌Token,将所述关键字及所述Token确定为所述密钥信息;或者
根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息;或者
为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息。
根据本发明优选实施例,所述鉴权单元以所述密钥信息对所述待鉴权事件进行鉴权包括以下任意一种方式:
从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权;或者
解密所述数字档案以确定所述待鉴权事件是否通过鉴权;或者
从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述接口测试鉴权方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现所述接口测试鉴权方法。
由以上技术方案可以看出,本发明在接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息,并验证所述用户信息,以保证所述用户信息的安全性,当所述用户信息通过验证时,准确地提取所述用户信息中的关键字,并对所述关键字进行加密,生成密钥信息,从而对所述关键字进行有效保护,避免随意篡改,进一步获取所述接口测试任务中的待鉴权事件,并将所述密钥信息发送至所述待鉴权事件进行鉴权,实现自动化鉴权,避免人为操作给用户带来的不便,不仅节约人力成本,还减少了时间消耗。
附图说明
图1是本发明接口测试鉴权方法的较佳实施例的流程图。
图2是本发明接口测试鉴权装置的较佳实施例的功能模块图。
图3是本发明实现接口测试鉴权方法的较佳实施例的电子设备的结构示意图。
主要元件符号说明
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明接口测试鉴权方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
所述接口测试鉴权方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital SignalProcessor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(PersonalDigital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,当接收到鉴权请求指令时,所述电子设备获取所述鉴权请求指令对应的接口测试任务的用户信息。
通常情况下,在一次接口测试过程中,需要涉及到多次鉴权操作,以保证在一次接口测试中的多个需要鉴权的测试事件,都能够在得到授权后顺利执行。现有技术方案中,通常需要人工进行鉴权操作,步骤繁琐,且耗时耗力,给用户造成不便。
鉴于以上情况,本技术方案可以在实施一次鉴权操作后,生成密钥,以便利用生成的密钥自动进行其他鉴权操作,达到一劳永逸的技术效果,具体操作过程将在后文进行详细阐述。
具体地,所述电子设备在接收到所述鉴权请求指令后,将进行第一次鉴权操作。
进一步地,由所述用户向所述电子设备输入所述鉴权请求指令,所述鉴权请求指令包括,但不限于以下一种或者多种的组合:
(1)所述电子设备接收到所述用户点击登录按键的信号。
可以理解的是,在所述用户进行后续操作前,首先需要进行登录操作,才能保证测试任务的执行。
因此,在所述电子设备接收到所述用户点击登录按键的信号时,即可视为接收到所述鉴权请求指令。
(2)所述电子设备接收到的所述用户输入所述用户信息的信号。
具体地,所述电子设备将提示所述用户输入所述用户信息,以便对所述用户进行鉴权。所述电子设备接收所述用户输入的用户信息,即可视为接收到所述鉴权请求指令。
优选地,所述当接收到鉴权请求指令时,所述电子设备获取所述鉴权请求指令对应的接口测试任务的用户信息包括,但不限于以下任意一种方式:
(1)所述电子设备接收用户输入的信息,将接收的信息确定为所述用户信息。
具体地,所述电子设备首先提示所述用户输入所述用户信息。然后,所述电子设备接收所述用户输入的信息,将接收的信息确定为所述用户信息。
(2)所述电子设备从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
具体地,所述配置数据库可以是相关部门的内部数据库,也可以是公司的总数据库,本发明在此不做限制。
所述配置数据库中存储着所述用户的信息,并且以所述用户的名称作为标识进行存储,以方便后续有针对性地调取。
在本发明的至少一个实施例中,所述用户信息用于表征所述用户的身份,所述用户信息可以包括,但不限于:用户的名称、用户的性别等等。
S11,所述电子设备验证所述用户信息。
在本发明的至少一个实施例中,所述电子设备将预先存储所有用户的用户信息以作为基准,并进一步验证所述用户信息是否通过。
优选地,所述电子设备验证所述用户信息包括:
所述电子设备获取预先存储的用户信息,将所述用户信息与所述预先存储的用户信息进行对比,当所述用户信息与所述预先存储的用户信息全部一致时,所述电子设备确定所述用户信息通过验证;或者,当所述用户信息与所述预先存储的用户信息不全一致时,所述电子设备确定所述用户信息未通过验证。
通过上述实施方式,所述电子设备将完成对所述用户信息的第一次验证。具体地,如果所述用户信息未通过验证,则所述电子设备将不允许所述用户通过调用所述第一接口进行相应操作,而如果所述用户信息通过验证,则所述电子设备将允许所述用户通过调用所述第一接口进行相应操作。
S12,当所述用户信息通过验证时,所述电子设备提取所述用户信息中的关键字。
优选地,所述关键字包括,但不限于以下一种或者多种的组合:
用户ID(identification,身份识别码)、用户名等。
优选地,所述当所述用户信息通过验证时,所述电子设备提取所述用户信息中的关键字包括:
所述电子设备采用JsonPath(JavaScript Object Notation Path)规则,获取索引表达式,根据所述索引表达式,提取所述用户信息中的关键字。
具体地,由于是验证所述用户信息,因此,所述索引表达式是用于提取用户ID、用户名等关键字,所述索引表达式可以包括ID()、Name()。
例如:所述电子设备采用JsonPath规则,获取到程序字段为ID(123456)、Name(Tom),则所述电子设备提取到的所述用户信息中的关键字为用户ID123456及用户名Tom。
S13,所述电子设备对所述关键字进行加密,生成密钥信息。
在本发明的至少一个实施例中,所述密钥信息相当于一种用于传递的参数,所述电子设备通过识别所述密钥,以确定权限。
具体地,本技术方案所采取的方式为对所述关键字进行加密,从而生成所述密钥信息,加密过程如下所述。
优选地,所述电子设备对所述关键字进行加密,生成密钥信息包括,但不限于以下任意一种方式:
(1)所述电子设备生成令牌Token,将所述关键字及所述Token确定为所述密钥信息。
具体地,所述Token相当于暗号,在数据传输之前,要先进行暗号的核对,不同的暗号被授权不同的数据操作。
在本实施例中,所述Token可以由头部Header,载荷Payload及签证Signature组成,生成方式可由不同的电子设备自定义,本发明不限制。
所述电子设备在生成所述Token后,将保留所述Token,以供后续进行验证。
(2)所述电子设备根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息。
具体地,所述数字档案是指将所述关键字进行打包加密,生成一把公钥(publickey)及一把私钥(private key),所述公钥用于加密所述关键字本身,所述私钥用于解密所述关键字,所述电子设备保留所述私钥以解密所述数字档案。
(3)所述电子设备为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息。
具体地,所述电子设备还可以对所述关键字进行随机加密,所述电子设备保留所述随机的密码,以供后续进行验证。
通过上述实施方式,所述电子设备即可实现对所述关键字的加密,得到所述密钥信息,从而提高了接口测试过程中的安全性,同时通过不同的加密方式,也实现了对所述关键字的有效保护。
S14,所述电子设备获取所述接口测试任务中的待鉴权事件。
在本发明的至少一个实施例中,在一个接口测试任务中通常需要进行多次鉴权,以保证接口测试过程的安全性,及测试人员身份的有效性,避免出现无效测试或者误操作带来困扰。因此,所述接口测试任务中将包括至少一个待鉴权事件。
例如:一次接口测试任务中可以包括单元测试及功能测试,在进行单元测试时,测试每个单元之前均可以进行一次鉴权,或者是,在进行功能测试时,测试每种功能之前也均可以进行一次鉴权,由此便构成了多个待鉴权事件。
具体地,在一个接口测试任务中,所述待鉴权事件是预先配置好的,例如,所述待鉴权事件可以是根据接口测试历史数据进行配置,或者是由相关工作人员进行自定义配置,本发明不限制。
进一步地,在所述待鉴权事件配置完成后,所述电子设备可以为所述待鉴权事件配置预设标识,或者是将所述待鉴权事件配置在一张列表中等,以便所述电子设备可以快速识别出所述待鉴权事件。
不同于现有技术方案中,由用户进行逐一鉴权的方式,本技术方案在获取到所述待鉴权事件后,由所述电子设备进行自动化鉴权,以减少人力成本,同时为测试人员节约了大量时间进行其他工作。
S15,所述电子设备以所述密钥信息对所述待鉴权事件进行鉴权。
在本发明的至少一个实施例中,所述电子设备在获取到所述待鉴权事件后,进一步对所述待鉴权事件进行鉴权。
具体地,所述电子设备以所述密钥信息为基准,可以对所述待鉴权事件中的每个事件同时进行鉴权,也可以在执行到所述待鉴权事件中的具体事件时,再利用所述密钥信息进行鉴权,本发明不限制。
优选地,所述电子设备以所述密钥信息对所述待鉴权事件进行鉴权包括,但不限于以下任意一种方式:
(1)所述电子设备从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权。
具体地,所述电子设备在从所述密钥信息中获取所述Token后,将获取的Token中的信息与预先存储的Token中的信息进行匹配。
当所述获取的Token中的信息与所述预先存储的Token中的信息都匹配时,所述电子设备确定所述获取的Token有效,进一步地,所述电子设备确定所述待鉴权事件通过鉴权;或者是,当所述获取的Token中的信息与所述预先存储的Token中的信息不都匹配时,所述电子设备确定所述获取的Token无效,进一步地,所述电子设备确定所述待鉴权事件未通过鉴权。
(2)所述电子设备解密所述数字档案以确定所述待鉴权事件是否通过鉴权。
具体地,所述电子设备利用预先存储的私钥解密所述数字档案。
当所述电子设备利用所述预先存储的私钥成功解密所述数字档案时,确定所述预先存储的私钥有效,进一步地,所述电子设备确定所述待鉴权事件通过鉴权;或者是,当所述电子设备利用所述预先存储的私钥未成功解密所述数字档案时,确定所述预先存储的私钥无效,进一步地,所述电子设备确定所述待鉴权事件未通过鉴权。
(3)所述电子设备从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
具体地,所述电子设备在从所述密钥信息中获取所述密码后,将获取的密码与预先存储的密码进行匹配。
当所述获取的密码与所述预先存储的密码匹配时,所述电子设备确定所述获取的密码有效,进一步地,所述电子设备确定所述待鉴权事件通过鉴权;或者是,当所述获取的密码与所述预先存储的密码不匹配时,所述电子设备确定所述获取的密码无效,进一步地,所述电子设备确定所述待鉴权事件未通过鉴权。
综上所述,本发明能在接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息,并验证所述用户信息,以保证所述用户信息的安全性,当所述用户信息通过验证时,准确地提取所述用户信息中的关键字,并对所述关键字进行加密,生成密钥信息,从而对所述关键字进行有效保护,避免随意篡改,进一步获取所述接口测试任务中的待鉴权事件,并将所述密钥信息发送至所述待鉴权事件进行鉴权,实现自动化鉴权,避免人为操作给用户带来的不便,不仅节约人力成本,还减少了时间消耗。
如图2所示,是本发明接口测试鉴权装置的较佳实施例的功能模块图。所述接口测试鉴权装置11包括获取单元110、验证单元111、提取单元112、加密单元113以及鉴权单元114。本发明所称的模块/单元是指一种能够被处理器13所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
当接收到鉴权请求指令时,获取单元110获取所述鉴权请求指令对应的接口测试任务的用户信息。
通常情况下,在一次接口测试过程中,需要涉及到多次鉴权操作,以保证在一次接口测试中的多个需要鉴权的测试事件,都能够在得到授权后顺利执行。现有技术方案中,通常需要人工进行鉴权操作,步骤繁琐,且耗时耗力,给用户造成不便。
鉴于以上情况,本技术方案可以在实施一次鉴权操作后,生成密钥,以便利用生成的密钥自动进行其他鉴权操作,达到一劳永逸的技术效果,具体操作过程将在后文进行详细阐述。
具体地,所述电子设备在接收到所述鉴权请求指令后,将进行第一次鉴权操作。
进一步地,由所述用户向所述电子设备输入所述鉴权请求指令,所述鉴权请求指令包括,但不限于以下一种或者多种的组合:
(1)所述电子设备接收到所述用户点击登录按键的信号。
可以理解的是,在所述用户进行后续操作前,首先需要进行登录操作,才能保证测试任务的执行。
因此,在所述电子设备接收到所述用户点击登录按键的信号时,即可视为接收到所述鉴权请求指令。
(2)所述电子设备接收到的所述用户输入所述用户信息的信号。
具体地,所述电子设备将提示所述用户输入所述用户信息,以便对所述用户进行鉴权。所述电子设备接收所述用户输入的用户信息,即可视为接收到所述鉴权请求指令。
优选地,所述当接收到鉴权请求指令时,所述获取单元110获取所述鉴权请求指令对应的接口测试任务的用户信息包括,但不限于以下任意一种方式:
(1)所述获取单元110接收用户输入的信息,将接收的信息确定为所述用户信息。
具体地,所述获取单元110首先提示所述用户输入所述用户信息。然后,所述获取单元110接收所述用户输入的信息,将接收的信息确定为所述用户信息。
(2)所述获取单元110从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
具体地,所述配置数据库可以是相关部门的内部数据库,也可以是公司的总数据库,本发明在此不做限制。
所述配置数据库中存储着所述用户的信息,并且以所述用户的名称作为标识进行存储,以方便后续有针对性地调取。
在本发明的至少一个实施例中,所述用户信息用于表征所述用户的身份,所述用户信息可以包括,但不限于:用户的名称、用户的性别等等。
验证单元111验证所述用户信息。
在本发明的至少一个实施例中,所述验证单元111将预先存储所有用户的用户信息以作为基准,并进一步验证所述用户信息是否通过。
优选地,所述验证单元111验证所述用户信息包括:
所述验证单元111获取预先存储的用户信息,将所述用户信息与所述预先存储的用户信息进行对比,当所述用户信息与所述预先存储的用户信息全部一致时,所述验证单元111确定所述用户信息通过验证;或者,当所述用户信息与所述预先存储的用户信息不全一致时,所述验证单元111确定所述用户信息未通过验证。
通过上述实施方式,所述验证单元111将完成对所述用户信息的第一次验证。具体地,如果所述用户信息未通过验证,则所述电子设备将不允许所述用户通过调用所述第一接口进行相应操作,而如果所述用户信息通过验证,则所述电子设备将允许所述用户通过调用所述第一接口进行相应操作。
当所述用户信息通过验证时,提取单元112提取所述用户信息中的关键字。
优选地,所述关键字包括,但不限于以下一种或者多种的组合:
用户ID(identification,身份识别码)、用户名等。
优选地,所述当所述用户信息通过验证时,所述提取单元112提取所述用户信息中的关键字包括:
所述提取单元112采用JsonPath规则,获取索引表达式,根据所述索引表达式,提取所述用户信息中的关键字。
具体地,由于是验证所述用户信息,因此,所述索引表达式是用于提取用户ID、用户名等关键字,所述索引表达式可以包括ID()、Name()。
例如:所述提取单元112采用JsonPath规则,获取到程序字段为ID(123456)、Name(Tom),则所述电子设备提取到的所述用户信息中的关键字为用户ID 123456及用户名Tom。
加密单元113对所述关键字进行加密,生成密钥信息。
在本发明的至少一个实施例中,所述密钥信息相当于一种用于传递的参数,所述电子设备通过识别所述密钥,以确定权限。
具体地,本技术方案所采取的方式为对所述关键字进行加密,从而生成所述密钥信息,加密过程如下所述。
优选地,所述加密单元113对所述关键字进行加密,生成密钥信息包括,但不限于以下任意一种方式:
(1)所述加密单元113生成令牌Token,将所述关键字及所述Token确定为所述密钥信息。
具体地,所述Token相当于暗号,在数据传输之前,要先进行暗号的核对,不同的暗号被授权不同的数据操作。
在本实施例中,所述Token可以由头部Header,载荷Payload及签证Signature组成,生成方式可由不同的电子设备自定义,本发明不限制。
所述加密单元113在生成所述Token后,将保留所述Token,以供后续进行验证。
(2)所述加密单元113根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息。
具体地,所述数字档案是指将所述关键字进行打包加密,生成一把公钥及一把私钥,所述公钥用于加密所述关键字本身,所述私钥用于解密所述关键字,所述加密单元113保留所述私钥以解密所述数字档案。
(3)所述加密单元113为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息。
具体地,所述加密单元113还可以对所述关键字进行随机加密,所述加密单元113保留所述随机的密码,以供后续进行验证。
通过上述实施方式,所述加密单元113即可实现对所述关键字的加密,得到所述密钥信息,从而提高了接口测试过程中的安全性,同时通过不同的加密方式,也实现了对所述关键字的有效保护。
所述获取单元110获取所述接口测试任务中的待鉴权事件。
在本发明的至少一个实施例中,在一个接口测试任务中通常需要进行多次鉴权,以保证接口测试过程的安全性,及测试人员身份的有效性,避免出现无效测试或者误操作带来困扰。因此,所述接口测试任务中将包括至少一个待鉴权事件。
例如:一次接口测试任务中可以包括单元测试及功能测试,在进行单元测试时,测试每个单元之前均可以进行一次鉴权,或者是,在进行功能测试时,测试每种功能之前也均可以进行一次鉴权,由此便构成了多个待鉴权事件。
具体地,在一个接口测试任务中,所述待鉴权事件是预先配置好的,例如,所述待鉴权事件可以是根据接口测试历史数据进行配置,或者是由相关工作人员进行自定义配置,本发明不限制。
进一步地,在所述待鉴权事件配置完成后,所述电子设备可以为所述待鉴权事件配置预设标识,或者是将所述待鉴权事件配置在一张列表中等,以便所述电子设备可以快速识别出所述待鉴权事件。
不同于现有技术方案中,由用户进行逐一鉴权的方式,本技术方案在获取到所述待鉴权事件后,由鉴权单元114进行自动化鉴权,以减少人力成本,同时为测试人员节约了大量时间进行其他工作。
所述鉴权单元114以所述密钥信息对所述待鉴权事件进行鉴权。
在本发明的至少一个实施例中,所述获取单元110在获取到所述待鉴权事件后,所述鉴权单元114进一步对所述待鉴权事件进行鉴权。
具体地,所述鉴权单元114以所述密钥信息为基准,可以对所述待鉴权事件中的每个事件同时进行鉴权,也可以在执行到所述待鉴权事件中的具体事件时,再利用所述密钥信息进行鉴权,本发明不限制。
优选地,所述鉴权单元114以所述密钥信息对所述待鉴权事件进行鉴权包括,但不限于以下任意一种方式:
(1)所述鉴权单元114从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权。
具体地,所述鉴权单元114在从所述密钥信息中获取所述Token后,将获取的Token中的信息与预先存储的Token中的信息进行匹配。
当所述获取的Token中的信息与所述预先存储的Token中的信息都匹配时,所述鉴权单元114确定所述获取的Token有效,进一步地,所述鉴权单元114确定所述待鉴权事件通过鉴权;或者是,当所述获取的Token中的信息与所述预先存储的Token中的信息不都匹配时,所述鉴权单元114确定所述获取的Token无效,进一步地,所述鉴权单元114确定所述待鉴权事件未通过鉴权。
(2)所述鉴权单元114解密所述数字档案以确定所述待鉴权事件是否通过鉴权。
具体地,所述鉴权单元114利用预先存储的私钥解密所述数字档案。
当所述鉴权单元114利用所述预先存储的私钥成功解密所述数字档案时,确定所述预先存储的私钥有效,进一步地,所述鉴权单元114确定所述待鉴权事件通过鉴权;或者是,当所述鉴权单元114利用所述预先存储的私钥未成功解密所述数字档案时,确定所述预先存储的私钥无效,进一步地,所述鉴权单元114确定所述待鉴权事件未通过鉴权。
(3)所述鉴权单元114从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
具体地,所述鉴权单元114在从所述密钥信息中获取所述密码后,将获取的密码与预先存储的密码进行匹配。
当所述获取的密码与所述预先存储的密码匹配时,所述鉴权单元114确定所述获取的密码有效,进一步地,所述鉴权单元114确定所述待鉴权事件通过鉴权;或者是,当所述获取的密码与所述预先存储的密码不匹配时,所述鉴权单元114确定所述获取的密码无效,进一步地,所述鉴权单元114确定所述待鉴权事件未通过鉴权。
综上所述,本发明能在接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息,并验证所述用户信息,以保证所述用户信息的安全性,当所述用户信息通过验证时,准确地提取所述用户信息中的关键字,并对所述关键字进行加密,生成密钥信息,从而对所述关键字进行有效保护,避免随意篡改,进一步获取所述接口测试任务中的待鉴权事件,并将所述密钥信息发送至所述待鉴权事件进行鉴权,实现自动化鉴权,避免人为操作给用户带来的不便,不仅节约人力成本,还减少了时间消耗。
如图3所示,是本发明实现接口测试鉴权方法的较佳实施例的电子设备的结构示意图。
所述电子设备1是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备1还可以是但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(PersonalDigital Assistant,PDA)、游戏机、交互式网络电视(InternetProtocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备1还可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。
所述电子设备1所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如接口测试鉴权程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
所称处理器13可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作系统以及安装的各类应用程序、程序代码等。
所述处理器13执行所述电子设备1的操作系统以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个接口测试鉴权方法实施例中的步骤,例如图1所示的步骤S10、S11、S12、S13、S14、S15。
或者,所述处理器13执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如:当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;验证所述用户信息;当所述用户信息通过验证时,提取所述用户信息中的关键字;对所述关键字进行加密,生成密钥信息;获取所述接口测试任务中的待鉴权事件;以所述密钥信息对所述待鉴权事件进行鉴权。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备1中的执行过程。例如,所述计算机程序可以被分割成获取单元110、验证单元111、提取单元112、加密单元113以及鉴权单元114。
所述存储器12可用于存储所述计算机程序和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机程序和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-AccessMemory,随机存取存储器)、FIFO(First In First Out,)等。或者,所述存储器12也可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)等等。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
结合图1,所述电子设备1中的所述存储器12存储多个指令以实现一种接口测试鉴权方法,所述处理器13可执行所述多个指令从而实现:当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;验证所述用户信息;当所述用户信息通过验证时,提取所述用户信息中的关键字;对所述关键字进行加密,生成密钥信息;获取所述接口测试任务中的待鉴权事件;以所述密钥信息对所述待鉴权事件进行鉴权。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
接收用户输入的信息,将接收的信息确定为所述用户信息;或者
从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
获取预先存储的用户信息;
将所述用户信息与所述预先存储的用户信息进行对比;
当所述用户信息与所述预先存储的用户信息全部一致时,确定所述用户信息通过验证;或者
当所述用户信息与所述预先存储的用户信息不全一致时,确定所述用户信息未通过验证。
根据本发明优选实施例,所述关键字包括以下一种或者多种的组合:
用户身份识别码、用户名。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
采用JsonPath规则,获取索引表达式;
根据所述索引表达式,提取所述用户信息中的关键字。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
生成令牌Token,将所述关键字及所述Token确定为所述密钥信息;或者
根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息;或者
为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权;或者
解密所述数字档案以确定所述待鉴权事件是否通过鉴权;或者
从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (9)
1.一种接口测试鉴权方法,其特征在于,所述方法包括:
当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;
验证所述用户信息;
当所述用户信息通过验证时,提取所述用户信息中的关键字;
对所述关键字进行加密,生成密钥信息,包括以下任意一种方式:生成令牌Token,将所述关键字及所述Token确定为所述密钥信息;或者根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息;或者为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息;
获取所述接口测试任务中的多个待鉴权事件;
以所述密钥信息对所述多个待鉴权事件进行自动化鉴权,包括:对所述多个待鉴权事件同时进行鉴权;或者,当所述待鉴权事件被执行时,对确定的待鉴权事件进行鉴权。
2.如权利要求1所述的接口测试鉴权方法,其特征在于,所述当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息包括以下任意一种方式:
接收用户输入的信息,将接收的信息确定为所述用户信息;或者
从所述鉴权请求指令中获取所述用户的名称,根据所述用户的名称从配置数据库中调取所述用户信息。
3.如权利要求1所述的接口测试鉴权方法,其特征在于,所述验证所述用户信息包括:
获取预先存储的用户信息;
将所述用户信息与所述预先存储的用户信息进行对比;
当所述用户信息与所述预先存储的用户信息全部一致时,确定所述用户信息通过验证;或者
当所述用户信息与所述预先存储的用户信息不全一致时,确定所述用户信息未通过验证。
4.如权利要求1所述的接口测试鉴权方法,其特征在于,所述关键字包括以下一种或者多种的组合:
用户身份识别码、用户名。
5.如权利要求1所述的接口测试鉴权方法,其特征在于,所述当所述用户信息通过验证时,提取所述用户信息中的关键字包括:
采用JsonPath规则,获取索引表达式;
根据所述索引表达式,提取所述用户信息中的关键字。
6.如权利要求1所述的接口测试鉴权方法,其特征在于,所述以所述密钥信息对所述待鉴权事件进行鉴权包括以下任意一种方式:
从所述密钥信息中获取所述Token,根据所述Token确定所述待鉴权事件是否通过鉴权;或者
解密所述数字档案以确定所述待鉴权事件是否通过鉴权;或者
从所述密钥信息中获取所述密码,根据所述密码确定所述待鉴权事件是否通过鉴权。
7.一种接口测试鉴权装置,其特征在于,所述装置包括:
获取单元,用于当接收到鉴权请求指令时,获取所述鉴权请求指令对应的接口测试任务的用户信息;
验证单元,用于验证所述用户信息;
提取单元,用于当所述用户信息通过验证时,提取所述用户信息中的关键字;
加密单元,用于对所述关键字进行加密,生成密钥信息,包括以下任意一种方式:生成令牌Token,将所述关键字及所述Token确定为所述密钥信息;或者根据所述关键字生成一个数字档案,将所述数字档案确定为所述密钥信息;或者为所述关键字随机配置一个密码,将所述关键字及所述密码确定为所述密钥信息;
所述获取单元,还用于获取所述接口测试任务中的多个待鉴权事件;
鉴权单元,用于以所述密钥信息对所述多个待鉴权事件进行自动化鉴权,包括:对所述多个待鉴权事件同时进行鉴权;或者,当所述待鉴权事件被执行时,对确定的待鉴权事件进行鉴权。
8.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1至6中任意一项所述的接口测试鉴权方法。
9.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现如权利要求1至6中任意一项所述的接口测试鉴权方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811537747.5A CN109889342B (zh) | 2018-12-15 | 2018-12-15 | 接口测试鉴权方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811537747.5A CN109889342B (zh) | 2018-12-15 | 2018-12-15 | 接口测试鉴权方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109889342A CN109889342A (zh) | 2019-06-14 |
CN109889342B true CN109889342B (zh) | 2023-07-18 |
Family
ID=66925181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811537747.5A Active CN109889342B (zh) | 2018-12-15 | 2018-12-15 | 接口测试鉴权方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109889342B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468356B (zh) * | 2019-09-09 | 2023-11-03 | 北京奇虎科技有限公司 | 路由器接口测试方法、装置、电子设备和存储介质 |
CN111897721B (zh) * | 2020-07-14 | 2024-04-30 | 重庆长安汽车股份有限公司 | 一种api接口的自动化测试方法及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105391552A (zh) * | 2014-08-28 | 2016-03-09 | 腾讯科技(深圳)有限公司 | 一种权限管理方法、装置,及系统 |
WO2017088677A1 (zh) * | 2015-11-23 | 2017-06-01 | 阿里巴巴集团控股有限公司 | 一种用户密钥存储方法及服务器 |
CN108023727A (zh) * | 2017-11-27 | 2018-05-11 | 深圳市纳祥科技有限公司 | 一种授权方法及其系统 |
CN108616499A (zh) * | 2018-03-02 | 2018-10-02 | 努比亚技术有限公司 | 一种应用程序的鉴权方法、终端和计算机可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103929307B (zh) * | 2014-04-02 | 2018-06-01 | 天地融科技股份有限公司 | 密码输入方法、智能密钥设备以及客户端装置 |
CN108964885B (zh) * | 2017-05-27 | 2021-03-05 | 华为技术有限公司 | 鉴权方法、装置、系统和存储介质 |
-
2018
- 2018-12-15 CN CN201811537747.5A patent/CN109889342B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105391552A (zh) * | 2014-08-28 | 2016-03-09 | 腾讯科技(深圳)有限公司 | 一种权限管理方法、装置,及系统 |
WO2017088677A1 (zh) * | 2015-11-23 | 2017-06-01 | 阿里巴巴集团控股有限公司 | 一种用户密钥存储方法及服务器 |
CN108023727A (zh) * | 2017-11-27 | 2018-05-11 | 深圳市纳祥科技有限公司 | 一种授权方法及其系统 |
CN108616499A (zh) * | 2018-03-02 | 2018-10-02 | 努比亚技术有限公司 | 一种应用程序的鉴权方法、终端和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109889342A (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11671267B2 (en) | System and method for verifying an identity of a user using a cryptographic challenge based on a cryptographic operation | |
CN110493202B (zh) | 登录令牌的生成及验证方法、装置和服务器 | |
US9838205B2 (en) | Network authentication method for secure electronic transactions | |
US10623181B2 (en) | Security system utilizing vaultless tokenization and encryption | |
US20220191012A1 (en) | Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System | |
KR101883156B1 (ko) | 인증 시스템 및 방법과 이를 수행하기 위한 사용자 단말, 인증 서버 및 서비스 서버 | |
US10395065B2 (en) | Password protection under close input observation based on dynamic multi-value keyboard mapping | |
TWI522836B (zh) | Network authentication method and system for secure electronic transaction | |
WO2017000829A1 (zh) | 一种基于生物特征的安全校验方法及客户端、服务器 | |
WO2020073513A1 (zh) | 基于区块链的用户认证方法及终端设备 | |
US20160127134A1 (en) | User authentication system and method | |
CN108777675B (zh) | 电子装置、基于区块链的身份验证方法和计算机存储介质 | |
WO2020018182A1 (en) | Public-private key pair protected password manager | |
CN113472774B (zh) | 账号免登录方法、系统、设备及计算机可读存储介质 | |
JP7223067B2 (ja) | ユーザリクエストを処理するための方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプロブラム | |
CN109889342B (zh) | 接口测试鉴权方法、装置、电子设备及存储介质 | |
CN111600701B (zh) | 一种基于区块链的私钥存储方法、装置及存储介质 | |
CN112862484A (zh) | 一种基于多端交互的安全支付方法及装置 | |
CN110381114B (zh) | 接口请求参数的处理方法、装置、终端设备及介质 | |
CN104579690B (zh) | 云端key系统及使用方法 | |
KR101679183B1 (ko) | 전자 서명 서버 및 방법 | |
CN113595731A (zh) | 一种分享链接的防护方法、装置及计算机可读存储介质 | |
CN109586922A (zh) | 动态密码离线认证方法及装置 | |
CN114036546A (zh) | 基于手机号的身份验证方法、装置、计算机设备和介质 | |
CN113626837A (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 |