CN111030805A - 一种防盗链的方法及装置 - Google Patents

一种防盗链的方法及装置 Download PDF

Info

Publication number
CN111030805A
CN111030805A CN201911049700.9A CN201911049700A CN111030805A CN 111030805 A CN111030805 A CN 111030805A CN 201911049700 A CN201911049700 A CN 201911049700A CN 111030805 A CN111030805 A CN 111030805A
Authority
CN
China
Prior art keywords
identity
user
resource
request
identity certificate
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.)
Granted
Application number
CN201911049700.9A
Other languages
English (en)
Other versions
CN111030805B (zh
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201911049700.9A priority Critical patent/CN111030805B/zh
Publication of CN111030805A publication Critical patent/CN111030805A/zh
Application granted granted Critical
Publication of CN111030805B publication Critical patent/CN111030805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及了一种防盗链的方法及装置,其中该方法包括:防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器;响应于接收到用户从客户端发起的针对资源服务器的资源的请求,资源服务器查验请求是否携带身份凭证;响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效;响应于身份凭证有效,资源服务器向客户端反馈相应的资源。利用本发明的方法实现了用户方面防盗链机制,既保证了防盗链机制的便捷性又提高了对资源的保护力度。

Description

一种防盗链的方法及装置
技术领域
本发明涉及网络安全技术领域。本发明进一步涉及一种防盗链的方法及装置。
背景技术
盗链是指非法服务提供商通过技术手段绕过其它有利益的最终用户界面,直接在自己的网站上向最终用户提供其它合法服务提供商的服务内容。盗链绕过了合法服务提供商通过该内容获取正当利益的页面,一方面侵犯了被盗链网站的正常商业利益,另一方面也占用了被盗链网站的带宽资源。
目前主流的防盗链方法是依据HTTP请求的Referer报头对请求进行判断。Referer报头指出了当前请求的来源(如:来自于哪个网页),当Referer报头中的网站地址(如:域名、IP地址)与当前域名不同的时候,即判定为盗链。这种方法具有一定的优势,但在实际操作中有局限性:首先,由于HTTP协议是明文的,盗链者很容易通过技术手段自己设定Referer报头的值,使其和被盗链网站的域名一致;其次,如果一个Web服务器上同时有多个分别拥有不同二级域名的网站,此方法会影响二级域名网站之间的正常访问交互,导致通过二级域名的访问被误判为盗链。另外,在云环境下云主机的IP往往是变动的,仅仅通过简单地把IP地址作为判断依据,在云环境下防盗效果大打折扣。
因此,针对Referer防盗链机制中,Referer头容易被伪造的问题,需要提出一种更稳定、可靠的防盗链方法。
发明内容
一方面,本发明基于上述目的提出了一种防盗链的方法,其中该方法包括以下步骤:
防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器;
响应于接收到用户从客户端发起的针对资源服务器的资源的请求,资源服务器查验请求是否携带身份凭证;
响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效;
响应于身份凭证有效,资源服务器向客户端反馈相应的资源。
根据本发明的防盗链的方法的实施例,其中该方法进一步包括:
响应于请求未携带身份凭证,资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。
根据本发明的防盗链的方法的实施例,其中该方法进一步包括:
响应于身份凭证无效,资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。
根据本发明的防盗链的方法的实施例,其中防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器进一步包括:
响应于防盗门服务器接收到用户的用户名和密码,基于用户名和密码验证用户是否为合法用户;
响应于用户验证通过,根据用户的身份信息生成声明段字符串;
将声明段字符串与私钥进行哈希计算得到签名段字符串;
将签名段字符串与声明段字符串合并生成身份凭证。
根据本发明的防盗链的方法的实施例,其中响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
将请求携带的身份凭证的签名段字符串与公钥进行哈希计算;
将计算结果与请求携带的身份凭证的声明段字符串进行比较;
响应于计算结果与请求携带的身份凭证的声明段字符串不一致,判定身份凭证无效。
根据本发明的防盗链的方法的实施例,其中签名段字符串包括用户ID、过期时间和资源标签。
根据本发明的防盗链的方法的实施例,其中响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
解析请求携带的身份凭证的声明段字符串得到身份凭证的过期时间;
将过期时间与当前时间戳进行比较;
响应于过期时间小于当前时间戳,判定身份凭证无效。
根据本发明的防盗链的方法的实施例,其中响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
解析请求携带的身份凭证的声明段字符串得到身份凭证的资源标签;
将资源标签与所请求的资源进行比较;
响应于资源标签中不包含所请求的资源,判定身份凭证无效。
根据本发明的防盗链的方法的实施例,其中身份凭证为两段式token,其中第二段用于声明用户的身份信息,第一段用于验证第二段是否被篡改。
另一方面,本发明还提出了一种防盗链的装置,其中该装置包括:
至少一个处理器;和
存储器,该存储器存储有处理器可运行的程序指令,该程序指令在被处理器运行时执行前述防盗链的方法的实施例任一项的步骤。
采用上述技术方案,本发明至少具有如下有益效果:通过给用户颁发身份凭证并在用户发起资源请求时验证身份凭证的有效性,防止了Referer头容易被伪造而盗链的问题,同时身份凭证的生成和验证采用成熟的非对称加密算法,加密与解密的密钥位于不同的服务器上,更进一步防止了被盗用的可能,既能防止身份凭证内容被篡改,在加密解密流程上更便捷,实现了用户方面防盗链机制,综合了Referer验证机制的便捷性和其他验证机制的安全性,在便捷性和安全性方面做了折衷,既保证了防盗链机制的便捷性又提高了对资源的保护力度。
本发明提供了实施例的各方面,不应当用于限制本发明的保护范围。根据在此描述的技术可设想到其它实施方式,这对于本领域普通技术人员来说在研究以下附图和具体实施方式后将是显而易见的,并且这些实施方式意图被包含在本申请的范围内。
下面参考附图更详细地解释和描述了本发明的实施例,但它们不应理解为对于本发明的限制。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对现有技术和实施例描述中所需要使用的附图作简单地介绍,附图中的部件不一定按比例绘制,并且可以省略相关的元件,或者在一些情况下比例可能已经被放大,以便强调和清楚地示出本文描述的新颖特征。另外,如本领域中已知的,结构顺序可以被不同地布置。
图1示出了根据本发明的防盗链的方法的实施例的示意性框图;
图2示出了根据本发明的防盗链的方法中的身份凭证的实施例的示意图。
具体实施方式
虽然本发明可以以各种形式实施,但是在附图中示出并且在下文中将描述一些示例性和非限制性实施例,但应该理解的是,本公开将被认为是本发明的示例并不意图将本发明限制于所说明的具体实施例。
图1示出了根据本发明的防盗链的方法的实施例的示意性框图。在如图所示的实施例中,该方法至少包括以下步骤:
S1:防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器;
S2:响应于接收到用户从客户端发起的针对该资源服务器的资源的请求,资源服务器查验请求是否携带身份凭证;
S3:响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效;
S4:响应于身份凭证有效,资源服务器向客户端反馈相应的资源。
为了解决现有的Referer报头的防盗链方法的缺点,本发明提出为用户颁发身份凭证,并且基于该身份凭证来确定用户是否能够请求到相应的资源。为了实现上述构想,本发明在用户的客户端和存储资源的资源服务器(Resource provider)之间增加了防盗门服务器(Security door)。在此基础上,步骤S1中防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器。具体地说,防盗门服务器会生成一个密钥对(公钥-私钥)。该密钥对需要满足以下条件,即当利用私钥与字符串A进行哈希运算得到字符串B后,再用公钥与字符串B进行哈希运算会重新得到字符串A。由此形成了非对称加密算法。因此防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,并将密钥对的公钥发送给资源服务器以便后续资源服务器响应于用户的请求进行身份凭证的验证。
当用户从客户端发起了对资源服务器上的资源的请求时,资源服务器会响应于接收到该请求,步骤S2查验请求是否携带身份凭证。只有合法的用户才能由防盗门服务器根据其身份颁发相应的身份凭证,而盗链者是无法获得身份凭证的,因此会在这一步骤中被拦截所发起的请求。更进一步地,为了防止盗链者篡改身份凭证为己所用,不仅要查验请求携带了身份凭证,步骤S3还进一步在资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效。只有在确认该身份凭证没有被篡改、正确有效的情况下才会在步骤S4由资源服务器向客户端反馈相应的资源。
下文将说明本发明的进一步实施例,需要注意的是,其中提到的步骤的编号在没有特殊说明的情况下,仅用于便捷明确地指示该步骤,并不限定步骤的顺序。
在本发明的防盗链的方法的一些实施例中,该方法进一步包括:
S5:响应于请求未携带身份凭证,资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。
也就是说,如果用户的请求为携带身份凭证,那么可能是两种情况,一是用户为合法用户,但是该用户还未经防盗门服务器验证并颁发相应的身份凭证。二是该请求是由盗链者发起的,因此他不具备身份凭证。所以,在这些情况下,为了保证合法用户的请求能够正常得到响应,因此步骤S5由资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。此时,如果该用户是合法用户,那么他会向防盗门服务器申请身份凭证,得到身份凭证后再次发起资源请求就可以得到正常的响应。而盗链者由于无法通过防盗门服务器的验证,也就没有办法得到身份凭证,进而无法从资源服务器得到资源。
在本发明的防盗链的方法的进一步实施例中,该方法进一步包括:
S6:响应于身份凭证无效,资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。
在一些情况下,身份凭证可能由于各种原因被判定无效,例如发生了被篡改、过期、传输错误等等,因此在这些时候,同样为了保证合法用户的正常用户能够被响应,步骤S6由资源服务器向客户端反馈要求用户向防盗门服务器申请身份凭证的提示。此时,如果该用户是合法用户,那么他会向防盗门服务器重新申请身份凭证,得到新的身份凭证后再次发起资源请求就可以得到正常的响应。而盗链者则无法完成重新申请身份凭证的操作,因而无法从资源服务器得到资源。
在本发明的防盗链的方法的一个或多个实施例中,步骤S1防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将身份凭证颁发给用户,并将密钥对的公钥发送给资源服务器进一步包括:
S11:响应于防盗门服务器接收到用户的用户名和密码,基于用户名和密码验证用户是否为合法用户;
S12:响应于用户验证通过,根据该用户的身份信息生成声明段字符串;
S13:将声明段字符串与私钥进行哈希计算得到签名段字符串;
S14:将签名段字符串与声明段字符串合并生成身份凭证。
具体地说,在这些实施例中,步骤S1的防盗门服务器根据用户身份及密钥对的私钥生成身份凭证进一步包括上述4个步骤。当防盗门服务器接收到用户的用户名和密码时,步骤S11基于该用户名和密码验证用户是否为合法用户。如果用户是合法用户,则验证通过,那么步骤S12会根据该用户的身份信息生成声明段字符串,该声明段字符串以明文的方式声明了该用户的身份信息。然后步骤S13将声明段字符串与私钥进行哈希(SHA)计算得到签名段字符串,该签名段字符串实质上是一段无法读出明确含义、无规律的字符串。最后,步骤S14将步骤S13的签名段字符串与步骤S12的声明段字符串合并生成身份凭证。因此,该身份凭证中既包含了以明文的方式声明的用户身份信息,也包含了对该信息的加密以备进行验证的部分。
在本发明的防盗链的方法的若干实施例中,步骤S3响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
S31:将请求携带的身份凭证的签名段字符串与公钥进行哈希计算;
S32:将计算结果与请求携带的身份凭证的声明段字符串进行比较;
S33:响应于计算结果与请求携带的身份凭证的声明段字符串不一致,判定身份凭证无效。
在前述实施例中身份凭证中既包含了以明文的方式声明的用户身份信息的声明段字符串,和对该信息的加密以备进行验证的签名段字符串的基础上,步骤S3的基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括上述三个步骤。其中,首先步骤S31将请求携带的身份凭证的签名段字符串与公钥进行哈希计算。然后步骤S32将前一步中哈希计算的结果与请求携带的身份凭证的声明段字符串进行比较。如果两者不一致,则认为该身份凭证可能发生了被篡改的情况,该请求不安全和/或不合法,因此判定该身份凭证无效。
在本发明的防盗链的方法的一些实施例中,其中签名段字符串包括用户ID、过期时间和资源标签。用户ID(user_id)是用户的唯一标识符。过期时间(expire_at)表示到达指定时间后,该身份凭证不再有效。资源标签(resource_tag)标识允许访问的资源。
在本发明的防盗链的方法的若干实施例中,步骤S3响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
S34:解析请求携带的身份凭证的声明段字符串得到身份凭证的过期时间;
S35:将过期时间与当前时间戳进行比较;
S36:响应于过期时间小于当前时间戳,判定身份凭证无效。
为了更进一步地保证防盗链的有效性,即进一步保证身份凭证的安全性,在上述实施例中在确定身份凭证没有发生被篡改的基础上进一步对身份凭证的时效性进行了判断。首先步骤S34解析请求携带的身份凭证的声明段字符串得到身份凭证的过期时间(expire_at)。然后步骤S35将过期时间(expire_at)与请求时的当前时间戳进行比较。如果过期时间小于当前时间戳,也就是意味着该身份凭证已经过期,因此判定该身份凭证无效,需要用户重新申请新的身份凭证。这样的设置更进一步提高了安全性,也就是说即便在极端情况下,盗链者恰巧取得了一个身份凭证而盗用了资源服务器上的资源,也会在该被盗用的身份凭证到期后被踢出,而不能再继续盗取资源。
在本发明的防盗链的方法的一个或多个实施例中,步骤S3响应于请求携带有身份凭证,资源服务器基于公钥对身份凭证进行验证以确定身份凭证是否有效进一步包括:
S37:解析请求携带的身份凭证的声明段字符串得到身份凭证的资源标签;
S38:将资源标签与所请求的资源进行比较;
S39:响应于资源标签中不包含所请求的资源,判定身份凭证无效。
除了前述实施例中提到的情况之外,还可能发生用户的请求与其所拥有的访问权限不相符的情况。例如,用户是合法用户,但是其所要请求的资源并不在其权限范围内,在本发明的实施例中对这种情况也利用身份凭证进行了相应的处理。具体的说就是步骤S37解析请求携带的身份凭证的声明段字符串得到身份凭证的资源标签(resource_tag)。然后步骤S38将资源标签(resource_tag)与所请求的资源进行比较。如果资源标签(resource_tag)中不包含所请求的资源,也就意味着用户的请求超出了其所拥有的访问权限范围,因此判定当前的身份凭证无效。此时,用户可以再重新申请身份凭证时提出扩大访问权限的请求并由防盗门服务器进一步处理扩大访问权限的请求。
在本发明的防盗链的方法的进一步实施例中(如图2所示),身份凭证为两段式token,其中第二段用于声明用户的身份信息,第一段用于验证第二段是否被篡改。具体地说,与传统的三段式token不同,根据本发明将其结构简化为两段式。第二段为声明段字符串,其以明文的方式声明了该用户的身份信息,例如用户ID、过期时间和资源标签等。第一段为签名段,用于校验第二段的声明段字符串是否被篡改。具体地实现方法参见前述实施例,在此不再赘述。
另一方面,本发明还提出了一种防盗链的装置,其中该装置包括:至少一个处理器;和存储器,该存储器存储有处理器可运行的程序指令,该程序指令在被处理器运行时执行前述防盗链的方法的实施例任一项的步骤。
本发明实施例公开所述的装置、设备等可为各种电子终端设备,例如手机、个人数字助理(PDA)、平板电脑(PAD)、智能电视等,也可以是大型终端设备,如服务器等,因此本发明实施例公开的保护范围不应限定为某种特定类型的装置、设备。本发明实施例公开所述的客户端可以是以电子硬件、计算机软件或两者的组合形式应用于上述任意一种电子终端设备中。
本文所述的计算机可读存储介质(例如存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
采用上述技术方案,本发明至少具有如下有益效果:通过给用户颁发身份凭证并在用户发起资源请求时验证身份凭证的有效性,防止了Referer头容易被伪造而盗链的问题,同时身份凭证的生成和验证采用成熟的非对称加密算法,加密与解密的密钥位于不同的服务器上,更进一步防止了被盗用的可能,既能防止身份凭证内容被篡改,在加密解密流程上更便捷,实现了用户方面防盗链机制,综合了Referer验证机制的便捷性和其他验证机制的安全性,在便捷性和安全性方面做了折衷,既保证了防盗链机制的便捷性又提高了对资源的保护力度。
应当理解的是,在技术上可行的情况下,以上针对不同实施例所列举的技术特征可以相互组合,从而形成本发明范围内的另外实施例。此外,本文所述的特定示例和实施例是非限制性的,并且可以对以上所阐述的结构、步骤及顺序做出相应修改而不脱离本发明的保护范围。
在本申请中,反意连接词的使用旨在包括连接词。定或不定冠词的使用并不旨在指示基数。具体而言,对“该”对象或“一”和“一个”对象的引用旨在表示多个这样对象中可能的一个。然而,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。此外,可以使用连接词“或”来传达同时存在的特征,而不是互斥方案。换句话说,连接词“或”应理解为包括“和/或”。术语“包括”是包容性的并且具有与“包含”相同的范围。
上述实施例,特别是任何“优选”实施例是实施方式的可能示例,并且仅仅为了清楚理解本发明的原理而提出。在基本上不脱离本文描述的技术的精神和原理的情况下,可以对上述实施例做出许多变化和修改。所有修改旨在被包括在本公开的范围内。

Claims (10)

1.一种防盗链的方法,其特征在于,所述方法包括以下步骤:
防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将所述身份凭证颁发给所述用户,并将所述密钥对的公钥发送给资源服务器;
响应于接收到用户从客户端发起的针对所述资源服务器的资源的请求,所述资源服务器查验所述请求是否携带身份凭证;
响应于所述请求携带有身份凭证,所述资源服务器基于所述公钥对所述身份凭证进行验证以确定所述身份凭证是否有效;
响应于所述身份凭证有效,所述资源服务器向客户端反馈相应的资源。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
响应于所述请求未携带身份凭证,所述资源服务器向客户端反馈要求用户向所述防盗门服务器申请身份凭证的提示。
3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
响应于所述身份凭证无效,所述资源服务器向客户端反馈要求用户向所述防盗门服务器申请身份凭证的提示。
4.根据权利要求1所述的方法,其特征在于,所述防盗门服务器根据用户身份及密钥对的私钥生成身份凭证,将所述身份凭证颁发给所述用户,并将所述密钥对的公钥发送给资源服务器进一步包括:
响应于所述防盗门服务器接收到用户的用户名和密码,基于所述用户名和密码验证所述用户是否为合法用户;
响应于用户验证通过,根据所述用户的身份信息生成声明段字符串;
将所述声明段字符串与所述私钥进行哈希计算得到签名段字符串;
将所述签名段字符串与所述声明段字符串合并生成所述身份凭证。
5.根据权利要求4所述的方法,其特征在于,所述响应于所述请求携带有身份凭证,所述资源服务器基于所述公钥对所述身份凭证进行验证以确定所述身份凭证是否有效进一步包括:
将所述请求携带的身份凭证的签名段字符串与所述公钥进行哈希计算;
将计算结果与所述请求携带的身份凭证的声明段字符串进行比较;
响应于所述计算结果与所述请求携带的身份凭证的声明段字符串不一致,判定所述身份凭证无效。
6.根据权利要求4所述的方法,其特征在于,所述签名段字符串包括用户ID、过期时间和资源标签。
7.根据权利要求6所述的方法,其特征在于,所述响应于所述请求携带有身份凭证,所述资源服务器基于所述公钥对所述身份凭证进行验证以确定所述身份凭证是否有效进一步包括:
解析所述请求携带的身份凭证的声明段字符串得到所述身份凭证的过期时间;
将所述过期时间与当前时间戳进行比较;
响应于所述过期时间小于所述当前时间戳,判定所述身份凭证无效。
8.根据权利要求6所述的方法,其特征在于,所述响应于所述请求携带有身份凭证,所述资源服务器基于所述公钥对所述身份凭证进行验证以确定所述身份凭证是否有效进一步包括:
解析所述请求携带的身份凭证的声明段字符串得到所述身份凭证的资源标签;
将所述资源标签与所请求的资源进行比较;
响应于所述资源标签中不包含所述所请求的资源,判定所述身份凭证无效。
9.根据权利要求1所述的方法,其特征在于,所述身份凭证为两段式token,其中第二段用于声明用户的身份信息,第一段用于验证所述第二段是否被篡改。
10.一种防盗链的装置,其特征在于,所述装置包括:
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序指令,所述程序指令在被处理器运行时执行权利要求1至9任一项的方法的步骤。
CN201911049700.9A 2019-10-31 2019-10-31 一种防盗链的方法及装置 Active CN111030805B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911049700.9A CN111030805B (zh) 2019-10-31 2019-10-31 一种防盗链的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911049700.9A CN111030805B (zh) 2019-10-31 2019-10-31 一种防盗链的方法及装置

Publications (2)

Publication Number Publication Date
CN111030805A true CN111030805A (zh) 2020-04-17
CN111030805B CN111030805B (zh) 2022-12-27

Family

ID=70200755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911049700.9A Active CN111030805B (zh) 2019-10-31 2019-10-31 一种防盗链的方法及装置

Country Status (1)

Country Link
CN (1) CN111030805B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532981A (zh) * 2013-10-31 2014-01-22 中国科学院信息工程研究所 一种面向多租户的身份托管鉴权云资源访问控制系统及控制方法
CN103795692A (zh) * 2012-10-31 2014-05-14 中国电信股份有限公司 开放授权方法、系统与认证授权服务器
CN105657474A (zh) * 2016-02-19 2016-06-08 微鲸科技有限公司 在视频应用中使用基于身份签名体制的防盗链方法及系统
CN105721411A (zh) * 2015-05-15 2016-06-29 乐视云计算有限公司 一种防止盗链的方法、防止盗链的服务器及客户端
CN108206821A (zh) * 2016-12-20 2018-06-26 航天信息股份有限公司 一种身份认证的方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795692A (zh) * 2012-10-31 2014-05-14 中国电信股份有限公司 开放授权方法、系统与认证授权服务器
CN103532981A (zh) * 2013-10-31 2014-01-22 中国科学院信息工程研究所 一种面向多租户的身份托管鉴权云资源访问控制系统及控制方法
CN105721411A (zh) * 2015-05-15 2016-06-29 乐视云计算有限公司 一种防止盗链的方法、防止盗链的服务器及客户端
WO2016184216A1 (zh) * 2015-05-15 2016-11-24 乐视云计算有限公司 一种防止盗链的方法、防止盗链的服务器及客户端
CN105657474A (zh) * 2016-02-19 2016-06-08 微鲸科技有限公司 在视频应用中使用基于身份签名体制的防盗链方法及系统
CN108206821A (zh) * 2016-12-20 2018-06-26 航天信息股份有限公司 一种身份认证的方法及系统

Also Published As

Publication number Publication date
CN111030805B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
EP1427160B1 (en) Methods and systems for authentication of a user for sub-locations of a network location
US11841959B1 (en) Systems and methods for requiring cryptographic data protection as a precondition of system access
US9191375B2 (en) System and method for accessing integrated applications in a single sign-on enabled enterprise solution
CN102201915B (zh) 一种基于单点登录的终端认证方法和装置
US6189096B1 (en) User authentification using a virtual private key
CN112000951B (zh) 一种访问方法、装置、系统、电子设备及存储介质
CN108259406B (zh) 检验ssl证书的方法和系统
WO2016184216A1 (zh) 一种防止盗链的方法、防止盗链的服务器及客户端
US20090235349A1 (en) Method and apparatus for securely invoking a rest api
US20080270578A1 (en) Method, Device And Data Download System For Controlling Effectiveness Of A Download Transaction
CN109672675B (zh) 一种基于OAuth2.0的密码服务中间件的WEB认证方法
CN103220303B (zh) 服务器的登录方法及服务器、认证设备
CN109509108B (zh) 基于区块链技术的保险保单处理方法、装置和计算机设备
US20220286440A1 (en) Secure Media Delivery
CN108322416B (zh) 一种安全认证实现方法、装置及系统
US10348701B2 (en) Protecting clients from open redirect security vulnerabilities in web applications
CN111526161A (zh) 一种通信方法、通信设备及代理系统
CN107517194B (zh) 一种内容分发网络的回源认证方法和装置
CN110213229B (zh) 身份认证方法、系统、计算机设备及存储介质
CN111786996B (zh) 一种跨域同步登录态的方法、装置及跨域同步登录系统
US11627135B2 (en) Method and system for delivering restricted-access resources using a content delivery network
CN115085999A (zh) 身份验证方法、系统、计算机设备和存储介质
CN111245774A (zh) 资源请求处理方法、装置和系统
CN112948143A (zh) 一种应用程序调用方法、装置及调用系统
CN111614458A (zh) 网关jwt的生成方法、系统及存储介质

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