返回顶部
首页 > 资讯 > 服务器 >基于Python实现云服务器的CDN域名远程鉴权配置
  • 617
分享到

基于Python实现云服务器的CDN域名远程鉴权配置

2024-04-02 19:04:59 617人浏览 薄情痞子
摘要

目录实战场景开启远程鉴权python 端权限验证验证逻辑实战场景 在项目实战中,会碰到一种特定的运维场景,对CDN访问进行限制,一般手段是开启 referer 防盗链,开启 IP黑白

实战场景

项目实战中,会碰到一种特定的运维场景,对CDN访问进行限制,一般手段是开启 referer 防盗链,开启 IP黑白名单,开启UA黑白名单,本篇博客为大家展示的是通过我们自己的服务器,然后实现远程鉴权,进行更加细致的权限判定。

实现目标:

  • 请求CDN资源调用我们的鉴权服务器
  • 鉴权服务器获取请求信息,并保存到日志
  • 分别返回鉴权成功,鉴权失败

开启远程鉴权

在远程鉴权页面打开【开关】之后,出现如下配置界面,这里相关细节描述如下:

  • 鉴权服务器地址:我们自己的服务器,地址可访问,可以是域名也可以是IP地址;
  • 请求方法:支持 GET,POST,HEAD 三种请求;
  • 鉴权文件类型:多个文件类型用 | 分隔,例如 mp4|flv
  • 保留参数设置:控制用户请求 URL 中需要鉴权的参数,用 | 分隔;
  • 自定义参数:可以自定义参数,可以使用CDN控制台预设的变量,多个参数用 | 分隔,例如 token=$arg_token|vendor=ali_cdn
  • 保留请求头设置:控制用户请求头中需要鉴权的参数,可以保留所有参数,也可以保留指定参数;
  • 添加自定义参数:给请求头添加自定义参数;
  • 鉴权状态码:成功200,失败 403;
  • 鉴权超时时长:单位为毫秒,最长时长可以设置为3000;

参考上述说明配置完毕,得到如下界面,本案例中仅限制了 m3u8 类型的文件,后续我们根据实际情况进行修改。

开启该配置之后,再次访问静态资源,就会出现 403 Forbidden

这里需要注意,由于测试的是 m3u8 文件,所以访问该文件的时候,如果没有被禁止,会自动下载。

Python 端权限验证

以下代码基于 flask 编写,主要将POST请求数据和Header请求头保存到文件中。 日志文件,我们使用 logging 模块写入到 new.log 文件中。

