CN113905034A - 一种视频获取方法、系统、设备及介质 - Google Patents

一种视频获取方法、系统、设备及介质 Download PDF

Info

Publication number
CN113905034A
CN113905034A CN202010952983.4A CN202010952983A CN113905034A CN 113905034 A CN113905034 A CN 113905034A CN 202010952983 A CN202010952983 A CN 202010952983A CN 113905034 A CN113905034 A CN 113905034A
Authority
CN
China
Prior art keywords
terminal
video
authentication
server
authorization 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.)
Pending
Application number
CN202010952983.4A
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN113905034A publication Critical patent/CN113905034A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • 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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供了一种视频获取方法、系统、设备及介质,桌面云可以向终端发送虚拟桌面,而视频即可在该虚拟桌面中进行播放。同时,桌面云可以对终端进行鉴权,当该终端通过鉴权时,向视频服务器发送该终端的标识,并指示终端从视频服务器中获取用于在该虚拟桌面中呈现的视频。由于在终端从视频服务器获取视频的过程中,该终端已经通过桌面云的鉴权,表明该终端属于合法终端,如此,该终端获取视频的安全性相对较高,而当视频在该终端上进行播放时,该视频内容发生泄漏的风险可以得到有效降低。

Description

一种视频获取方法、系统、设备及介质
本申请要求于2020年07月06日提交中国国家知识产权局、申请号为202010638735.2、申请名称为“API通信的方法、装置、服务器及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及多媒体技术领域,尤其涉及一种视频获取方法、系统、设备以及计算机可读存储介质。
背景技术
视频直播,是指利用互联网以及流媒体技术将视频内容实时推送至终端,以便基于终端将视频内容呈现给用户,不仅广泛应用于互联网的视频服务,而且,在企业内部也存在较多应用,如进行实时在线培训分享、视频会议等。视频直播,通常要求终端具有较大的网络带宽、较低的网络延迟,以达到较为优质的实时播放效果。
在虚拟桌面云环境中,基于视频重定向技术,终端(可以是终端上的桌面云客户端)通过访问视频服务器,请求获取直播的视频流。实际应用的较多场景中,要求视频服务器在向终端提供视频时,尽可能保证该视频内容不被泄漏。但是,目前终端访问视频服务器上视频的方式,安全性较低,这使得视频内容发生泄露的风险较高。
发明内容
本申请提供了一种视频获取方法,解决了相关技术中终端获取视频的安全性较低,视频内容发生泄露的风险较高的问题。本申请还提供了上述方法对应的设备、系统、计算机可读存储介质以及计算机程序产品。
第一方面,本申请实施例提供了一种视频获取方法,该方法可以应用于桌面云,在该方法中,桌面云(具体可以是桌面云中的服务器等设备),向终端发送虚拟桌面,并对终端进行鉴权;当该终端通过鉴权时,桌面云可以向视频服务器发送该终端的标识,并指示该终端从视频服务器中获取用于在虚拟桌面中呈现的视频。由于在终端从视频服务器获取视频的过程中,该终端已经通过桌面云的鉴权,表明该终端属于合法终端,如此,该终端获取视频的安全性相对较高,并且,当视频在该终端上进行播放时,该视频内容发生泄漏的风险可以得到有效降低。
在一种可能的实施方式中,在指示终端从视频服务器中获取用于在虚拟桌面中呈现的视频时,具体可以是指示终端重定向到视频服务器以获取用于在虚拟桌面中呈现的视频。
在一种可能的实施方式中,桌面云中可以包括桌面云服务模块或者鉴权模块。其中,桌面云在对终端进行鉴权时,具体可以桌面云服务模块或者鉴权模块根据该终端的访问授权信息,确定该终端通过鉴权。实际应用中,该桌面云服务模块或者鉴权模块,可以被部署于桌面云的服务器上。
在一种可能的实施方式中,桌面云在对终端进行鉴权时,具体可以是由鉴权模块从桌面云服务模块获取用于鉴权的访问授权信息,并同时获取该终端的权限认证信息;然后,鉴权模块可以对该权限认证信息以及访问授权信息进行匹配,当这两个信息相匹配时,鉴权模块可以确定该终端通过访问鉴权。而当这两个信息不匹配时,鉴权模块可以确定该终端访问鉴权失败,从而使得终端不具有获取视频的权限。
在一种可能的实施方式中,可以是由桌面云中的桌面云服务模块对终端进行访问鉴权,具体可以是获取用于访问鉴权的访问授权信息,并获取该终端的权限认证信息;然后,鉴权模块可以对该权限认证信息以及访问授权信息进行匹配,当这两个信息相匹配时,鉴权模块可以确定该终端通过访问鉴权。而当权限认证信息以及访问授权信息不匹配时,鉴权模块可以确定该终端访问鉴权失败,从而使得终端不具有获取视频的权限。
在一种可能的实施方式中,上述访问授权信息具体可以是终端所使用的IP地址。如此,允许访问视频服务器的终端所使用的IP地址可以由桌面云服务进行动态调整,可以缓解目前视频服务器对于访问视频的终端所使用的IP地址的局限性。
在一种可能的实施方式中,桌面云还可以通知视频服务器允许向终端提供其所请求的视频。如此,视频服务器在终端请求视频时,可以确定允许对其进行响应,并向其提供相应的视频。
在一种可能的实施方式中,桌面云还可以对终端进行身份认证,具体实现时,桌面云中的鉴权模块可以获取该终端的身份认证信息,并对该终端的身份认证信息进行认证,具体可以是将该终端的身份认证信息与预先存储的身份授权信息进行匹配。当两个信息相匹配时,鉴权模块可以通知视频服务器允许向终端提供视频。如此,不仅对终端的访问鉴权,还对终端进行身份鉴权,从而可以进一步提高终端获取视频的安全性,降低视频内容发生泄漏的风险。
在一种可能的实施方式中,桌面云还可以预先为终端创建身份授权信息。具体的,桌面云服务模块可以向鉴权模块发送针对于身份授权信息的获取请求,并由鉴权模块创建出身份授权信息,然后,鉴权模块可以将该身份授权信息发送给桌面云服务模块,再由桌面云服务模块将该身份授权信息转发给终端。或者,也可以是由鉴权模块直接将该终端的身份授权信息发送给终端。如此,终端可以持获取到的身份授权信息完成访问视频时的身份认证。
在一种可能的实施方式中,桌面云在通知视频服务器允许向终端提供视频时,具体可以是通知该视频服务器允许向终端提供指定的URL对应的视频。这样,视频服务器可以只向终端提供特定的视频,而对于其它URL对应的视频,视频服务器可以不提供。
在一种可能的实施方式中,桌面云可以对终端访问的视频进行限制。具体的,桌面云服务模块或者鉴权模块可以从视频服务器获取终端所请求的视频对应的URL,并将视频服务器返回的URL发送给鉴权模块,这样,鉴权模块在创建身份授权信息时,可以将接收到的URL与该身份授权信息进行绑定,即建立二者之间的对应关系。当鉴权模块确定该终端通过身份鉴权时,可以通知视频服务器允许向终端提供该URL对应的视频,如可以将与身份授权信息绑定的URL发送给视频服务器等。如此,终端可以访问与该身份授权信息绑定的URL对应的视频,而无法访问其它视频。
在一种可能的实施方式中,桌面云可以通知视频服务器该终端对应的身份授权信息失效。示例性的,桌面云中的桌面云服务模块可以通知该鉴权模块身份授权信息失效,比如,桌面云服务模块可以在确定终端与桌面云断开连接时通知该鉴权模块失效身份授权信息,而鉴权模块可以通知该视频服务器该终端对应的身份授权信息发生失效,从而视频服务器因为身份授权信息的失效而停止向终端提供该视频。如此,可以使得获得视频的终端始终与桌面云存在连接。
第二方面,本申请实施例还提供了一种视频获取方法,包括:确定访问授权信息,所述访问授权信息指示成功登录桌面云服务器的第一桌面云客户端;向视频服务器发送所述访问授权信息,所述访问授权信息用于对请求所述视频服务器的视频的第二桌面云客户端进行访问权限认证。
在一种可能的实施方式中,所述访问授权信息,包括所述第一桌面云客户端登录所述桌面云服务器所使用的互联网协议地址。
在一种可能的实施方式中,所述方法还包括:向第一桌面云客户端发送通知信息,所述通知信息用于通知所述第一桌面云客户端能够通过虚拟专用网络VPN服务器请求访问所述视频服务器。
在一种可能的实施方式中,所述方法还包括:获取针对于所述第一桌面云客户端的身份授权信息,所述身份授权信息用于标识所述第一桌面云客户端为访问所述视频服务器的合法客户端;将所述身份授权信息发送给所述第一桌面云客户端。
在一种可能的实施方式中,所述获取针对于所述第一桌面云客户端的身份授权信息,包括:向鉴权服务器发送所述第一桌面云客户端的身份授权信息的获取请求,所述获取请求中包括所述第一桌面云客户端的标识信息;接收来自所述鉴权服务器的所述身份授权信息。
在一种可能的实施方式中,所述方法还包括:向所述视频服务器发送所述视频对应的统一资源定位符URL;接收来自所述视频服务器的所述URL;向所述鉴权服务器发送所述URL。
在一种可能的实施方式中,所述方法还包括:当确定所述第一桌面云客户端与所述桌面云服务器断开连接时,通知所述鉴权服务器所述身份授权信息失效。
第三方面,本申请实施例还提供了一种视频访问方法,所述方法应用于视频服务器,所述方法包括:接收来自桌面云服务器的访问授权信息以及来自第二桌面云客户端的访问请求,所述访问授权信息指示成功登录桌面云服务器的第一桌面云客户端,所述访问请求中包括权限认证信息;当所述权限认证信息与所述访问授权信息相匹配时,向所述第二桌面云客户端发送所述访问请求对应的视频。
在一种可能的实施方式中,所述访问授权信息,包括所述第一桌面云客户端登录所述桌面云服务器所使用的互联网协议地址。
在一种可能的实施方式中,所述访问请求还包括所述第二桌面云客户端的身份认证信息,所述方法还包括:接收来自所述桌面云服务器的身份授权信息,所述身份授权信息用于标识所述第一桌面云客户端为访问所述视频服务器的合法客户端;则,所述当所述权限认证信息与所述访问授权信息相匹配时,向所述第二桌面云客户端发送所述访问请求对应的视频,包括:当所述权限认证信息与所述访问授权信息相匹配,且所述身份认证信息与所述身份授权信息相匹配时,向所述第二桌面云客户端发送所述访问请求对应的视频。
在一种可能的实施方式中,所述方法还包括:向鉴权服务器发送所述第二桌面云客户端的身份认证信息;接收来自所述鉴权服务器的身份认证结果,所述身份认证结果指示所述身份认证信息与所述身份授权信息相匹配。
在一种可能的实施方式中,所述方法还包括:接收来自鉴权服务器的统一资源定位符URL;则,所述向所述第二桌面云客户端发送所述访问请求对应的视频,包括:向所述第二桌面云客户端发送所述URL对应的视频。
在一种可能的实施方式中,向所述第二桌面云客户端发送所述访问请求对应的视频,包括:通过虚拟专用网络VPN服务器向所述第二桌面云客户端发送所述访问请求对应的视频。
第四方面,本申请提供了一种视频获取系统。所述视频获取系统包括:通信单元,用于向终端发送虚拟桌面;鉴权单元,用于对所述终端鉴权;所述通信单元,还用于当所述终端通过鉴权时,向视频服务器发送所述终端的标识;指示单元,用于指示所述终端从所述视频服务器中获取用于在所述虚拟桌面中呈现的视频。
在一种可能的实施方式中,所述指示单元,具体用于指示所述终端重定向到所述视频服务器以获取用于在所述虚拟桌面中呈现的视频。
在一种可能的实施方式中,所述鉴权单元包括桌面云服务模块或鉴权模块;所述桌面云服务模块或者鉴权模块,用于根据所述终端的访问授权信息,确定所述终端通过鉴权。
在一种可能的实施方式中,所述鉴权单元,包括桌面云服务模块以及鉴权模块;所述鉴权模块,用于从桌面云服务模块获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
在一种可能的实施方式中,所述鉴权单元,包括桌面云服务模块;所述桌面云服务模块,用于获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
在一种可能的实施方式中,所述访问授权信息包括所述终端所使用的互联网协议地址。
在一种可能的实施方式中,所述通信单元,还用于通知所述视频服务器允许向所述终端提供所述视频。
在一种可能的实施方式中,所述鉴权单元包括桌面云服务模块以及鉴权模块;所述鉴权模块,还用于获取所述终端的身份认证信息,以及当所述终端的身份认证信息与预先存储的身份授权信息相匹配时,通知所述视频服务器允许向所述终端提供所述视频。
在一种可能的实施方式中,所述通信单元,还用于向所述终端发送所述身份授权信息。
在一种可能的实施方式中,所述通信单元,具体用于通知所述视频服务器允许向所述终端提供指定的统一资源定位符URL对应的视频。
在一种可能的实施方式中,所述桌面云服务模块或者鉴权模块,用于从所述视频服务器获取所述视频对应的统一资源定位符URL,其中,桌面云服务模块获取该URL后,还会向所述鉴权模块发送所述URL;所述鉴权模块,还用于建立所述URL与所述身份授权信息之间的对应关系,并具体用于通知所述视频服务器允许向所述终端提供所述URL对应的视频。
在一种可能的实施方式中,所述通信单元,还用于通知所述视频服务器所述身份授权信息失效,。如此,可以指示所述视频服务器停止向所述终端提供所述视频。
第五方面,本申请提供一种设备,所述设备包括处理器和存储器。所述处理器、所述存储器进行相互的通信。所述处理器用于执行所述存储器中存储的指令,以使得设备执行如第一方面或第一方面的任一种实现方式中的视频获取方法。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令指示设备执行上述第一方面或第一方面的任一种实现方式所述的视频获取理方法。
第七方面,本申请提供了一种包含指令的计算机程序产品,当其在设备上运行时,使得设备执行上述第一方面或第一方面的任一种实现方式所述的视频获取方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一示例性系统框架示意图;
图2为本申请实施例提供的另一示例性系统框架示意图;
图3为本申请实施例提供的又一示例性系统框架示意图;
图4为本申请实施例提供的再一示例性系统框架示意图;
图5为本申请实施例提供的一种视频获取方法流程示意图;
图6为本申请实施例提供的另一种视频获取方法流程示意图;
图7为本申请实施例提供的一种视频获取系统的架构示意图;
图8为本申请实施例提供的一种设备的结构示意图。
具体实施方式
本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
桌面云,是指在云平台上部署软、硬件,使终端用户通过瘦客户端或者其它任何与网络相连的设备来访问跨平台的应用程序,以及整个客户桌面。相应的,用于访问应用程序或者客户桌面的客户端,可以称之为桌面云客户端,而为桌面云客户端提供服务的服务器可以称之为桌面云服务器。
在观看(或者聆听)视频直播等场景中,桌面云通常采用视频重定向技术,由终端(具体为终端上的桌面云客户端)向视频服务器直接请求当前直播的视频流,并在终端本地播放该视频流对应的视频。但是,这种从视频服务器获取视频的实现方式的安全性较低,该视频可能会被非法终端请求并且获取到。而实际应用中众多场景中,视频服务器上的视频往往具有保密性要求。比如,若当前直播的视频内容为公司内部培训分享,则基于保密性的考虑,该直播内容通常仅允许该公司的职员观看,也即为该视频只允许被公司职员所使用的终端所获得,而若被不属于该公司的职员使用非法终端窃取到,则该视频内容发生泄漏。因此,当前基于视频重定向技术使得终端获取视频服务器上的视频的实现方式,安全性较低,视频内容发生泄漏的风险较高。
基于此,本申请实施例提供了一种视频获取方法,该方法可以应用于桌面云中,并且用于提高终端获取视频的安全性,降低视频内容发生泄漏的风险。具体的,桌面云可以向终端发送虚拟桌面,而视频即可在该虚拟桌面中进行播放。同时,桌面云可以对终端进行鉴权,当该终端通过鉴权时,向视频服务器发送该终端的标识,并指示终端从视频服务器中获取用于在该虚拟桌面中呈现的视频。由于在终端从视频服务器获取视频的过程中,该终端已经通过桌面云的鉴权,表明该终端属于合法终端,如此,该终端获取视频的安全性相对较高,并且,当视频在该终端上进行播放时,该视频内容发生泄漏的风险可以得到有效降低。
为了使得本申请的技术方案更加清楚、易于理解,下面结合附图对本申请实施例提供的软件包管理方法的应用场景进行介绍。
参见图1,示出了一种系统架构示意图。该系统包括终端100、桌面云200以及视频服务器300。其中,桌面云200可以包括一个或者多个服务器(图1中以包括一个服务器作为示例进行说明),视频服务器300可以为一个或者多个终端提供视频。
当终端100接入桌面云200时,桌面云200可以向终端发送虚拟桌面,该虚拟桌面中中可以具有视频播放窗口,该视频播放窗口可以根据从视频服务器300获取到的视频流播放相应的视频,当然,该视频播放窗口也能播放音频。作为一种示例,终端100的虚拟桌面中可以呈现有视频播放界面,该视频播放界面中的部分区域作为视频播放窗口,并在该视频播放窗口处播放视频,而该视频播放界面中的其它区域,可以呈现该视频的相关信息,如视频简介等,还可以呈现其它信息,如呈现终端100未播放的其它视频的相关信息等。
终端100在获得虚拟桌面后,可以向桌面云200发送获取视频的请求,以请求桌面云200为该终端100提供视频。其中,终端100所发送的请求中,携带有该终端100的标识。示例性的,该标识,可以用于唯一标识终端100,例如可以是终端100的媒体访问控制(MediaAccess Control,MAC)地址,终端100所使用的互联网协议(Internet Protocol,IP)地址,或者使用该终端100对应的用户名等。本实施例中,对于终端标识的具体实现方式并不进行限定。桌面云200在接收到该请求后,可以对该终端100进行鉴权,以便验证该终端100是否为合法终端。当该终端100通过鉴权时,桌面云200可以向视频服务器300发送该终端100的标识,以告知视频服务300该标识所对应的终端100属于合法终端。同时,桌面云200还可以指示终端100从视频服务器300中获取用于在虚拟桌面中呈现的视频。同时,桌面云200还可以通知该视频服务器300允许向终端100提供其所请求的视频。作为一种示例,桌面云200可以指示终端100重定向到视频服务器300,以便终端100获取相应的视频。比如,终端100在接收到桌面云200发送的重定向指示后,可以直接访问视频服务器300,以便于从该视频服务器300获取其需要在虚拟桌面播放的视频。
由于终端100在获取视频的过程中,桌面云200对终端100完成了鉴权,因此,该终端100属于合法终端,这使得视频服务器300不会向非法终端提供视频,从而降低了视频内容发生泄漏的风险,提高了终端100获得视频的安全性。
基于图1所示的系统架构实施例,在进一步可能的实施例中,桌面云200中可以包括有桌面云服务模块201、鉴权模块202,如图2所示。其中,桌面云服务模块201以及鉴权模块可以被部署于一个或者多个服务器上。
终端100在接入桌面云200时,可以在桌面云服务模块201上进行注册和登录,并且在成功登录桌面云服务模块201后,桌面云服务模块201可以将该终端100纳入管理。
对于成功接入桌面云200的终端100,桌面云200可以对该终端100进行鉴权,具体可以是由该桌面云200中的桌面云服务模块201或者鉴权模块202根据该终端100的访问授权信息对该终端100进行鉴权,以确定该终端100是否具有访问视频服务器300的权限。例如,桌面云服务模块201或者鉴权模块202可以预先为终端100创建并保存访问授权信息。而桌面云200可以将该访问授权信息发送给终端100。桌面云服务模块201或者鉴权模块202在对终端100进行鉴权时,可以是利用该访问授权信息验证终端100是否具有访问视频服务器300的权限。
其中,该访问授权信息,例如可以是终端100的相关信息,如可以是终端100所使用的IP地址,也可以是终端100上虚拟桌面或者桌面云客户端的版本号等,也可以是该终端100的MAC地址等,或者可以是根据IP地址、MAC地址以及版本号中的任意多种信息而生成的信息等。
在一种示例性的具体实施方式中,可以是由鉴权模块202对终端100进行鉴权。在终端100成功登录桌面云服务模块201时,桌面云服务模块201可以为终端100生成访问授权信息,并将该访问授权信息发送给终端100。终端100在向桌面云200请求访问视频服务器300中的视频时,可以生成包含该访问授权信息的请求,并将其发送给桌面云200。由于每次向桌面云200请求视频的终端并不一定均是合法终端,则该终端发送的请求中也不一定会包含访问授权信息,为便于区分和说明,以下将终端发送的请求中所携带的用于访问鉴权的信息称之为权限认证信息。
由于是由鉴权模块202进行鉴权,因此,桌面云服务模块201可以将用于访问鉴权的访问授权信息发送给鉴权模块202。同时,桌面云服务模块201也可以将终端100发送的权限认证信息也一并发送给鉴权模块202。这样,鉴权模块202可以将该终端对应的访问授权信息以及授权信息进行匹配(如比对两个信息是否完全一致)。当权限认证信息与访问授权信息相匹配时,则鉴权模块202可以确定该终端100通过鉴权,而当这两个信息匹配时,则鉴权模块202可以确定该终端100鉴权失败,不具有访问视频服务器中视频的权限。
实际应用中,鉴权模块202可能会对多个终端进行鉴权,因此,鉴权模块202在保存不同终端对应的访问授权信息时,可以将各个终端的标识与访问授权信息对应保存。而桌面云服务模块201在将终端100的权限认证信息发送给鉴权模块202的同时,也向鉴权模块202提供该终端100的标识,这样,鉴权模块202可以根据接收到的终端100的标识,从存储的多个访问授权信息中查找到终端100的标识所对应的访问授权信息,并利用查找到的访问授权信息对终端100进行鉴权。
上述实施方式中,是由桌面云200中的鉴权模块202对终端100进行鉴权,而在其它可能的实施方式中,也可以是由桌面云服务模块201对终端100进行鉴权。
具体的,桌面云服务模块201在终端100成功登录桌面云服务模块201时,为终端100生成访问授权信息;然后,当终端100向桌面云200发送请求访问视频服务器中视频的请求时,可以从该请求中解析出权限认证信息,并将该权限认证信息与生成的访问授权信息进行匹配,若匹配成功,则桌面云服务模块201可以确定终端100通过访问鉴权,而若匹配失败,则桌面云服务模块201可以确定终端100访问鉴权失败。进一步的,桌面云服务模块201在为不同终端生成并保存访问授权信息时,可以将终端的标识与该终端的访问授权信息对应保存,以便桌面云服务模块201可以根据从请求中解析出的终端100的标识,从多个终端对应的访问授权信息中查找出终端100对应的访问授权信息,以便对终端100进行访问鉴权。
进一步的,桌面云200除了可以终端100进行访问鉴权以外,还可以对该终端100进行身份鉴权,从而可以进一步提高终端100获取视频的安全性,从而可以进一步降低视频内容发生泄漏的风险。
作为一种身份鉴权的具体实现示例,桌面云200中的鉴权模块202可以对终端100进行身份鉴权。具体的,终端100在通过访问鉴权,并在桌面云200的指示下访问视频服务器300时,可以向视频服务器300发送获取视频获取请求,该视频获取请求中携带有用于进行身份鉴权的身份认证信息。视频服务器300可以对接收到的视频获取请求进行解析,获得该终端100的身份认证信息,并将其发送给桌面云200中的鉴权模块202。鉴权模块202可以将接收到的终端100的身份认证信息与预先存储的身份授权信息进行匹配,如比对身份认证信息与身份授权信息是否一致等。当确定身份认证信息与身份授权信息一致时,鉴权模块202可以确定该终端100通过身份鉴权,并生成表征身份鉴权通过的鉴权结果;而当确定身份认证信息与身份授权信息不一致时,鉴权模块202可以确定该终端100身份鉴权失败,并生成表征身份鉴权未通过的鉴权结果。当该鉴权结果表征终端100通过身份鉴权时,鉴权模块202可以通知视频服务器300允许向终端提供视频,比如,鉴权模块202可以将鉴权结果反馈给视频服务器300,以便于视频服务器300确定终端100是否也通过身份鉴权。当视频服务器300确定该终端100身份鉴权通过时,可以向该终端100提供视频,否则,不向该终端提供视频。
示例性的,视频服务器300所接收到的视频获取请求中,可以包含终端100所期望获取的视频的标识信息,如直播视频的“房间号”、网页地址等。这样,视频服务器300在确定该终端100通过身份鉴权后,可以从视频获取请求中解析出该视频的标识信息,并根据该标识信息确定该视频的统一资源定位符(Uniform Resource Locator,URL),从而可以向终端100提供该URL对应的视频。
其中,鉴权模块202预先存储的身份授权信息,可以是由鉴权模块202预先为终端100进行创建。具体的,终端100在向桌面云200请求视频时,桌面云服务模块201可以向鉴权模块202发送针对于身份授权信息的获取请求,而鉴权模块202可以响应该获取请求,创建身份授权信息,并将该身份授权信息返回给桌面云服务模块201。而桌面云服务模块201可以将接收到的身份授权信息发送给终端100,以便终端100可以持该身份授权信息完成身份鉴权。在其它示例中,鉴权模块202在创建出身份授权信息后,也可以直接将该身份授权信息发送给终端100,无需借助桌面云服务模块201将该身份授权信息转发给终端100。
在一些可能的实施方式中,桌面云200可以限制终端100所能获取的视频,即终端100可以从视频服务器300上获取特定的视频,而无法获取其它视频。具体实现时,桌面云服务模块202可以从视频服务器300获取终端100请求的视频所对应的URL,然后,桌面云服务模块202可以将该URL与针对于身份授权信息的获取请求一并发送给鉴权模块202。或者,也可以是由鉴权模块202从视频服务器300处获取终端100所请求的视频对应的URL等。这样,鉴权模块202在为终端100创建身份授权信息后,可以将该身份授权信息与URL对应存储。相应的,鉴权模块202在接收到视频服务器300发送的终端100的身份认证信息,并且,在确定终端100通过身份鉴权后,可以通知该视频服务器300允许向终端100提供指定的URL对应的视频,比如,可以向视频服务器300反馈表征身份鉴权通过的鉴权结果以及该身份授权信息对应的URL,从而视频服务器300可以将该URL对应的视频发送给终端100,而当终端100请求其它URL对应的视频时,视频服务器300可以拒绝向终端100提供相应的视频。
在进一步可能的实施方式中,终端100在通过鉴权(如上述访问鉴权以及身份鉴权)后,可以持续接收视频服务器300提供的视频流,以便在终端100的视频播放窗口根据接收到的视频流播放相应的视频。在一些场景中,桌面云服务模块201可以通知鉴权模块202该终端100的身份授权信息失效,比如,桌面云服务模块201可以在确定终端100与桌面云200之间的连接断开时,通知鉴权模块202失效该终端100的身份授权信息;相应的,鉴权模块202可以通知视频服务器300该终端100的身份授权信息发生失效,从而视频服务器300可以停止向该终端100提供视频。或者,桌面云服务模块201在确定终端100与桌面云200之间的连接断开时,也可以直接通知视频服务器300该终端100对应的身份授权信息失效,以便视频服务器300停止向终端100提供视频。
值得注意的是,实际应用中,桌面云服务模块201与鉴权模块202可以整合为一个模块,并且该模块同时具有桌面云服务模块201以及鉴权建模202所具有的功能,此时,该模块无需执行上述桌面云服务模块201以及鉴权模块202之间的交互过程;桌面云服务模块202与鉴权模块202为两个不同的模块,并且,这两个模块,可以位于同一服务器中,比如,该桌面云服务模块以及鉴权模块202均可以位于如图3所示的桌面云服务器301中;或者,桌面云服务模块201以及鉴权模块202可以位于不同的服务器中,比如,桌面云服务模块201可以位于如图4所示的桌面云服务器301中,鉴权模块202位于如图4所示的鉴权服务器302中。在一些可能的实施方式中,在桌面云200中也可以配置有视频服务器300,则鉴权模块302中的访问鉴权功能以及身份鉴权功能可以应用于不同的服务器,如访问鉴权功能可以应用于视频服务器300,身份鉴权功能可以是位于鉴权服务器302中。
为了使得本申请的技术方案更加清楚、易于理解,下面以桌面云服务模块201以及鉴权模块202位于不同服务器为例,从系统架构中的各个设备之间进行交互的角度,对本申请实施例提供的视频获取方法进行介绍。
参见图5所示的视频获取方法的流程图,该方法包括:
S501:终端100登陆至桌面云服务器301。
本实施例中,终端100在请求视频之前,可以先接入并登录桌面云网络中。作为一种示例性实施方式,终端100在登录桌面云服务器301时,可以向该桌面云服务器301发送登录请求,该登录请求中可以携带有用户名。然后,桌面云服务器301可以验证该终端100所发送的用户名是否合法,比如,可以验证该用户名与桌面云服务器上预先保存的用户名是否匹配,若匹配成功,则桌面云服务器301允许终端100登录,否则,桌面云服务器301拒绝终端100登录。
当然,实际应用中,终端100登录桌面云服务器301的具体实现方式不限于上述示例,也可以是采用其它可能的实施方式中,本实施例对此并不进行限定。通常情况下,在终端100登录桌面云服务器301的过程中,桌面云服务器301会对该终端100进行登录认证,以提高登录至桌面云服务器101的终端100的合法性和安全性。
在终端100成功登录桌面云服务器301后,终端100可以与桌面云服务器301建立并保持通信连接。
S502:桌面云服务器301生成访问授权信息,并将该访问授权信息发送给视频服务器300,其中,该访问授权信息指示成功登录桌面云服务器301的终端100。
在终端100成功登录桌面云服务器301后,桌面云服务器301可以为该终端100生成访问授权信息,该访问授权信息可以表征桌面云服务器301信任该终端100。
作为一种示例,该访问授权信息,例如可以是终端100的标识信息,如可以是终端100的版本号等,或者也可以是利用该终端100所在设备的唯一标识作为终端100的标识信息,如该设备的媒体访问控制(Media Access Control,MAC)地址等。而在其它可能的示例中,该访问授权信息,例如可以是终端100所使用的互联网协议(Internet Protocol,IP)地址等。
当然,在又一种可能的示例中,访问授权信息,还可以是根据终端100的信息与终端100所在设备信息进行拼接和/或计算得到的。比如,桌面云服务器301可以获取终端100的版本号、所使用的IP地址以及终端100所在设备的MAC地址,并将这些信息进行拼接后,对拼接后所得到的信息进行哈希计算,得到固定长度的信息(如40个字符长度等),则所得到的信息即为上述访问授权信息。
S503:终端100向桌面云服务器301发送针对于视频的访问请求,该访问请求中包括权限认证信息。
本实施例中,终端100在向桌面云服务器301请求视频时,可以向桌面云服务器301发送针对于该视频的访问请求,以请求桌面云服务器301将该视频反馈给终端100。由于需要对终端100的访问权限进行认证,因此,终端100所发送的访问请求中可以携带有用于权限认证信息。
作为一种示例,该权限认证信息可以是终端100的标识信息,或者可以是该终端100所使用的IP地址等。
值得注意的是,本实施例中是以成功登陆桌面云服务器301的终端100与发送访问请求的终端100为同一客户端为例进行说明,实际应用中,成功登录桌面云服务器301的终端与发送访问请求的终端可能并不一定为同一终端,因此,可以对发送访问请求的终端100进行访问权限的认证。
S504:视频服务器300在确定终端100发送的权限认证信息与桌面云服务器301发送的访问授权信息相匹配时,可以向终端100发送该访问请求对象的视频。
作为一种示例,可以由视频服务器300对终端100进行访问权限认证。具体的,视频服务器300可以比较终端100发送的权限认证信息与桌面云服务器301发送的访问授权信息是否匹配。若两个信息匹配,则视频服务器300可以确定当前请求视频的终端100为成功登录桌面云服务器301的终端100,具有获得音视频里的合法权限,并可以向终端100发送其请求的视频;而若两个信息不匹配,则当前请求视频的终端100不是成功登录桌面云服务器301的终端100,不具有获得视频的权限,此时,该终端100不具有访问视频的权限,视频服务器102拒绝向该终端100提供视频。
而在其它可能的示例中,也可以是在其它设备上对终端100的访问权限进行认证。比如,视频服务器300在接收到访问授权信息以及权限认证信息后,可以将这些信息发送给图1中所示的鉴权服务器302,并由该鉴权服务器302将终端100的权限认证信息与桌面云服务器301的访问授权信息进行匹配,再将得到的匹配结果发送给视频服务器300。然后,视频服务器300若根据该匹配结果确定这两个信息匹配,则可以向终端100发送其请求的视频;而视频服务器300若根据该匹配结果确定这两个信息不匹配,则可以拒绝向终端100提供视频。
其中,视频服务器300所接收到的访问请求中可以携带有终端100的标识信息,从而该视频服务器300可以基于该标识信息查找出相应的访问授权信息,以便基于所查找出的访问授权信息与访问请求中的权限认证信息进行匹配。
实际应用中,可能会存在部分终端100在没有成功登录桌面云服务器301的情况下就访问视频服务器300,这就使得每次向视频服务器300请求视频的终端100不一定具有合法的访问权限。此时,若视频服务器300直接向该终端100发送视频,则该视频的安全性以及保密性等会处于较低的水平。比如,当没有登录桌面云服务器301的终端100向视频服务器300请求公司内部培训分享的直播视频,则该直播视频的视频内容可能会被不属于公司职员的人员所获知,从而公司机密信息可能存在较大风险泄露。
为此,视频服务器300可以利用成功登录桌面云服务器301的终端100所对应的访问授权信息来验证当前请求视频的终端100是否属于合法客户端。由于成功登录桌面云服务器301的终端100通常已经完成合法性验证,因此,当视频服务器300接收到的权限认证信息与访问授权信息相匹配时,表征该当前请求视频的终端100被桌面云服务器301信任,则视频服务器300也可以信任该终端100,并可以为该终端100提供其所请求的视频,从而可以使得视频的安全性以及保密性可以达到较高水平。
示例性的,终端100在向视频服务器300请求视频时,所发送的访问请求中可以携带该视频的指示信息。比如,用户可以在终端100上输入所要观看直播视频的“房间号”或者能够播放该直播视频的网页地址,并将“房间号”或者网页地址作为指示信息随访问请求发送给视频服务器300。这样,视频服务器300可以根据该指示信息,确定出终端100当前请求访问哪个直播视频。当然,用于指示视频的指示信息也可以是具有其它表现形式,并且,视频服务器300也可以是基于其它实现方式获取该指示信息,本实施例对此均不作限定。
实际应用中,视频服务器300上可以保存各个视频对应的URL,并可以根据访问请求中所携带的指示信息确定视频对应的URL。当视频服务器300确定当前访问视频的终端100通过访问权限认证后,可以将该URL对应的视频提供给终端100,以使得终端100能够基于接收到视频在本地播放窗口或播放界面等播放相应的音视频内容。
在一些应用场景中,桌面云网络可能会对网络安全具有较高的要求,这使得终端100可能无法直接与桌面云服务器301进行通信,并且也无法直接向视频服务器300发送访问请求。此时,可以在桌面云网络中配置虚拟专用网络(Virtual Private Network,VPN)服务器,而终端100与桌面云网络中的设备进行通信时,通信数据可以由VPN服务器进行中转。
如图3或图4所示,可以在桌面云网络中配置VPN服务器303。当终端100向登录桌面云服务器301发送数据报文时,终端100可以将与桌面云服务器301交互的通信数据进行加密以及封装,并将封装后的数据报文传输给VPN服务器303;然后,VPN服务器303对该数据报文进行解封装以及解密,并将得到的数据报文再传输给桌面云服务器301。而桌面云服务器301向终端100发送数据报文时,其数据报文的传输过程与上述过程相反,可参见前述过程描述,在此不做赘述。同样,当视频服务器300通过VPN服务器303向终端100发送视频数据时,VPN服务器303可以将接收到的视频进行加密和封装后再传输给终端100。
在该场景中,VPN服务器303上可以被配置能够访问桌面云网络的终端,比如,可以是由桌面云网络中的鉴权服务器105对其进行动态或者静态配置,当然,也可以是由其它设备对其进行配置等。当这些终端中包括终端100时,桌面云服务器301可以向终端100发送通知信息,以通知终端100能够通过VPN服务器303请求访问视频服务器300。
实际应用中,在终端100请求视频的过程中,不仅可以对终端100进行访问权限的认证,还可以对该终端100进行身份认证。如图3、图4所示,桌面云200网络中还可以配置有鉴权服务器302,并且该鉴权服务器302可以用于对当前请求视频的终端100进行身份认证。
具体的,参见图6,示出了另一种视频获取方法流程示意图。本实施例中以鉴权服务器302独立于桌面云网络中的其它设备为例进行示例性说明。并且,本实施例中,是以请求视频的终端100与成功登录桌面云服务器301的终端100为同一终端为例,实际应用中,若两个终端不相同时,视频服务器300可以拒绝向请求视频的终端提供该视频。该方法具体可以包括:
S601:终端100注册并登陆至桌面云服务器301。
S602:桌面云服务器301生成访问授权信息,并将该访问授权信息发送给视频服务器300,其中,该访问授权信息指示成功登录桌面云服务器301的终端100。
本实施例中,对于步骤S601以及步骤S602的具体实现过程,可以参见前述实施例中的步骤S501以及步骤S502的相关之处描述,在此不做赘述。
S603:桌面云服务器301确定终端100的标识信息。
示例性的,终端100的标识信息,例如可以是终端100的版本号,或者可以是终端100所在设备的MAC地址,或者可以是基于该版本号与该MAC地址所生成的标识信息等。本实施例中,对于如何标识终端100的具体实现方式并不进行限定。
S604:桌面云服务器301向鉴权服务器302发送针对于终端100的身份授权信息的获取请求,其中,该获取请求中包括终端100的标识信息。
本实施例中,可以为成功登录桌面云服务器301的终端100配置身份授权信息,该身份授权信息可以是该终端100具有合法身份的凭证,用于后续在向视频服务器300请求视频时的身份认证。因此,桌面云服务器301可以为该终端100向鉴权服务器302申请身份授权信息,具体可以是向鉴权服务器302发送携带有终端100的标识信息的获取请求。
作为一种示例,该身份授权信息具体可以是令牌(Token)。其中,Token可以具有一定的有效期,而终端100可以在Token的有效期内持Token请求相应的资源。
S605:鉴权服务器302响应该获取请求,为该获取请求中的标识信息所标识的终端100生成相应的身份授权信息,并将其发送给桌面云服务器301。
示例性的,当身份授权信息具体为Token时,鉴权服务器302可以(利用随机数生成器)采用密码学安全随机算法生成安全随机数,并将该安全随机数与终端100的标识信息进行字符串拼接;然后,鉴权服务器302可以采用哈希算法,如哈希值长度是256位的SHA256算法等,对拼接得到的字符串进行哈希运算,得到固定长度的字符串,该固定长度的字符串即可作为该终端100的身份授权信息。当然,上述实施方式仅作为一种示例,本实施例中,对于鉴权服务器302如何为终端100生成身份授权信息的具体实现方式并不进行限定。
实际应用中,鉴权服务器302可以为多个终端100生成不同的身份授权信息。为便于区分和后续查找,鉴权服务器可以将不同身份授权信息与终端100的标识信息进行对应保存。这样,鉴权服务器302基于终端100的标识信息,即可查找到该标识信息所对应的身份授权信息。
S606:桌面云服务器301将鉴权服务器302返回的身份授权信息转发给终端100。
S607:终端100向视频服务器300发送针对于视频的访问请求,该访问请求中包括终端100的标识信息、权限认证信息以及身份认证信息。
本实施例中,终端100可以携接收到的权限授权信息以及身份授权信息向视频服务器300请求视频。实际应用中,终端100向视频服务器300发送的访问请求中,所携带的访问授权信息以及身份授权信息并不一定合法,为便于区分,以下将访问请求中的访问授权信息称之为权限认证信息;以下将访问请求中的身份授权信息称之为身份认证信息。其中,终端100向视频服务器300发送的权限认证信息,用于对该终端100访问视频服务器300的权限进行认证;而终端100向视频服务器300发送的身份认证信息,用于对该终端100进行身份认证,即验证该终端100是否为访问视频服务器300的合法客户端。
本实施例中,权限认证信息可以与前述访问授权信息具有相同的表现形式,如,当前述访问授权信息为终端100所使用的IP地址时,该权限认证信息也可以是IP地址,并且,实际应用中,这两个IP地址可能相同,也可能不相同(如发送访问请求的终端100属于非法客户端)。同样,身份认证信息可以与前述身份授权信信息具有相同的表现形式,如当身份授权信息为鉴权服务器生成的Token时,该身份认证信息也可以是Token,并且,这两个Token在实际应用中可能相同,也可能不相同(如发送访问请求的终端100属于非法客户端)。
S608:视频服务器300将访问请求中的权限认证信息与桌面云服务器301发送的访问授权信息进行匹配,并且在匹配成功时,确定当前请求视频的终端100通过访问权限认证。
本实施例中,是以视频服务器300进行访问权限认证为例进行示例性说明,实际应用中,也可以是由视频服务器300将访问权限信息以及访问授权信息发送给其它设备,并在其它设备上执行访问权限的认证过程。
其中,步骤S608的具体实现过程,可以参见前述实施例中步骤S504的相关之处描述,在此不做赘述。
S609:视频服务器300将访问请求中的标识信息以及身份认证信息发送给鉴权服务器302。
本实施例中,终端100不仅需要通过访问权限认证,还需要通过身份认证,并且,在双重认证均合格的情况下,视频服务器300才允许向终端100提供其所期望的视频。为此,视频服务器300可以将终端100的身份认证信息发送给鉴权服务器302,以便由鉴权服务器302对该终端100的身份进行认证。当然,在其它可能的实施例中,进行身份认证的设备也可以是其它设备,并不局限于鉴权服务器302。
S610:鉴权服务器302将接收到的身份认证信息以及标识信息所对应的身份授权信息进行匹配,得到身份认证结果,该身份认证结果指示了终端100是否通过身份认证。
本实施例中,鉴权服务器在接收到标识信息后,根据该标识信息从本地查找到相应的身份授权信息,然后,鉴权服务器302可以将查找到的身份授权信息以及接收到的身份认证信息进行匹配,确定身份授权信息与身份认证信息是否一致。若两个信息一致,则可以生成指示终端100通过身份认证的身份认证结果,而若两个信息不一致,则可以生成指示终端100没有通过身份认证的身份认证结果。
S611:鉴权服务器302将身份认证结果反馈给视频服务器300。
S612:视频服务器300在确定终端100通过访问权限认证,并且,根据接收到的身份认证结果确认终端100通过身份认证时,向终端100提供相应的视频。
视频服务器300在确定终端100通过访问权限以及身份的双重认证时,即可以确定终端100合法,并向该终端100提供其所需的视频。而当视频服务器300确定终端100未通过访问权限的认证,或者未通过身份认证时,则视频服务器300可以拒绝向终端100提供其所需的视频。
其中,视频服务器可以是先确定终端100所请求的视频的URL,并基于该URL获取相应的视频,再将该视频发送给终端100,其具体实现过程,可以参见前述实施例中的相关之处描述,在此不做赘述。
值得注意的是,上述实施例所描述的认证过程仅作为一种示例,并不用于限定本申请的技术方案在实际应用中局限于上述认证过程。在图3所示的认证过程中的基础上,还可以根据实际应用的需求进行增加、减少或者替换相应的步骤,尤其是对于图3中所示的各个步骤的先后执行顺序,可以进行相应调整。比如,步骤S608所示的访问权限认证过程与步骤S609至步骤S611所示的身份认证过程,可以同时执行,也可以是先执行身份认证过程,再执行访问权限认证过程。
上述实施例中,终端100在通过访问权限以及身份的双重认证后,可以访问视频服务器300上任意URL对应的视频。而在其它可能的实施方式中,视频服务器300可以对该终端100所能访问的视频进行限制,即终端100仅能访问特定URL对应的视频(如终端100所请求的视频),而无法访问其它URL对应的视频。
作为一种示例,桌面云服务器301在向鉴权服务器302申请身份授权信息时,还可以向视频服务器300请求获取该终端100所要访问或者所能允许访问的视频所对应的URL。比如,桌面云服务器301可以向视频服务器300发送URL获取请求,该URL获取请求中携带有视频的指示信息;相应的,视频服务器300根据该视频的指示信息,确定出该视频的URL,并将该URL返回给桌面云服务器301。其中,对于视频服务器300根据指示信息确定URL的具体实现方式,可以参见图2所示实施例中的相关之处描述,在此不做赘述。
然后,桌面云服务器301可以将获取的URL发送给鉴权服务器302,而鉴权服务器302在创建身份授权信息时,还可以将该身份认证信息与接收到的URL建立关联。这样,当鉴权服务器302验证视频服务器300发送的终端100的身份认证信息时,若该身份认证信息与相应的授权信息相匹配,即身份认证信息通过验证,则鉴权服务器302可以进一步确定该身份授权信息关联的URL,并向视频服务器300发送该URL,以便于视频服务器300将该URL对应的视频提供给终端100。此时,对于与身份授权信息没有关联的其它URL所对应的视频,视频服务器300可以拒绝将其提供给终端100。
S613:桌面云服务器301确定终端100与桌面云服务器301之间的通信连接断开。
本实施例中,终端100与桌面云服务器301的通信连接可能会发生断开(该通信连接可以在终端100登录成功时建立),如终端100主动断开连接,或者因为终端100与桌面云服务器301之间的通信连接因为故障而发生断开等。
作为一种确定通信连接断开的示例,终端100可以向桌面云服务器301发送连接断开请求,以基于该请求通知桌面云服务器301断开与终端100之间的通信连接。而在另一种确定通信连接断开的示例中,桌面云服务器301可以定期与终端100收到特定的报文,如桌面云服务器301定期接收到终端100发送的心跳消息等,若桌面云服务器301未接收到来自终端100的心跳消息的持续时长超出预设时长,则可以确定终端100与桌面云服务器301之间的通信连接断开。当然,本实施例中所提供的两种桌面云服务器301确定通信连接断开的示例,并不用于限定本实施例的具体实现,实际应用中,也可以是采用其它方式进行确定通信连接断开。
S614:桌面云服务器301通知鉴权服务器302失效该终端100的身份授权信息。
当终端100与桌面云服务器301之间的通信连接断开时,桌面云服务器301可以通知鉴权服务器302将创建的终端100对应的身份授权信息设置为失效。具体实现时,鉴权服务器302可以从本地记录的各个终端100对应的身份授权信息中删除终端100的身份授权信息,以此实现失效该身份授权信息。
或者,鉴权服务器302可以在存储终端100的身份授权信息的同时,还为其配置失效标记,该失效标记用于标识终端100的身份授权信息已经失效。在该实施方式中,已经失效的身份授权信息在后续还可以进行激活,如当终端100完成充值或者重新登录桌面云服务器301时,该身份授权信息完成激活,由失效状态变更为有效状态。这样,当终端100再次登录桌面云服务器301时,鉴权服务器302可以无需为其重新创建身份授权信息。
S615:视频服务器300停止向终端100提供视频。
鉴权服务器302在失效终端100的身份授权信息后,视频服务器300可以不用继续向终端100提供视频。
作为一种示例,视频服务器300在向终端100提供视频的过程中,可以周期性的向鉴权服务器302询问该终端100对应的身份授权信息是否失效,若视频服务器300持续接收到鉴权服务器302反馈的身份授权信息有效的通知,则可以继续为该终端100提供视频,而当鉴权服务器302反馈的身份授权信息发生失效时,视频服务器300可以停止向终端100提供视频。
在又一种示例中,鉴权服务器302在失效终端100的身份授权信息时,可以向视频服务器300发送通知信息,以将其通知给视频服务器300。相应的,视频服务器300根据鉴权服务器302发送的通知信息,可以停止向终端100继续提供视频。
值得注意的是,上述实施例所描述的终端100与其它设备之间的通信交互过程仅作为一种示例,在其它示例中,由于桌面云网络对于网络安全可能具有较高要求,因此,终端100在与桌面云网络中的设备进行通信时,可以是通过VPN服务器进行间接通信,如视频服务器300向终端100提供的视频,可以是通过图3或图4中所示的VPN服务器303传输给终端100等。
实际应用中,向视频服务器300请求视频的终端100可能会有多个,并且,不同终端100向视频服务器300请求的视频可以相同,也可以不相同。基于此,在一些可能的实施方式中,当存在多个终端100向视频服务器300请求访问同一视频时,视频服务器300可以将该视频传输给桌面云服务器301,并由桌面云服务器301将该视频分别发送给各个终端100。例如,视频服务器300在确定出多个终端100均通过相应认证后,可以确定请求同一URL对应视频的多个终端100,并将这些终端100的标识信息以及该URL对应的视频发送给桌面云服务器301;然后,桌面云服务器301可以根据接收到的标识信息确定访问同一视频的各个终端100,并将接收到的视频复制成多份,并分别向每个终端100发送一份视频。如此,针对于访问同一视频的多个终端100,视频服务器300可以仅向桌面云服务器301发送一份视频即可,而无需向每个终端100均发送一份视频,从而可以有效减少视频服务器300的压力。
上文结合图1至图6对本申请实施例提供的视频获取方法进行了详细介绍,下面将结合附图从功能单元的角度对本申请实施例提供的视频获取系统进行介绍。
参见图7所示的视频获取系统的架构示意图,该视频获取系统700包括:
通信单元701,用于向终端发送虚拟桌面;
鉴权单元702,用于对所述终端鉴权;
所述通信单元701,还用于当所述终端通过鉴权时,向视频服务器发送所述终端的标识;
指示单元703,用于指示所述终端从所述视频服务器中获取用于在所述虚拟桌面中呈现的视频。
在一种可能的实施方式中,所述指示单元703,具体用于指示所述终端重定向到所述视频服务器以获取用于在所述虚拟桌面中呈现的视频。
在一种可能的实施方式中,所述鉴权单元702包括桌面云服务模块或鉴权模块;
所述桌面云服务模块或者鉴权模块,用于根据所述终端的访问授权信息,确定所述终端通过鉴权。
在一种可能的实施方式中,所述鉴权单元704,包括桌面云服务模块以及鉴权模块;
所述鉴权模块,用于从桌面云服务模块获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
在一种可能的实施方式中,所述鉴权单元704,包括桌面云服务模块;
所述桌面云服务模块,用于获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
在一种可能的实施方式中,所述访问授权信息包括所述终端所使用的互联网协议地址。
在一种可能的实施方式中,所述通信单元701,还用于通知所述视频服务器允许向所述终端提供所述视频。
在一种可能的实施方式中,所述鉴权单元704包括桌面云服务模块以及鉴权模块;
所述鉴权模块,还用于获取所述终端的身份认证信息,以及当所述终端的身份认证信息与预先存储的身份授权信息相匹配时,通知所述视频服务器允许向所述终端提供所述视频。
在一种可能的实施方式中,所述通信单元701,还用于向所述终端发送所述身份授权信息。
在一种可能的实施方式中,所述通信单元701,具体用于通知所述视频服务器允许向所述终端提供指定的统一资源定位符URL对应的视频。
在一种可能的实施方式中,所述桌面云服务模块或者鉴权模块,用于从所述视频服务器获取所述视频对应的统一资源定位符URL,向所述鉴权模块发送所述URL;
所述鉴权模块,还用于建立所述URL与所述身份授权信息之间的对应关系。
在一种可能的实施方式中,所述通信单元701,还用于通知所述视频服务器所述身份授权信息失效。
根据本申请实施例的视频获取系统700可对应于执行本申请实施例中描述的方法,并且视频获取系统700的各个模块/单元的上述和其它操作和/或功能分别为了实现图5至图6所示实施例中的各个方法的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供了一种设备。该设备也可以是承载上述视频获取系统的计算机集群等设备。该设备用于实现如图7示实施例中视频获取系统700的功能。
图8提供了一种设备800的结构示意图,如图8所示,设备800包括总线801、处理器802、通信接口803和存储器804。处理器802、存储器804和通信接口803之间通过总线801通信。
总线801可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器802可以为中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
通信接口803用于与外部通信。例如,通信接口803可以向终端100发送虚拟桌面,向视频服务器300发送终端100的标识等等。
存储器804可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器804还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard drivedrive,HDD)或固态硬盘(solid state drive,SSD)。
其中,存储器804中存储有可执行代码,处理器802执行该可执行代码以执行前述视频获取方法。
具体地,在实现图7所示实施例的情况下,且图7实施例中所描述的视频获取系统800中的各单元为通过软件实现的情况下,执行图7中的鉴权单元702、指示单元703功能所需的软件或程序代码存储在存储器804中。
通信单元702功能通过通信接口803实现。如,通信接口803向终端100发送虚拟桌面,并接收终端100发送的视频获取请求,然后通信接口803将其通过总线801传输至处理器802,处理器802执行存储器804中存储的各单元对应的程序代码,如鉴权单元702对应的程序代码,以执行对终端100进行鉴权等步骤。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括指令,所述指令指示计算机执行上述应用于视频获取系统700的视频获取方法。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品被计算机执行时,所述计算机执行前述软件包管理方法的任一方法。该计算机程序产品可以为一个软件安装包,在需要使用前述软件包管理方法的任一方法的情况下,可以下载该计算机程序产品并在计算机上执行该计算机程序产品。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (26)

