Python安全令牌集成(辅助)
出版者:必威平台,2021年8月23日下面的文章将帮助您集成在Python代码中使用密钥生成的安全令牌(Secondary)。首先,您需要登录到仪表板,并为所需的位置(域)启用Secure Token选项。一旦您启用了安全令牌选项,您可以创建一个“秘密密钥”,然后将传递到我们的后端。这样,您就可以使用下面的Python脚本使用md5生成自己的令牌。新生成的URL将持有所有必要的信息,将匹配保存在我们的后端安全密钥,并将允许用户访问。
在二级安全令牌中,在生成的安全url中使用文件名、过期时间(可选),与IP和过期时间相比,而不是Primary方法中的文件名。
示例安全令牌如下所示
http://domain.com/TimeID/HashID/FileName
一旦生成了安全令牌,您就可以在Python代码中使用它来创建URL令牌。
#!/usr/bin/env python3
进口hashlib
进口时间
def generate_secure_url (security_key路径,
expire_timeframe = " ",
base_url = str (),
file_name):
Expire_timestamp = int(time()) + 3600
token_content = '{关键}{path}{时间戳}{file_name}’.format(关键= security_key、路径=路径、时间戳= expire_timeframe file_name = file_name)
md5sum = hashlib.md5 ()
md5sum.update (token_content.encode (ascii))
token_digest = md5sum.digest ()
token_formatted = token_digest。替换(' \ n ',”)。取代 ('+', '-').取代 ('/', '_').替换(‘=’,”)
#创建URL
如果expire_timeframe:
url = ' {base_url} {path} /{牌}/ {file_name}’.format (
base_url = base_url,
路径=路径,
令牌= token_formatted,
file_name = file_name)
如果不是expire_timeframe:
url = ' {base_url} {path} /{牌}/ {file_name}’.format (
base_url = base_url,
路径=路径,
令牌= token_formatted,
file_name = file_name)
返回的url
#使用例子:
#返回:“https://test.youdomain.com/index.html/xn3MXhSmjhMvAlE__w5nGQ/abc.jpg的
打印('https://test.youdomain.com ' + generate_secure_url(“接收”/ index . html ',”、“、“abc.jpg”))
#返回:“https://yourdomain.com/index.html/-yTNoTfS_NiwhPxH2xYcZg/abc.jpg的
Print (generate_secure_url('secret-key', '/index.html', 31536000, ')https://yourdomain.com的, ' abc.jpg '))