CN113630447B - 一种基于web的云服务提供方法、系统及存储介质 - Google Patents
一种基于web的云服务提供方法、系统及存储介质 Download PDFInfo
- Publication number
- CN113630447B CN113630447B CN202110830243.8A CN202110830243A CN113630447B CN 113630447 B CN113630447 B CN 113630447B CN 202110830243 A CN202110830243 A CN 202110830243A CN 113630447 B CN113630447 B CN 113630447B
- Authority
- CN
- China
- Prior art keywords
- cloud service
- web client
- request
- random access
- agent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000004044 response Effects 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 11
- 239000000284 extract Substances 0.000 claims description 5
- 230000008569 process Effects 0.000 description 14
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/321—Cryptographic 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/3213—Cryptographic 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及的基于web的云服务提供方法、系统及存储介质。其中方法包括:web客户端向代理端发送的云服务连接创建请求,所述云服务连接创建请求包括token和所请求云服务;所述代理端响应于所述云服务创建请求根据相应的token检查所述web客户端是否拥有所请求云服务的权限,是则针对所请求云服务生成唯一的随机访问ID,记录所请求云服务使用的IP和端口与生成的随机访问ID的对应关系,将随机访问ID反馈给相应的web客户端;所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立websocket连接;述代理端根据随机访问ID确定所请求云服务并连接所请求云服务的IP和端口。应用本申请能够通过浏览器等web客户端安全地访问服务端提供的云服务。
Description
技术领域
本申请涉及云平台的云服务提供领域,尤其涉及一种基于web的云服务提供方法、系统及存储介质。
背景技术
数据中心构成的云平台利用配置的分布式存储、资源调度以及虚拟化技术将自身强大的计算资源以及各种云服务提供给用户,用户利用云平台提供的云服务为自身业务服务,不必将精力耗费基础服务的开发,有利于提高完成业务的效率,有利于降低成本。
云平台提供了各种各样的云服务,如Mysql数据库服务、Rabbitmq消息队列服务等等。用户要使用云平台的服务往往也在本地配置相应的客户端,用户通过客户端登录云平台,云平台配置的统一身份管理系统对用户进行认证、权限配置、权限控制;用户通过客户端来获取云平台服务。云平台没有针对云服务分配公网IP,因而服务与终端的用户之间网络是隔离的,用户无法通过web连接某个IP、端口来访问云服务。而如果云平台针对云服务分配公网IP,使得用户能够通过web获取云服务,仍存在一下问题:一方面将云服务直接暴露于互联网,存在安全隐患,容易被黑客利用云服务端口攻击甚至入侵到云平台的数据中心,另一方面如果针对云服务分配公网IP大量的服务需要占用大量的公网IP,提供云服务的成本高。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供一种基于web的云服务提供方法、系统及存储介质。
第一方面,本申请提供一种基于web的云服务提供方法,包括:
创建web客户端与代理端之间的连接,使所述web客户端从所述代理端获取相应的token;
web客户端向代理端发送的云服务连接创建请求,所述云服务连接创建请求包括token和所请求云服务,所述代理端响应于所述云服务创建请求:
根据云服务连接创建请求中相应的token检查所述web客户端是否拥有所请求云服务的权限,
是则针对云服务连接创建请求中所请求云服务生成唯一的随机访问ID,并记录所请求云服务使用的IP和端口与生成的随机访问ID的对应关系,
将生成的相应的随机访问ID反馈给相应的web客户端;
所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接;,所述代理端根据websocket连接的随机访问ID确定所请求云服务并连接所请求云服务的IP和端口。
更进一步地,创建web客户端与所述代理端之间的连接,使所述web客户端从所述代理端获取相应的token包括:
所述web客户端与所述代理端之间建立TCP连接;
所述web客户端向所述代理端发送登录请求,所述登录请求中包括用户名和密码;
所述代理端响应于相应的登录请求:
校验登录请求中的用户名和密码是否正确,
是则所述代理端允许web客户端登录且向相应的所述web客户端反馈token。
更进一步地,web客户端向代理端发送的云服务连接创建请求包括:
所述web客户端向所述代理端发送基于http协议的云服务连接创建请求,所述云服务连接创建请求的帧头部包含所述token,所述云服务连接创建请求的帧数据包含所请求云服务。
更进一步地,所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接包括:
所述web客户端利用所述随机访问ID配置websocket的目标url;
所述web客户端向所述代理端发送基于http协议的握手请求,所述握手请求包含token和所述目标url;
所述代理端响应于握手请求:
根据握手请求中token和目标url中的随机访问ID判断相应的web客户端是否具有访问云服务的权限,
是则所述代理端与相应的web客户端建立针对云服务的websocket连接。
更进一步地,所述代理端根据websocket连接的随机访问ID确定所请求云服务并连接所请求云服务的IP和端口包括:
所述代理端根据websocket连接的随机访问ID确定云服务;
所述代理端根据websocket连接的随机访问ID查询所请求云服务使用的IP和端口与生成的随机访问ID的对应关系确定所请求云服务使用的IP、端口;
创建所述代理端与所请求云服务使用的IP、端口之间的TCP连接。
更进一步地,所述web客户端通过相应的websocket连接向所述代理端发送基于websocket的云服务请求;
所述代理端从基于websocket的云服务请求中提取云服务请求内容,并将提取的云服务请求内容通过相应的IP、端口发送给相应的服务端;
相应的服务端根据云服务请求内容生成相应的云服务反馈,并将云服务反馈返回给所述代理端;
所述代理端利用相应的websocket连接将相应的云服务反馈的内容发送给相应的web客户端。
更进一步地,所述服务端通过一个IP和端口为多个云服务提供通信。
更进一步地,所述代理端生成随机访问ID时,配置随机访问ID的有效期,所述代理端将根据到期的随机访问ID配置的目标url标记为无效。
第二方面本申请提供一种提供云服务的系统,包括:web客户端,所述web客户端连接代理端,所述代理端连接服务端;其中,
所述web客户端向代理端发起云服务连接创建请求,所述代理端根据云服务连接创建请求生成相应的随机响应ID并反馈给web服务端,所述随机响应ID用于创建web客户端和代理端之间的websocket连接;
所述web客户端通过相应的websocket连接向所述代理端发送基于websocket的云服务请求,所述代理端从基于websocket的云服务请求中提取随机访问ID和云服务请求内容,并根据随机访问ID获取相应的服务端IP和端口,将云服务请求内容通过相应的IP和端口发送给所述服务端;
所述服务端根据云服务请求内容执行云服务生成云服务反馈,并将云服务反馈返回给所述代理端;
所述代理端通过响应的websocket连接将云服务反馈的内容发送给所述web客户端。
第三方面本申请提供一种实现基于web的云服务提供方法的存储介质,所述实现基于web的云服务提供方法的存储介质存储至少一条指令,执行所述指令实现所述基于web的云服务提供方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
所述代理端记录所请求云服务使用的IP和端口与随机访问ID对应关系;所述代理端通过TCP连接服务端提供云服务的IP、端口;所述代理端解析web客户端通过相应websocket连接发送的云服务请求,解析获取云服务请求中的随机响应ID和云服务请求内容,并将云服务请求内容通过相应的IP、端口转发给相应的服务端,所述服务端根据云服务请求内容进行相关操作生成云服务反馈,所述服务端将云服务反馈发送给所述代理端,所述代理端再通过相应的websocket连接将云服务反馈发送给所述web客户端。实现web客户端访问云服务。
本申请通过用户名以及密码的认证确保web客户端安全访问代理端。所述代理端将token反馈给web客户端,在web客户端在与代理端建立websocket连接时,所述web客户端向所述代理端发送握手请求,握手请求包括token和目标url,所述代理端验证web客户端提供的token以及配置目标url中随机访问ID,判断web客户端是否拥有访问云服务权限,拥有则允许web客户端的握手请求,保证与代理端通过websocket连接的web客户端拥有权限。服务端仅对外暴露提供云服务的IP和端口,降低黑客利用暴露的IP和端口对服务端进行入侵的风险。本申请通过配置随机访问ID的有效期来限制websocket连接的有效时间,避免被第三方利用截取随机访问ID来盗建websocket连接以获取云服务的情况。综上,本申请能够保证web客户端与服务端之间通信的安全。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的基于web的云服务提供方法的流程图;
图2为本申请实施例提供的创建web客户端与代理端之间的连接,使所述web客户端从所述代理端获取相应的token的流程图;
图3为本申请实施例提供的代理端响应云服务连接创建请求的操作的流程图;
图4为本申请实施例提供的web客户端与代理端握手的流程图;
图5为本申请实施例提供的代理端根据云服务请求连接服务端响应IP和端口的流程图;
图6为本申请实施例提供的提供云服务的系统的架构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
websocket是一种基于TCP实现的全双工通信协议,实现websocket连接的两个设备均能主动向对方推送数据。
websocket协议的帧头部小,能够在较小开销下实现两个设备之间的通信;websocket协议是全双工的,两个设备均能主动向对方推送数据,使得通信的延迟更小;在两个设备通过一次握手建立websocket连接之后,能够持久的维持websocket连接。
token:web客户端与代理端建立的会话的会话令牌,会话令牌是会话过程中的身份标识,代理端可以通过token识别web客户端用户身份。
实施例1
参阅图1所示,本实施例提供一种基于web的云服务提供方法,包括:
S100,创建web客户端与代理端之间的连接,使所述web客户端从所述代理端获取相应的token。
具体实施过程中,参阅图2所示,创建web客户端与代理端之间的连接,使所述web客户端从所述代理端获取相应的token包括:
S101,所述web客户端与所述代理端之间建立TCP连接;
S102,利用web客户端与代理端之间的TCP连接,用户通过所述web客户端向所述代理端发送基于http协议的登录请求,所述登录请求中包含用于验证身份的用户名和密码;
S103,所述代理端接收所述登录请求获取用户名和密码,并响应于登录请求来校验用户名密码是否正确,
是则执行S104,所述代理端允许web客户端登录;
S105,所述代理端将token返回给相应的所述web客户端。
否则执行S106,所述代理端向所述web客户端反馈用户名和密码错误。
S200,web客户端向代理端发送的云服务连接创建请求,所述云服务连接创建请求包括token和所请求云服务;
具体实施过程中,所述web客户端向所述代理端发送基于http协议的云服务连接创建请求,所述云服务连接创建请求通过http帧的形式发送给所述代理端,其中,http帧的帧头部包含所述token,http帧的帧数据包含所请求云服务。所述代理端接收到web客户端发送的云服务连接创建请求后通过token可以获知web客户端的身份,通过所请求云服务可以获知web客户端所请求的服务端的云服务。
S300,参阅图3所示,所述代理端响应于所述云服务创建请求实现以下过程:
S301,所述代理端根据云服务连接创建请求中相应的token检查所述web客户端是否拥有所请求云服务的访问权限。具体实施过程中,所述代理端记录用户使用云服务的权限,所述代理端根据token识别出用户身份,所述代理端根据记录的用户使用云服务的权限来获取用户所能使用的云服务集,所述代理端将所请求云服务与用户所能使用的云服务集匹配来判断web客户端是否拥有所请求云服务的权限。
是则执行步骤S302,所述代理端针对云服务连接创建请求中所请求云服务生成唯一的随机访问ID,
S303,所述代理端记录所请求云服务使用的IP和端口与生成的随机访问ID的对应关系,
S304,所述代理端将生成的相应的随机访问ID反馈给相应的web客户端;
否则执行步骤305,所述代理端向相应的所述web客户端反馈权限不足。
S400,所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接;
参阅图4所示,所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接包括:
S401,所述web客户端利用所述随机访问ID配置websocket的目标url,由不同随机访问ID配置的不同目标url用于使得websocket连接到不同的服务终结点。
S402,所述web客户端向所述代理端发送基于http协议的握手请求。所述握手请求包含token和所述目标url,所述握手请求还包括握手的代理端的地址和服务端口,根据代理端的地址和服务端口将请求发送给相应的代理端。
S403,所述代理端响应于握手请求根据握手请求中token和目标url中的随机访问ID判断相应的web客户端是否具有访问相应云服务的权限;
具体的,所述代理端根据token验证发送握手请求的web客户端身份,所述代理端从目标url获取随机访问ID,所述代理端根据从握手请求获取token和随机访问ID查询响应云服务连接创建请求过程中是否将相应随机访问ID发送给相应的web客户端,是则所述代理端认为相应web客户端具有访问相应云服务的权限,否则所述代理端认为相应web客户端不具有访问相应云服务的权限。
所述代理端认为相应web客户端具有访问相应云服务的权限时,执行S404,所述代理端允许相应的web客户端建立针对云服务的websocket连接。
所述代理端认为相应web客户端不具有访问相应云服务的权限时,执行S405,所述代理端拒绝相应的web客户端建立针对云服务的websocket连接。
S500,所述代理端根据云服务请求中包含的随机访问ID确定所请求云服务并连接所请求云服务的IP和端口。
具体实施过程中,所述代理端根据云服务请求中包含的随机访问ID确定所请求云服务并连接所请求云服务的IP和端口包括:
S501,所述web客户端通过websocket连接向所述代理端发送基于websocket的云服务请求;
S502,所述代理端接收基于websocket的云服务请求后,解析获取其所包含的随机访问ID;所述代理端根据随机访问ID确定云服务;
S503,所述代理端根据从云服务请求中获取的随机访问ID查询所请求云服务使用的IP和端口与生成的随机访问ID的对应关系,以确定所请求云服务使用的IP、端口;
S504,创建所述代理端与所请求云服务使用的IP、端口之间的TCP连接。
在所述代理端与所请求云服务使用的IP、端口之间建立TCP连接之后,所述代理端通过IP和端口将解析云服务请求获取的云服务请求内容发送给相应的服务端;
相应的服务端根据云服务请求内容执行云服务操作生成相应的云服务反馈,所述服务端将云服务反馈返回给所述代理端;
所述代理端利用相应的websocket连接将相应的云服务反馈的内容发送给相应的web客户端。
具体实施过程中,所述服务端通过一个IP和端口为多个云服务提供通信。所述服务端对外暴露的IP和端口少,安全性强。
具体实施过程中,所述代理端生成随机访问ID时,配置随机访问ID的有效期,所述代理端将根据到期的随机访问ID配置的目标url标记为无效。所述代理端根据云服务连接创建请求中所请求云服务生成随机访问ID时,为随机访问ID配置一个有效期,所述代理端的系统时钟到达有效期时,所述代理端将到期的随机访问ID配置目标url标记为无效,使得所述web客户端与代理端针对云服务的websocket连接断开。通过设定随机访问ID的有效期,能够有效避免第三方利用截获的随机访问ID访问云服务的情况。
实施例2
参阅图6所示,本实施例提供一种提供云服务的系统,包括:web客户端,所述web客户端连接代理端,所述代理端连接服务端;其中,
所述web客户端配置云服务连接创建请求模块,所述云服务连接创建请求模块用于向代理端发起云服务连接创建请求,所述代理端根据云服务连接创建请求生成相应的随机响应ID并反馈给web服务端;
所述web客户端配置websocket配置模块,所述websocket配置模块用于利用所述随机响应ID配置目标url,所述websocket配置模块向代理端发送握手请求。
所述代理端配置第一权限识别模块,所述第一权限识别模块用于识别云服务连接创建请求中的token,根据token判断相应的所述web客户端是否拥有访问所请求云服务的权限;
所述代理端配置随机响应ID生成模块,所述随机响应ID生成模块用于在第一权限识别模块确定web客户端拥有访问所请求云服务的权限时,针对所请求云服务生成随机响应ID,所述代理端将随机响应ID发送给web客户端;
所述代理端记录服务端IP和端口与所提供云服务的映射关系,所述代理端记录随机响应ID与服务端IP、端口的对应关系;
所述代理端配置第二权限识别模块,所述第二权限识别模块获取握手请求中的token和随机访问ID,所述第二权限识别模块根据握手请求中的token和随机访问ID查询代理端在响应云服务连接创建请求过程中是否相应的web客户端发送相应的随机访问ID,是则所述第二权限识别模块认为发送握手请求的web客户端具有访问相应云服务的权限;
所述代理端在所述第二权限识别模块认为发送握手请求的web客户端具有访问相应云服务的权限时,允许所述websocket配置模块发送的握手请求,建立web客户端和代理端之间的websocket连接。
所述web客户端通过相应的websocket连接向所述代理端发送基于websocket的云服务请求,所述代理端从基于websocket的云服务请求中提取随机访问ID和云服务请求内容,并根据随机访问ID获取相应的服务端IP和端口,将云服务请求内容通过相应的IP和端口发送给所述服务端;
所述服务端根据云服务请求内容执行云服务生成云服务反馈,并将云服务反馈返回给所述代理端;
所述代理端通过响应的websocket连接将云服务反馈的内容发送给所述web客户端。
具体实施过程中,所述web客户端还配置登录模块,所述登录模块用于向所述代理端发送登录请求,所述登录请求中包括用户名和密码。所述代理端还配置第三权限识别模块,所述第三权限识别模块识别登录请求的用户名和密码是否正确,是则代理端允许web客户端登录,所述代理端将token发送给相应的所述web客户端。
实施例3
本实施例提供一种实现基于web的云服务提供方法的存储介质,所述实现基于web的云服务提供方法的存储介质存储至少一条指令,执行所述指令实现所述基于web的云服务提供方法。
本申请提供的基于web的云服务提供方法将常用的浏览器等web客户端与所述代理端连接,控制web客户端向所述代理端发送云服务连接创建请求,所述代理端针对web客户端发送的云服务连接创建请求中所请求的云服务生成随机访问ID,所述代理端将随机访问ID返回给相应的web客户端,相应的web客户端利用随机访问ID配置websocket的目标url,并与所述代理端握手以实现websocket连接;通过websocket可以实现web客户端与代理端的全双工通信,使得web客户端能够向代理端发送云服务请求,使得代理端能向web客户端返回云服务请求的反馈。
所述代理端记录所请求云服务使用的IP和端口与随机访问ID对应关系;所述代理端通过TCP连接连接服务端提供云服务的IP、端口;所述代理端解析web客户端通过相应websocket连接发送的云服务请求,解析获取云服务请求中的随机响应ID和云服务请求内容,并将云服务请求内容通过相应的IP、端口转发给相应的服务端,所述服务端根据云服务请求内容进行相关操作生成云服务反馈,所述服务端将云服务反馈发送给所述代理端,所述代理端再通过相应的websocket连接将云服务反馈发送给所述web客户端。实现web客户端访问云服务。
本申请通过用户名以及密码的认证确保web客户端安全访问代理端。所述代理端将token反馈给web客户端;在web客户端在与代理端建立websocket连接时,所述web客户端向所述代理端发送握手请求,握手请求包括token和目标url,所述代理端验证web客户端提供的token以及配置目标url中随机访问ID,判断web客户端是否拥有访问云服务权限,拥有则允许web客户端的握手请求,保证与代理端通过websocket连接的web客户端拥有权限。服务端仅对外暴露提供云服务的IP和端口,降低黑客利用暴露的IP和端口对服务端进行入侵的风险。本申请通过配置随机访问ID的有效期来限制websocket连接的有效时间,避免被第三方利用截取随机访问ID来盗建websocket连接以获取云服务的情况。综上,本申请能够保证web客户端与服务端之间通信的安全。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种基于web的云服务提供方法,其特征在于,包括:
创建web客户端与代理端之间的连接,使所述web客户端从所述代理端获取相应的token;
web客户端向代理端发送云服务连接创建请求,所述云服务连接创建请求中包括token和所请求云服务;
所述代理端响应于所述云服务创建请求:
根据相应的token检查所述web客户端是否拥有所请求云服务的权限,
是则针对所请求云服务生成唯一的随机访问ID,并记录所请求云服务使用的IP和端口与生成的随机访问ID的对应关系,
将生成的相应的随机访问ID反馈给相应的web客户端;
所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接;
所述代理端根据随机访问ID确定所请求云服务并连接所请求云服务的IP和端口;所述代理端根据websocket连接的随机访问ID确定云服务;所述代理端根据websocket连接的随机访问ID查询所请求云服务使用的IP和端口与生成的随机访问ID的对应关系确定所请求云服务使用的IP、端口;创建所述代理端与所请求云服务使用的IP、端口之间的TCP连接;所述web客户端通过相应的websocket连接向所述代理端发送基于websocket的云服务请求;所述代理端从基于websocket的云服务请求中提取云服务请求内容,并将提取的云服务请求内容通过相应的IP、端口发送给相应的服务端;相应的服务端根据云服务请求内容生成相应的云服务反馈,并将云服务反馈返回给所述代理端;所述代理端利用相应的websocket连接将相应的云服务反馈的内容发送给相应的web客户端。
2.根据权利要求1所述基于web的云服务提供方法,其特征在于,创建web客户端与所述代理端之间的连接,使所述web客户端从所述代理端获取相应的token包括:
所述web客户端与所述代理端之间建立TCP连接;
所述web客户端向所述代理端发送登录请求,所述登录请求中包括用户名和密码;
所述代理端响应于相应的登录请求:
校验登录请求中的用户名和密码是否正确,
是则所述代理端允许web客户端登录且向相应的所述web客户端反馈token。
3.根据权利要求2所述基于web的云服务提供方法,其特征在于,web客户端向代理端发送云服务连接创建请求包括:
所述web客户端向所述代理端发送基于http协议的云服务连接创建请求,所述云服务连接创建请求的帧头部包含所述token,所述云服务连接创建请求的帧数据包含所请求云服务。
4.根据权利要求1所述基于web的云服务提供方法,其特征在于,所述web客户端利用接收的随机访问ID构建目标url并与所述代理端握手建立针对云服务的websocket连接包括:
所述web客户端利用所述随机访问ID配置websocket的目标url;
所述web客户端向所述代理端发送基于http协议的握手请求,所述握手请求包含token和所述目标url;
所述代理端响应于握手请求:
根据握手请求中token和目标url中的随机访问ID判断相应的web客户端是否具有访问云服务的权限,
是则所述代理端与相应的web客户端建立针对云服务的websocket连接。
5.根据权利要求1所述基于web的云服务提供方法,其特征在于,所述服务端通过一个IP和端口为多个云服务提供通信。
6.根据权利要求1所述基于web的云服务提供方法,其特征在于,所述代理端生成随机访问ID时,配置随机访问ID的有效期,所述代理端将根据到期的随机访问ID配置的目标url标记为无效。
7.一种提供云服务的系统,其特征在于,包括:web客户端,所述web客户端连接代理端,所述代理端连接服务端;其中,
所述web客户端向代理端发起云服务连接创建请求,所述代理端根据云服务连接创建请求生成相应的随机响应ID并反馈给web服务端,所述随机响应ID用于创建web客户端和代理端之间的websocket连接;
所述web客户端通过相应的websocket连接向所述代理端发送基于websocket的云服务请求,所述代理端从基于websocket的云服务请求中提取随机访问ID和云服务请求内容,并根据随机访问ID获取相应的服务端IP和端口,将云服务请求内容通过相应的IP和端口发送给所述服务端;
所述服务端根据云服务请求内容执行云服务生成云服务反馈,并将云服务反馈返回给所述代理端;
所述代理端通过响应的websocket连接将云服务反馈的内容发送给所述web客户端。
8.一种实现基于web的云服务提供方法的存储介质,其特征在于,所述实现基于web的云服务提供方法的存储介质存储至少一条指令,执行所述指令实现如权利要求1-6任一所述基于web的云服务提供方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110830243.8A CN113630447B (zh) | 2021-07-22 | 2021-07-22 | 一种基于web的云服务提供方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110830243.8A CN113630447B (zh) | 2021-07-22 | 2021-07-22 | 一种基于web的云服务提供方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113630447A CN113630447A (zh) | 2021-11-09 |
CN113630447B true CN113630447B (zh) | 2023-04-07 |
Family
ID=78380790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110830243.8A Active CN113630447B (zh) | 2021-07-22 | 2021-07-22 | 一种基于web的云服务提供方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113630447B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113992492B (zh) * | 2021-12-28 | 2022-08-09 | 北京天维信通科技有限公司 | 基于扩展tcp协议实现单地址单端口连接的管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016015436A1 (zh) * | 2014-07-28 | 2016-02-04 | 百度在线网络技术(北京)有限公司 | 平台授权方法、平台服务端、应用客户端及系统和存储介质 |
WO2020248284A1 (zh) * | 2019-06-14 | 2020-12-17 | Oppo广东移动通信有限公司 | 一种访问控制方法、装置及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016122545A1 (en) * | 2015-01-29 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Cloud-hosted user authentication |
CN107948203B (zh) * | 2017-12-29 | 2019-09-13 | 平安科技(深圳)有限公司 | 一种容器登录方法、应用服务器、系统及存储介质 |
CN109922053A (zh) * | 2019-02-22 | 2019-06-21 | 北京三快在线科技有限公司 | 数据传输方法、装置、电子设备及可读存储介质 |
CN111212117A (zh) * | 2019-12-24 | 2020-05-29 | 曙光信息产业(北京)有限公司 | 一种远程交互的方法和装置 |
CN111211934B (zh) * | 2019-12-25 | 2022-04-12 | 曙光信息产业(北京)有限公司 | 集群远程通信测试方法以及系统 |
CN112311855B (zh) * | 2020-09-30 | 2022-07-12 | 新华三大数据技术有限公司 | 一种数据传输方法及装置 |
CN112492017A (zh) * | 2020-11-24 | 2021-03-12 | 航天信息股份有限公司 | 一种基于token认证的websocket连接方法及系统 |
-
2021
- 2021-07-22 CN CN202110830243.8A patent/CN113630447B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016015436A1 (zh) * | 2014-07-28 | 2016-02-04 | 百度在线网络技术(北京)有限公司 | 平台授权方法、平台服务端、应用客户端及系统和存储介质 |
WO2020248284A1 (zh) * | 2019-06-14 | 2020-12-17 | Oppo广东移动通信有限公司 | 一种访问控制方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113630447A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109067914B (zh) | Web服务的代理方法、装置、设备及存储介质 | |
EP1934780B1 (en) | Creating secure interactive connections with remote resources | |
EP3907973A1 (en) | Method for establishing communication connection and proxy server | |
CN1954576B (zh) | 处理启动请求的方法、装置和系统 | |
US8924505B2 (en) | Method and device for configuring a user agent to operate as a web server | |
CN104052746B (zh) | 异构应用单点登录系统及其单点登录方法 | |
US20120179747A1 (en) | Communications system providing enhanced client-server communications and related methods | |
CN111049946B (zh) | 一种Portal认证方法、系统及电子设备和存储介质 | |
US20190334966A1 (en) | Electronic device and method for controlling electronic device | |
CN110892697B (zh) | 协助api调用处理的加速系统 | |
JPWO2017130292A1 (ja) | サーバ及びプログラム | |
CN107222561A (zh) | 一种传输层反向代理方法 | |
US12015609B2 (en) | Secure identity provider authentication for native application to access web service | |
CN105991640B (zh) | 处理http请求的方法及装置 | |
CN113630447B (zh) | 一种基于web的云服务提供方法、系统及存储介质 | |
WO2013185696A2 (zh) | 一种数据处理的方法与设备 | |
JP5211579B2 (ja) | Sipを用いた認証システムおよび認証方法 | |
WO2012097728A1 (zh) | 一种开放平台代理访问方法及装置 | |
EP2169561B1 (en) | communications system providing shared client-server communications interface and related methods | |
CN114301968B (zh) | 服务端的访问方法、系统、设备及存储介质 | |
EP3107352B1 (en) | Information transfer method, system and apparatus | |
JP2005301424A (ja) | 分散認証システム、負荷分散装置及び認証サーバ、並びに負荷分散プログラム及び認証プログラム | |
CN115525442A (zh) | 一种远程命令执行方法及装置 | |
JP2005346571A (ja) | 認証システム及び認証方法 | |
KR20120087262A (ko) | 고객의 가상 전화번호를 이용하여 고객 응대를 수행하는 고객센터 시스템 및 그 응대 방법 |
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 |