# 导入Flask类
from flask import Flask
from flask import request
from flask import render_template
import logging
import requests
import time
import random
import base64
logging.basicConfig(level=logging.DEBUG,
                    filename='./new.log',
                    filemode='a',
                    fORMat='%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# 实例化,可视为固定格式
app = Flask(__name__)

@app.route('/auth', methods=['GET', 'POST','HEAD'])
def auth():
    if request.method == 'GET':
        args = request.args
        return "hello"
    if request.method == 'HEAD':
        print("HEAD请求")
        arges = request.form
        print("参数")
        logging.info(arges)
        print(request)
        print("请求头")
        headers = request.headers
        print(headers)
        logging.info(headers)
        print("请求数据")
        logging.info(request.data)
        return "login success", 200 # 403
    if request.method == "POST":
        print("POST请求")
        arges = request.form
        print(request)
        headers = request.headers
        print("参数")
        logging.info(arges)
        print("请求头")
        logging.info(headers)
        print("请求数据")
        logging.info(request.data)
        return "login success", 200 # 403
if __name__ == '__main__':
    # app.run(host, port, debug, options)
    # 默认值:host="127.0.0.1", port=5000, debug=False
    app.run(host="0.0.0.0", port=5000)

此时,当你再次访问CDN资源时,会自动回调你的服务器进行鉴权操作,上述代码请求成功之后,返回状态码为 200,接下来CDN资源可以访问,如果返回403,表示被禁用。

验证逻辑

服务端验证可以基于 referer + ua + ip 进行验证,为了保证效率,可以使用 Redis 缓存数据库进行配置。

到此这篇关于基于 Python实现云服务器的CDN域名远程鉴权配置的文章就介绍到这了,更多相关CDN 鉴权配置内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 基于Python实现云服务器的CDN域名远程鉴权配置

本文链接: https://lsjlt.com/news/118034.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 基于Python实现云服务器的CDN域名远程鉴权配置
    目录实战场景开启远程鉴权Python 端权限验证验证逻辑实战场景 在项目实战中,会碰到一种特定的运维场景,对CDN访问进行限制,一般手段是开启 referer 防盗链,开启 IP黑白...
    99+
    2024-04-02
  • 基于Python怎么实现云服务器的CDN域名远程鉴权配置
    今天小编给大家分享一下基于Python怎么实现云服务器的CDN域名远程鉴权配置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-06-30
  • 云服务器配置域名怎么设置的
    云服务器的配置域名的步骤如下: 首先,需要在云服务器上创建一个域名或IP地址,具体可以参考本文提供的配置方式:https://cloudserver.com/cn/server/identifier.txt。 在云服务器上添加一个虚拟主...
    99+
    2023-10-26
    服务器配置 域名
  • 云服务器配置域名怎么设置的呢
    云服务器配置域名的步骤如下: 首先,需要在云服务器的主机控制台中开启域名映射。可以将域名映射至您想要配置该域名的服务器主机地址,例如:https://localhost。 然后,在客户端访问域名时,可以通过以下方式设置域名:首先,使用浏...
    99+
    2023-10-27
    服务器配置 域名
  • 腾讯云服务器配置域名的步骤
    1. 登录腾讯云控制台 首先,打开腾讯云官方网站,点击右上角的 "登录" 按钮,输入您的账号和密码进行登录。 2. 进入云服务器控制台 登录成功后,点击控制台首页上方的 "云服务器",进入云服务器控制台。 3. 创建云服务器实例 如果您还...
    99+
    2023-10-28
    腾讯 服务器配置 步骤
  • 腾讯云服务器配置域名怎么设置的
    腾讯云服务器配置域名可以在服务器管理界面上进行设置,具体步骤如下: 查看服务器的网络连接:首先进入服务器管理界面,选择需要配置的区域,并输入服务器地址和IP地址。 设置服务器类型:在服务器管理界面上,选择服务器的类型,如Web服务器、F...
    99+
    2023-10-26
    腾讯 服务器配置 域名
  • 云服务器配置域名怎么设置出来的
    云服务器的配置域名需要遵循一定的规则和流程,下面是一些常见的配置方法: 配置服务器端域名:使用 WSLDAP 或其他的域名解析管理工具(例如 WSLDAP)进行配置。 配置客户端域名:在客户端使用 WSLDAP 或其他的域名解析管理工具...
    99+
    2023-10-27
    服务器配置 域名
  • Python基于select实现的socket服务器
    本文实例讲述了Python基于select实现的socket服务器。分享给大家供大家参考,具体如下: 借鉴了asyncore模块中select.select的使用方法 import socket imp...
    99+
    2022-06-04
    服务器 Python select
  • 配置阿里云域名和web服务器全程指南
    阿里云是中国最大的云计算服务提供商,提供了丰富的云服务,包括域名服务和web服务器服务。本篇文章将详细介绍如何配置阿里云的域名和web服务器,以便用户可以轻松地创建自己的网站。 一、选择阿里云域名和web服务器在配置阿里云域名和web服务器...
    99+
    2023-11-12
    阿里 全程 服务器
  • 腾讯云服务器配置域名怎么设置的啊
    腾讯云服务器配置域名可以在您使用腾讯云服务器的时候进行设置,以下是常见的设置域名的方法: 登录腾讯云服务器,进入到您需要设置域名的账号,输入您的服务器密码和其他基本信息,例如服务器名称和端口号等。 在“账号信息”页面可以设置域名的配置,...
    99+
    2023-10-26
    腾讯 服务器配置 域名
  • 云服务器配置域名怎么设置出来的呢
    域名的设置是网站建设的第一步,它将为用户提供访问网站的唯一身份标识。当用户在购买云服务器时,云服务器会自动为其分配一个域名,这个域名就成为了网站的域名。因此,域名是一个网站的“门牌号”,也是网站建设的重要组成部分。 要设置一个域名,首先需...
    99+
    2023-10-27
    服务器配置 域名
  • 腾讯云服务器配置域名是什么样的
    腾讯云服务器配置域名通常包含以下几个步骤: 确认服务器所需支持的云主机类型和版本 选择正确的云服务器平台,并确认平台的域名是否与您的系统集成 选择适合您需求的云服务器 根据需求设置服务器的配置 配置云主机的IP地址、端口、带宽等参数 ...
    99+
    2023-10-26
    腾讯 服务器配置 域名
  • 云服务器配置域名错误怎么解决的
    如果您的云服务器配置域名出现错误,您可以尝试以下解决方法: 检查域名系统的配置是否正确。如果配置不正确,云服务器就无法正常提供服务。 重新启动云服务器,然后再次登录,以检查配置是否正确。如果配置正确,那么可能是因为某些文件或目录的名字错...
    99+
    2023-10-27
    服务器配置 错误 域名
  • 域名阿里云服务器Tomcat的安装与配置
    本文将详细介绍如何在阿里云服务器上安装和配置Tomcat,以满足你的Web应用程序需求。阿里云服务器是阿里云提供的云服务器,拥有高性能、高可用性、高安全性和低成本等优势,是企业和个人的首选。 在互联网时代,随着Web应用程序的日益普及,越来...
    99+
    2023-11-04
    阿里 服务器 域名
  • 基于python的简单HTTP服务器实现
    HTTP协议 请求报文 请求头部字段解析 响应报文 响应头部字段解析 响应状态码 HTTP服务器实现 http协议大概是我们接触的最多的协议了,每打开一个网页,浏览器和服务器之间,使用的就是HTTP协议。...
    99+
    2023-01-31
    简单 服务器 python
  • 云服务器配置域名在手机上的设置方法
    1. 选择合适的域名 在配置云服务器的域名之前,首先需要选择一个合适的域名。域名是网站在互联网上的唯一标识,可以通过域名来访问网站。你可以在域名注册商处购买一个域名,然后将其解析到你的云服务器上。 2. 配置域名解析 域名解析是将域名指向...
    99+
    2023-10-28
    机上 在手 服务器配置
  • 腾讯云服务器配置域名是什么样的啊
    腾讯云服务器配置域名通常有几种不同的方法,以下是其中一种: 常见的方法之一是使用腾讯云提供的域名服务进行配置。腾讯云提供了丰富的域名服务,包括但不限于https://accounts.tencentcloud.com/、http://l...
    99+
    2023-10-26
    腾讯 服务器配置 域名
  • 云服务器配置域名错误怎么解决的呢
    检查服务器配置文件 在安装云服务器之前,确保你已经配置了服务器的配置文件。配置文件是云服务器的根本,它决定了服务器的性能、安全性、可靠性和可扩展性等方面。如果你不确定配置文件的格式,可以通过命令行工具或第三方服务来检查和修改。 检查...
    99+
    2023-10-27
    服务器配置 错误 域名
  • 腾讯云服务器配置域名错误怎么解决的
    如果您的腾讯云服务器配置了错误,可能是由于域名解析错误导致的。以下是一些修复域名错误的方法: 查看腾讯云客户端配置文件:进入腾讯云客户端,进入配置中心界面,查看配置文件,如果配置文件配置了错误,请更正错误。 检查域名设置:检查腾讯云服务...
    99+
    2023-10-26
    腾讯 服务器配置 错误
  • Python实现获取域名所用服务器的真实IP
    本来是要写个程序用的,没写完不写了,这一部分就贴出来吧 验证域名和IP class JianKong(): '''查询IDC信息,封ip和过白名单''' def __init__(self): ...
    99+
    2022-06-04
    真实 服务器 域名
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作