1.一种视频获取方法,其特征在于,所述方法包括:
向终端发送虚拟桌面;
对所述终端鉴权;
当所述终端通过鉴权时,向视频服务器发送所述终端的标识;
指示所述终端从所述视频服务器中获取用于在所述虚拟桌面中呈现的视频。
2.根据权利要求1所述的方法,其特征在于,所述指示所述终端从所述视频服务器中获取用于在所述虚拟桌面中呈现的视频,具体包括:
指示所述终端重定向到所述视频服务器以获取用于在所述虚拟桌面中呈现的视频。
3.根据权利要求1或2所述的方法,其特征在于,对所述终端鉴权,包括:
根据所述终端的访问授权信息,确定所述终端通过鉴权。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述对所述终端鉴权包括:
鉴权模块从桌面云服务模块获取用于访问鉴权的访问授权信息;
所述鉴权模块获取所述终端的权限认证信息;
当所述权限认证信息与所述访问授权信息相匹配时,所述鉴权模块确定所述终端通过鉴权。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述对所述终端鉴权包括:
桌面云服务模块获取用于访问鉴权的访问授权信息;
所述桌面云服务模块获取所述终端的权限认证信息;
当所述权限认证信息与所述访问授权信息相匹配时,所述桌面云服务模块确定所述终端通过鉴权。
6.根据权利要求3至5任一项所述的方法,其特征在于,所述访问授权信息包括所述终端所使用的互联网协议地址。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述方法还包括:
通知所述视频服务器允许向所述终端提供所述视频。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述方法还包括:
鉴权模块获取所述终端的身份认证信息;
当所述终端的身份认证信息与预先存储的身份授权信息相匹配时,所述鉴权模块通知所述视频服务器允许向所述终端提供所述视频。
9.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
向所述终端发送身份授权信息。
10.根据权利要求7至9任一项所述的方法,其特征在于,所述通知所述视频服务器允许向所述终端提供所述视频,包括:
通知所述视频服务器允许向所述终端提供指定的URL对应的视频。
11.根据权利要求7至10任一项所述的方法,其特征在于,所述方法还包括:
从所述视频服务器获取所述视频对应的统一资源定位符URL;
所述鉴权模块建立所述URL与所述身份授权信息之间的对应关系。
12.根据权利要求7至11任一项所述的方法,其特征在于,所述方法还包括:
通知所述视频服务器所述身份授权信息失效。
13.一种视频获取系统,其特征在于,所述系统包括:
通信单元,用于向终端发送虚拟桌面;
鉴权单元,用于对所述终端鉴权;
所述通信单元,还用于当所述终端通过鉴权时,向视频服务器发送所述终端的标识;
指示单元,用于指示所述终端从所述视频服务器中获取用于在所述虚拟桌面中呈现的视频。
14.根据权利要求13所述的系统,其特征在于,所述指示单元,具体用于指示所述终端重定向到所述视频服务器以获取用于在所述虚拟桌面中呈现的视频。
15.根据权利要求13或14所述的系统,其特征在于,所述鉴权单元包括桌面云服务模块或鉴权模块;
所述桌面云服务模块或者鉴权模块,用于根据所述终端的访问授权信息,确定所述终端通过鉴权。
16.根据权利要求13至15任一项所述的系统,其特征在于,所述鉴权单元,包括桌面云服务模块以及鉴权模块;
所述鉴权模块,用于从桌面云服务模块获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
17.根据权利要求13至15任一项所述的系统,其特征在于,所述鉴权单元,包括桌面云服务模块;
所述桌面云服务模块,用于获取用于访问鉴权的访问授权信息,获取所述终端的权限认证信息,以及当所述权限认证信息与所述访问授权信息相匹配时,确定所述终端通过鉴权。
18.根据权利要求13至17任一项所述的系统,其特征在于,所述访问授权信息包括所述终端所使用的互联网协议地址。
19.根据权利要求13至18任一项所述的系统,其特征在于,所述通信单元,还用于通知所述视频服务器允许向所述终端提供所述视频。
20.根据权利要求13至19任一项所述的系统,其特征在于,所述鉴权单元包括桌面云服务模块以及鉴权模块;
所述鉴权模块,还用于获取所述终端的身份认证信息,以及当所述终端的身份认证信息与预先存储的身份授权信息相匹配时,通知所述视频服务器允许向所述终端提供所述视频。
21.根据权利要求19或20所述的系统,其特征在于,所述通信单元,还用于向所述终端发送所述身份授权信息。
22.根据权利要求19至21任一项所述的方法,其特征在于,所述通信单元,具体用于通知所述视频服务器允许向所述终端提供指定的统一资源定位符URL对应的视频。
23.根据权利要求19至22任一项所述的系统,其特征在于,所述桌面云服务模块或鉴权模块,用于从所述视频服务器获取所述视频对应的所述URL;
所述鉴权模块,还用于建立所述URL与所述身份授权信息之间的对应关系。
24.根据权利要求19至23任一项所述的系统,其特征在于,
所述通信单元,还用于通知所述视频服务器所述身份授权信息失效。
25.一种设备,其特征在于,所述设备包括处理器和存储器;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行权利要求1至12中任一项所述的方法。
26.一种计算机可读存储介质,其特征在于,包括指令,所述指令用于实现权利要求1至12中任一项所述的方法。
CN202010952983.4A 2020-07-06 2020-09-11 一种视频获取方法、系统、设备及介质 Pending CN113905034A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2020106387352 2020-07-06
CN202010638735 2020-07-06

