CN111885063B - 开源***访问管控方法、装置、设备及存储介质 - Google Patents
开源***访问管控方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111885063B CN111885063B CN202010719159.4A CN202010719159A CN111885063B CN 111885063 B CN111885063 B CN 111885063B CN 202010719159 A CN202010719159 A CN 202010719159A CN 111885063 B CN111885063 B CN 111885063B
- Authority
- CN
- China
- Prior art keywords
- request
- open source
- source system
- preset
- login information
- 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
Images
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/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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5053—Lease time; Renewal aspects
-
- 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/0876—Network 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种开源***访问管控方法、装置、设备及存储介质,涉及安全防护技术领域,能够保证程序开发人员从开源***获取需要的开源文件,且能够有效阻止程序开发人员将内部代码上传至开源***。该方法包括:当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息;若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址;若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
Description
技术领域
本申请涉及安全防护技术领域,尤其涉及一种开源***访问管控方法、装置、设备及存储介质。
背景技术
随着互联网技术的发展以及开源***的普及,代码泄露成了影响互联网公司安全的主要隐患。目前,各互联网公司主要通过建立访问域名黑名单来防止程序开发人员将公司内部的核心代码上传至开源***。这种方式虽然可以有效封堵已知的上传路径,使得程序开发人员无法上传核心代码至开源***,但是也限制了程序开发人员从开源***获取程序代码,使得程序开发人员无法使用开源***已有的程序代码,需要对项目开发中所需的每个程序代码进行开发,导致程序开发效率降低。
发明内容
本申请实施例提供了一种开源***访问管控方法、装置、设备及存储介质,能够保证程序开发人员从开源***获取需要的开源文件,且能够有效阻止程序开发人员将内部代码上传至开源***,在保证了程序开发效率的同时有效防止公司内部代码的泄露。
第一方面,本申请提供一种开源***访问管控方法,包括:
当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息;
若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址;
若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息,包括:
当检测到用于访问开源***的请求后,确定所述请求携带的接口参数是否包含有访问令牌参数;
若所述请求携带的接口参数包含有所述访问令牌参数,则确定所述请求携带有用户登录信息;
若所述请求携带的接口参数不包含有所述访问令牌参数,则确定所述请求不携带有用户登录信息。
在一可选的实现方式中,若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址,包括:
若确定所述请求不携带有用户登录信息,则获取所述请求携带的用户报文;
将所述用户报文的报文头中的被访问域名修改为所述开源***的访问地址。
在一可选的实现方式中,若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,包括:
若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述请求为基于web页面的请求;
所述若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,包括:
若确定基于web页面的请求携带有用户登录信息,则获取所述web页面携带的网络协议头;
通过预先确定的代理服务器在所述网络协议头中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空之后,还包括:
在局域网的DNS服务器中生成所述开源***的预设域名;
通过所述DNS服务器将所述预设域名的IP地址返回给访问终端,以使所述访问终端将所述预设域名的IP地址作为所述开源***的访问地址。
在一可选的实现方式中,在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空之后,还包括:
在所述局域网的防火墙内部搭建预设的代理服务;
修改所述开源***的访问域名为所述预设域名,将所述预设域名的IP地址发送至所述代理服务器,以使所述代理服务器将所述预设域名的IP地址作为所述开源***的访问地址。
第二方面,本申请提供一种开源***访问管控装置,包括:
确定模块,用于在当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息;
修改模块,用于在若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址;
添加模块,用于在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述确定模块,包括:
第一确定单元,用于在当检测到用于访问开源***的请求后,确定所述请求携带的接口参数是否包含有访问令牌参数;
第二确定单元,用于在若所述请求携带的接口参数包含有所述访问令牌参数,则确定所述请求携带有用户登录信息;
第三确定单元,用于在若所述请求携带的接口参数不包含有所述访问令牌参数,则确定所述请求不携带有用户登录信息。
在一可选的实现方式中,所述修改模块,包括:
第一获取单元,用于在若确定所述请求不携带有用户登录信息,则获取所述请求携带的用户报文;
修改单元,用于将所述用户报文的报文头中的被访问域名修改为所述开源***的访问地址。
在一可选的实现方式中,所述添加模块,具体用于:
若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述请求为基于web页面的请求;
所述添加模块,包括:
第二获取单元,用于在若确定基于web页面的请求携带有用户登录信息,则获取所述web页面携带的网络协议头;
设置单元,用于通过预先确定的代理服务器在所述网络协议头中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,还包括:
生成模块,用于在局域网的DNS服务器中生成所述开源***的预设域名;
返回模块,用于通过所述DNS服务器将所述预设域名的IP地址返回给访问终端,以使所述访问终端将所述预设域名的IP地址作为所述开源***的访问地址。
在一可选的实现方式中,还包括:
搭建模块,用于在所述局域网的防火墙内部搭建预设的代理服务;
修改模块,用于修改所述开源***的访问域名为所述预设域名,将所述预设域名的IP地址发送至所述代理服务器,以使所述代理服务器将所述预设域名的IP地址作为所述开源***的访问地址。
第三方面,本申请提供一种开源***访问管控设备,处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第一方面的任意可选方式所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面的任意可选方式所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在开源***访问管控设备上运行时,使得开源***访问管控设备执行上述第一方面所述的开源***访问管控方法的步骤。
采用本申请第一方面提供的开源***访问管控方法,通过确定用于访问开源***的请求是否携带有用户登录信息,来确定访问所述开源***或者登录所述开源***,并在确定为访问开源***时,通过修改请求携带的被访问域名为开源***的访问地址,使得能够访问所述开源***,在确定为登录请求时,通过将所述请求中的预设字符值设置为空,阻止登录所述开源***。能够保证程序开发人员从开源***获取需要的开源文件,且能够有效阻止程序开发人员将内部代码上传至开源***,在保证了程序开发效率的同时有效防止公司内部代码的泄露。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的开源***管控***的***结构示意图;
图2是本申请一个实施例提供的一种开源***访问管控方法的示意流程图;
图3是图2中S201的具体实现流程图;
图4是本申请另一个实施例提供的一种开源***访问管控方法的示意流程图;
图5是本申请实施例提供的开源***访问管控装置的示意图;
图6是本申请实施例提供的开源***访问管控设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
还应当理解,在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在说明本申请实施例提供的开源***访问管控方法之前,首先结合图1对本申请所采用的访问管控原理以及开源***访问过程中的相关概念进行示例性的说明。
为了便于描述,在本申请实施例中,开源***访问管控设备为公司内部的管理服务器,例如公司局域网内的DNS服务器。如图1所示,开源***访问管控设备101与多个终端设备102通信连接(图1中,示例性地仅示出了一个终端102),开源***访问管控设备101用于管控多个终端设备102对预设的开源***的访问。具体地,图1是本申请实施例提供的开源***管控***的***结构示意图。
在本申请中,多个终端设备102分别为公司内部开发人员用于工作的终端设备,任一终端设备102可以是便携式笔记本、台式电脑、可穿戴移动设备、智能手机等,开源***为开放源代码的软件***,例如,分布式存储***,NSQ-Golang开源消息***等。
通常,当用户通过终端设备102上传文件至开源***时,开源***需要对上传者进行身份验证,也即终端设备102发送的登录请求携带有用户登录信息,而当用户通过终端设备102访问所述开源***时,无需登录即可直接访问,因此,本申请实施例通过开源***访问管控设备101确定终端设备102用于访问开源***的请求是否携带有用户登录信息,来确定终端设备102是访问所述开源***或者是登录所述开源***,并在确定为访问开源***时,通过修改请求携带的被访问域名为开源***的访问地址,使得终端设备102能够访问所述开源***,在确定为登录请求时,通过将所述请求中的预设字符值设置为空,阻止登录所述开源***。能够保证程序开发人员从开源***获取需要的开源文件,且能够有效阻止程序开发人员将内部代码上传至开源***,在保证了程序开发效率的同时有效防止公司内部代码的泄露。下面通过具体实施例,对本申请提供的开源***访问管控方法进行示例性的说明。
请参见图2,图2是本申请一个实施例提供的一种开源***访问管控方法的示意流程图。本实施例中开源***访问管控方法的执行主体为图1所示的开源***访问管控设备101。如图2所示的开源***访问管控方法可包括:
S201,当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息。
可以理解地,当用户仅访问开源***的页面获取所需的开源信息时,是无需登录开源***,而用户在没有登录开源***时,是无法将文件上传至开源***的,在本实施例中,通过检测用于访问开源***的请求是否携带有用户登录信息,来确定用户是访问开源***或者是登录开源***。
示例性地,如图3所示,是图2中S201的具体实现流程图。由图3可知,S201包括如下步骤:
S2011,当检测到用于访问开源***的请求后,确定所述请求携带的接口参数是否包含有访问令牌参数。
在本实施例中,假设所述开源***为gitub***;当需要登录所述gitub***时,需要在接口参数中包含有预设的访问令牌参数,例如receive参数。示例性地,确定访问gitub***的请求携带的接口参数是否包含有receive参数。
S2012,若所述请求携带的接口参数包含有所述访问令牌参数,则确定所述请求携带有用户登录信息。
例如,若确定访问gitub***的请求携带的接口参数包含有receive参数,则确定访问gitub***的请求携带有用户登录信息。
S2013,若所述请求携带的接口参数不包含有所述访问令牌参数,则确定所述请求不携带有用户登录信息。
例如,若确定访问gitub***的请求携带的接口参数不包含有receive参数,则确定访问gitub***的请求不携带有用户登录信息。
在一个示例中,在确定用于访问开源***的请求是否携带有用户登录信息之前,还可以在预先确定的代理服务器上(例如,基于Nginx的代理服务器上)修改被访问开源***的访问域名,示例性地,可以在被访问开源***的访问域名文件中写入被访问开源***的访问地址,例如,在本实施例中,通过在开源***访问管控设备101上部署代理服务器,通过该代理服务器将用户报文头中的预设字段,例如host字段中写入开源***的访问域名,以防止开源***访问管控设备101上的防火墙检测到被访问开源***的访问域名,而阻断连接。
S202,若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址。
在本申请实施例中,所述请求携带的被访问域名为所述请求携带的用户报文。示例性地,若检测到所述请求不携带有用户登录信息,则获取所述请求携带的用户报文,将所述用户报文头中的被访问域名字段修改为开源***的访问地址,实现访问所述开源***,例如将所述请求携带的访问报文转向预设的开源***,可以实现通过访问代理域名修改被访问站点的域名(host的值),从而实现了成功访问所述开源***。具体地,所述访问报文携带有访问路径。在本实施例中,所述用户登录信息包括用户登录账号。
需要说明的是,用户报文携带有访问路径可以让用户访问到对应的资源与功能。在本实例中,通过修改被访问站点的域名,可以实现在用户访问预设开源***的时候将对应的IP指向代理服务器,使得用户报文到达所述代理服务器。
这是由于浏览器访问网站域名的解析步骤包括:首先查看缓存是否有被访问站点的IP地址,在缓存有被访问站点的IP地址后,查看被访问站点的域名是否有被访问站点对应的IP,在访问站点的域名包含有访问站点对应的IP后,可以访问DNS服务请求网站IP地址。
进一步地,若检测到用户基于客户端(git工具)访问所述开源***的请求,则分析上传接口,通过Nginx配置实现访问或者阻拦。具体地,通过Nginx配置实现访问或者阻拦的实现方式可参见现有技术常见的方式,在此不做赘述。
S203,若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
例如,若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
进一步地,若检测到携带有用户账号的登录请求,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,并将所述页面刷新字段的第一字符值设置为空,阻止登录所述***的实现过程具体为:
当检测到有用户账号基于web界面的登录请求后,利用Nginx编辑http头,将字段x-pjax值置为空,以使在WEB界面无法加载Github插件。
具体地,利用Nginx编辑http头的过程中,在基于Nginx的代理服务器上编辑所述登录请求携带的网络协议头,具体地,编辑所述登录请求携带的网络协议头的过程是在所述网络协议头中写入预设的刷新字段,并将所述刷新字段的预设字符值,例如x-pjax字符值设置为空。
进一步,若检测到用户点击开源***,例如Github中的超链接的操作,则将X-Requsted-With字段自动带上,可解决访问页面的跳转问题。
示例性地,在Github中页面请求与回复中会在报文的header中添加预设的防止页面跳转的字段,例如X-Requsted-With字段,在页面访问及应答过程中,若不带上预设的防止页面跳转的字段,则会导致页面无法自动刷新,因此在本实施例中,通过将该字段写入访问头的预设位置,例如访问头的首位(Header头部位置)。
在一可选的实现方式中,检测是否是携带有用户账号的登录请求的过程包括:分析访问路径携带的上传接口的参数,并在上传的接口参数包含有预设参数,例如receive参数时,则阻拦该请求,实现阻止用户上传资料至预设的开源***,所述预设的开源***为gitub***;
若上传的接口参数不包含有所述预设参数,则将用户报文中的访问字段设置为预设的***访问字段,例如预设的***访问字段为https://github.com访问字段,实现用户访问所述预设的开源***。
示例性地,若确定基于web页面的请求携带有用户登录信息,则获取所述web页面携带的网络协议头;
通过预先确定的代理服务器在所述网络协议头中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
通过上述分析可知,本实施提供的开源***访问管控方法,通过检测用户的请求是否携带有用户账号来确定访问页面和登录页面,并在确定为访问页面时,通过修改用户报文头中的被访问域名字段修改为访问***的访问地址,实现访问所述***,在确定为登录请求时,通过获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,并将所述页面刷新字段的第一字符值设置为空,阻止登录所述***。实现了用户访问开源***以获取需要的开源文件的同时,能够有效阻止用户将内部文件上传至所述开源***,能够有效防止公司内部文件的泄露。
如图4所示,是本申请另一个实施例提供的一种开源***访问管控方法的示意流程图。本实施例与图2所示实施例相比,S401至S403与S201至S203的具体实现过程相同,在此不再赘述。不同之处在于,在S403之后还包括S404至S405,详述如下。
S401,当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息。
S402,若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址。
S403,若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
S404,在局域网的DNS服务器中生成所述开源***的预设域名。S405,通过所述DNS服务器将所述预设域名的IP地址返回给访问终端,以使所述访问终端将所述预设域名的IP地址作为所述开源***的访问地址。
需要说明的是,本申请实施例通过将开源***的访问地址添加至被访问站点的访问域名中,可以实现对开源***的访问,该方法可以满足在开源***上进行页面浏览以及单个任务下载的需求,但是通常开源***中的部分项目中写有其它依赖项目,比如下载项目A,然而项目A依赖于项目B,也就是说,在运行项目A之前要安装项目B。也即,项目A与项目B形成一个依赖链路,而在项目A的配置文件中写出项目B的下载地址,而因为项目B在开源***的网站上,所以会导致项目B的下载地址携带有开源***的访问地址,那么就需要用户开发自己的下载项目源码并把项目B的下载地址替换为代理域名。这就导致对于依赖较大的项目无法通过图2所示步骤进行获取。因此在本实例中,引入了S404与S405。
具体地,在S404中,通过在局域网的DNS服务器中生成所述开源***的预设域名来帮用户自动替换域名。这是由于通常开源***没有二级域名,在本实施例中,通过在局域网的DNS服务器中生成开源***的预设域名,相当于在局域网的DNS服务器中给开源***取一个别名,这样用户在访问开源***的时候,局域网的DNS服务器会将别名的IP地址返回给用户,这样就可以帮助用户自动替换域名。
可以理解地,上述实现方式仅是本申请实施例的一种可选实现方式,在其它实施例中,也可以有其它的实现方式,例如,在另一可选的实现方式中,S404与S405可以分别替换为如下步骤A和B。
A、在所述局域网的防火墙内部搭建预设的代理服务;
B、修改所述开源***的访问域名为所述预设域名,将所述预设域名的IP地址发送至所述代理服务器,以使所述代理服务器将所述预设域名的IP地址作为所述开源***的访问地址。
在本实施例中,通过在防火墙内部再搭建一个正向代理服务,在客户端上修改被访问域名的地址,将被访问域名的地址解析指向防火墙内的代理服务器办公网内代理服务器即可。
通过上述分析可知,本实施例在用户访问开源***(例如,github)时,一方面通过局域网的DNS服务器进行检测;另一方面通过预先修改了被访问域名的值为开源***的访问地址,并将该修改发送给防火墙内部代理,以使防火墙的内部代理将被访问域名的值由开源***的访问地址变为预设的访问别名,借此绕过防火墙黑名单到达外部代理,外部代理再进行访问。实现了用户访问开源***以获取需要的开源文件的同时,能够有效阻止用户将内部文件上传至所述开源***,能够有效防止公司内部文件的泄露。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
基于上述实施例所提供的开源***访问管控方法,本发明实施例进一步给出实现上述方法实施例的装置实施例。
请参见图5,图5是本申请实施例提供的开源***访问管控装置的示意图。包括的各模块用于执行图2对应的实施例中的各步骤。具体请参阅图2对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图5,开源***访问管控装置5包括:
确定模块501,用于在当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息。
修改模块502,用于在若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址。
添加模块503,用于在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述确定模块501,包括:
第一确定单元,用于在当检测到用于访问开源***的请求后,确定所述请求携带的接口参数是否包含有访问令牌参数;
第二确定单元,用于在若所述请求携带的接口参数包含有所述访问令牌参数,则确定所述请求携带有用户登录信息;
第三确定单元,用于在若所述请求携带的接口参数不包含有所述访问令牌参数,则确定所述请求不携带有用户登录信息。
在一可选的实现方式中,所述修改模块502,包括:
第一获取单元,用于在若确定所述请求不携带有用户登录信息,则获取所述请求携带的用户报文;
修改单元,用于将所述用户报文的报文头中的被访问域名修改为所述开源***的访问地址。
在一可选的实现方式中,所述添加模块503,具体用于:
若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,所述请求为基于web页面的请求;
所述添加模块503,包括:
第二获取单元,用于在若确定基于web页面的请求携带有用户登录信息,则获取所述web页面携带的网络协议头;
设置单元,用于通过预先确定的代理服务器在所述网络协议头中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
在一可选的实现方式中,还包括:
生成模块,用于在局域网的DNS服务器中生成所述开源***的预设域名;
返回模块,用于通过所述DNS服务器将所述预设域名的IP地址返回给访问终端,以使所述访问终端将所述预设域名的IP地址作为所述开源***的访问地址。
在一可选的实现方式中,还包括:
搭建模块,用于在所述局域网的防火墙内部搭建预设的代理服务;
修改模块,用于修改所述开源***的访问域名为所述预设域名,将所述预设域名的IP地址发送至所述代理服务器,以使所述代理服务器将所述预设域名的IP地址作为所述开源***的访问地址。
图6是本申请实施例提供的开源***访问管控设备的示意图。如图6所示,该实施例的开源***访问管控设备6包括:处理器600、存储器601以及存储在所述存储器601中并可在所述处理器600上运行的计算机程序602,例如开源***访问管控程序。处理器600执行所述计算机程序602时实现上述各个开源***访问管控方法实施例中的步骤,例如图2所示的步骤201-203。或者,所述处理器600执行所述计算机程序602时实现上述各装置实施例中各模块/单元的功能,例如图5所示单元501-503的功能。
示例性的,所述计算机程序602可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器601中,并由处理器600执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序602在所述开源***访问管控设备6中的执行过程。例如,所述计算机程序602可以被分割成确定模块、修改模块、添加模块,各模块具体功能请参阅图5对应地实施例中地相关描述,此处不赘述。
所述开源***访问管控设备可包括,但不仅限于,处理器600、存储器601。本领域技术人员可以理解,图6仅仅是开源***访问管控设备6的示例,并不构成对开源***访问管控设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述视频处理设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器600可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器601可以是所述开源***访问管控设备66的内部存储单元,例如开源***访问管控设备6的硬盘或内存。所述存储器601也可以是所述开源***访问管控设备6的外部存储设备,例如所述开源***访问管控设备6上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器601还可以既包括所述开源***访问管控设备6的内部存储单元也包括外部存储设备。所述存储器601用于存储所述计算机程序以及所述开源***访问管控设备所需的其他程序和数据。所述存储器601还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述开源***访问管控方法。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在视频处理设备上运行时,使得视频处理设备执行时实现可实现上述开源***访问管控方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种开源***访问管控方法,其特征在于,包括:
当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息;
若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址;
若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,以阻止登录所述开源***。
2.根据权利要求1所述的方法,其特征在于,所述当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息,包括:
当检测到用于访问开源***的请求后,确定所述请求携带的接口参数是否包含有访问令牌参数;
若所述请求携带的接口参数包含有所述访问令牌参数,则确定所述请求携带有用户登录信息;
若所述请求携带的接口参数不包含有所述访问令牌参数,则确定所述请求不携带有用户登录信息。
3.根据权利要求2所述的方法,其特征在于,若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址,包括:
若确定所述请求不携带有用户登录信息,则获取所述请求携带的用户报文;
将所述用户报文的报文头中的被访问域名修改为所述开源***的访问地址。
4.根据权利要求3所述的方法,其特征在于,若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,包括:
若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
5.根据权利要求4所述的方法,其特征在于,所述请求为基于web页面的请求;
所述若确定所述请求携带有用户登录信息,则获取所述请求携带的用户报文,在所述用户报文中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,包括:
若确定基于web页面的请求携带有用户登录信息,则获取所述web页面携带的网络协议头;
通过预先确定的代理服务器在所述网络协议头中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空。
6.根据权利要求1-5任一所述的方法,其特征在于,在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空之后,还包括:
在局域网的DNS服务器中生成所述开源***的预设域名;
通过所述DNS服务器将所述预设域名的IP地址返回给访问终端,以使所述访问终端将所述预设域名的IP地址作为所述开源***的访问地址。
7.根据权利要求1-5任一所述的方法,其特征在于,在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空之后,还包括:
在局域网的防火墙内部搭建预设的代理服务;
修改所述开源***的访问域名为预设域名,将所述预设域名的IP地址发送至代理服务器,以使所述代理服务器将所述预设域名的IP地址作为所述开源***的访问地址。
8.一种开源***访问管控装置,其特征在于,包括:
确定模块,用于在当检测到用于访问开源***的请求后,确定所述请求是否携带有用户登录信息;
修改模块,用于在若所述请求不携带有用户登录信息,则将所述请求携带的被访问域名修改为所述开源***的访问地址;
添加模块,用于在若所述请求携带有用户登录信息,则在所述请求中添加预设的页面刷新字段,将所述页面刷新字段的预设字符值设置为空,以阻止登录所述开源***。
9.一种开源***访问管控设备,包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010719159.4A CN111885063B (zh) | 2020-07-23 | 2020-07-23 | 开源***访问管控方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010719159.4A CN111885063B (zh) | 2020-07-23 | 2020-07-23 | 开源***访问管控方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111885063A CN111885063A (zh) | 2020-11-03 |
CN111885063B true CN111885063B (zh) | 2022-08-02 |
Family
ID=73156051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010719159.4A Active CN111885063B (zh) | 2020-07-23 | 2020-07-23 | 开源***访问管控方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111885063B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242658B (zh) * | 2022-07-22 | 2023-08-29 | 中国平安财产保险股份有限公司 | 开放***访问方法、装置、计算机设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104852883A (zh) * | 2014-02-14 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 保护账号信息安全的方法和*** |
CN108418824A (zh) * | 2018-03-07 | 2018-08-17 | 北京元心科技有限公司 | 访问互联网的方法、装置及终端设备 |
CN110213339A (zh) * | 2019-05-10 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 资源访问方法、装置、存储介质和计算机设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11128624B2 (en) * | 2018-09-24 | 2021-09-21 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for logging in to an external website from a cloud based computing environment |
-
2020
- 2020-07-23 CN CN202010719159.4A patent/CN111885063B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104852883A (zh) * | 2014-02-14 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 保护账号信息安全的方法和*** |
WO2015120808A1 (en) * | 2014-02-14 | 2015-08-20 | Tencent Technology (Shenzhen) Company Limited | Method and system for security protection of account information |
CN108418824A (zh) * | 2018-03-07 | 2018-08-17 | 北京元心科技有限公司 | 访问互联网的方法、装置及终端设备 |
CN110213339A (zh) * | 2019-05-10 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 资源访问方法、装置、存储介质和计算机设备 |
Non-Patent Citations (1)
Title |
---|
统一域名服务***设计方案;刘宝新;《电脑知识与技术》;20121225(第36期);第8628-8630页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111885063A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107948167B (zh) | 一种单点登录的方法和装置 | |
US10681028B2 (en) | Controlling access to resources on a network | |
CN104767719B (zh) | 确定登录网站的终端是否是移动终端的方法及服务器 | |
US9769266B2 (en) | Controlling access to resources on a network | |
CN110300133B (zh) | 跨域数据传输方法、装置、设备及存储介质 | |
CN111431753A (zh) | 一种资产信息更新方法、装置、设备及存储介质 | |
US20130074160A1 (en) | Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus | |
CN110968760A (zh) | 网页数据的爬取方法、装置、网页登录方法及装置 | |
CN109361574B (zh) | 基于JavaScript脚本的NAT检测方法、***、介质和设备 | |
CN109286620B (zh) | 用户权限管理方法、***、设备和计算机可读存储介质 | |
US20200045048A1 (en) | Data Leakage and Information Security Using Access Control | |
US8127033B1 (en) | Method and apparatus for accessing local computer system resources from a browser | |
CN104036194A (zh) | 一种应用程序中泄露隐私数据的漏洞检测方法及装置 | |
CN113239308A (zh) | 一种页面访问方法、装置、设备及存储介质 | |
CN111885063B (zh) | 开源***访问管控方法、装置、设备及存储介质 | |
CN108600259B (zh) | 设备的认证和绑定方法及计算机存储介质、服务器 | |
US8904487B2 (en) | Preventing information theft | |
CN110049106B (zh) | 业务请求处理***及方法 | |
CN110855656B (zh) | 可实现应用服务器防护的插件流量代理方法、装置及*** | |
CN110633432A (zh) | 一种获取数据的方法、装置、终端设备及介质 | |
CN112468356B (zh) | 路由器接口测试方法、装置、电子设备和存储介质 | |
CN117134927A (zh) | 一种基于Kong网关的登录校验方法及相关设备 | |
CN107291563B (zh) | 一种后端代码插件的调用方法和装置 | |
CN112464225A (zh) | 一种请求处理方法、请求处理装置及计算机可读存储介质 | |
US8640244B2 (en) | Declared origin policy |
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 |