Publications (1)

Publication Number Publication Date
CN113905034A true CN113905034A (zh) 2022-01-07

Family

ID=79186194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010952983.4A Pending CN113905034A (zh) 2020-07-06 2020-09-11 一种视频获取方法、系统、设备及介质

Country Status (1)

Country Link
CN (1) CN113905034A (zh)

Similar Documents

Publication Publication Date Title
CN109561066B (zh) 数据处理方法、装置、终端及接入点计算机
CN106034104B (zh) 用于网络应用访问的验证方法、装置和系统
WO2018036314A1 (zh) 一种单点登录认证方法及装置、存储介质
US9130935B2 (en) System and method for providing access credentials
EP3316544B1 (en) Token generation and authentication method, and authentication server
US9633029B2 (en) Method, server, and user terminal for providing and acquiring media content
WO2018145605A1 (zh) 鉴权方法及服务器、访问控制装置
CN110569638B (zh) 一种api认证的方法、装置、存储介质及计算设备
MX2011003223A (es) Acceso al proveedor de servicio.
WO2016150169A1 (zh) 一种安全通信方法、网关、网络侧服务器及系统
CN110662091B (zh) 第三方直播视频接入方法、存储介质、电子设备及系统
CN110069909B (zh) 一种免密登录第三方系统的方法及装置
TW201638822A (zh) 進程的身份認證方法和裝置
US10708326B2 (en) Secure media casting bypassing mobile devices
KR20150122572A (ko) 액세스 제어 방법, 장치, 프로그램 및 기록매체
CN111786996B (zh) 一种跨域同步登录态的方法、装置及跨域同步登录系统
CN111953656A (zh) 监控视频加密传输方法、装置、设备及介质
US10791119B1 (en) Methods for temporal password injection and devices thereof
EP3085063B1 (en) Managing streaming in home media network having a home gateway and a plurality of devices
CN111988262B (zh) 认证方法、装置及服务器、存储介质
US11546297B2 (en) Secure communication method, client and non-public server
CN116647345A (zh) 权限令牌的生成方法以及装置、存储介质、计算机设备
US9071596B2 (en) Securely establishing a communication channel between a switch and a network-based application using a unique identifier for the network-based application
CN115604862A (zh) 视频流传输方法及系统
CN113905034A (zh) 一种视频获取方法、系统、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220208

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Applicant after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd.

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination