You need to enable JavaScript to run this app.
导航

配置远程鉴权

最近更新时间2023.12.06 14:01:07

首次发布时间2023.08.23 19:50:16

视频点播支持在域名管理中配置远程鉴权。本文为您介绍远程鉴权的功能和操作步骤等内容。

适用范围

远程鉴权适用于点播加速域名和自定义源站加速域名。

功能介绍

如果您的站点有专属的鉴权服务器对用户请求进行鉴权,您可以在视频点播中配置远程鉴权。

远程鉴权的流程如下:

  1. 用户向您的站点发送请求,请求中包含鉴权参数。
  2. 在收到用户请求后,视频点播将用户请求转发到鉴权服务器。
  3. 鉴权服务器对用户请求进行鉴权,并将鉴权结果返回给视频点播。
  4. 视频点播根据鉴权结果,将用户请求的内容发送给用户或者拒绝用户请求。

远程鉴权与 URL 鉴权的区别

  • URL 鉴权:视频点播直接对请求进行鉴权。
  • 远程鉴权:视频点播不对请求进行鉴权,而是转发请求并从鉴权服务器接收鉴权结果。

操作步骤

  1. 登录火山引擎视频点播控制台,进入空间。

  2. 选择左侧导航栏分发加速设置 > 域名管理,进入域名管理页面。

  3. 选择点播加速域名自定义源站加速域名或者封面加速域名页签,单击操作列的修改配置按钮。

  4. 进入对应加速域名配置页面,选择访问控制页签。

  5. 单击页面下方的修改配置按钮。远程鉴权功能默认关闭。您可以在 远程鉴权下方,将状态设为开启,根据提示,完成参数配置。配置远程鉴权的参数分多个模块:

  6. 完成配置后,单击保存配置按钮。

生效对象

支持您添加一个或者多个规则。您最多可以添加 10 个规则。如果一个请求匹配任何一个规则,该请求需要被鉴权。

参数说明

规则类型

选择一个规则的类型。该配置的选项如下:

  • 文件后缀:表示对指定扩展名文件的请求需要被鉴权。
  • 目录匹配:表示对指定目录路径下文件的请求需要被鉴权。
  • 文件全路径:表示对指定文件的请求需要被鉴权。

是否匹配

指定匹配的方式。该配置的选项如下:

  • 匹配:表示匹配规则内容的请求需要被鉴权。
  • 不匹配:表示不匹配规则内容的请求需要被鉴权。

规则

输入一个或者多个配置项,多个配置项以英文分号(;)分隔。 配置项的要求如下:

  • 如果规则类型文件后缀,您需要输入一个或者多个文件扩展名,总长度不能超过 1,024 个字符。文件扩展名是大小写敏感的,可以包含字母和数字。需要遵循的规则如下:
    • 文件后缀规则支持填充多个,以 ; 分隔 如 jpg;png
    • 规则不允许重复。
  • 如果规则类型目录匹配,您需要输入一个或者多个目录路径,总长度不能超过 1,024 个字符。多个目录路径使用分号分隔。目录路径是大小写敏感的。需要遵循的规则如下:
    • 目录匹配规则需要以 / 开头和结尾,多个目录之间以 ; 分隔 如 /test/a/;/test/b/。如果要指定所有目录,输入 /
    • 目录路径可以包含可打印 ASCII 字符,以下字符除外:连续的斜杠(//)、空格、美元符号($)、问号(?)、Delete(ASCII code 127)。
    • 规则不允许重复。
  • 如果规则类型文件全路径,您需要输入一个或者多个文件路径,总长度不能超过 1,024 个字符。文件路径是大小写敏感的。需要遵循的规则如下:
    • 支持通配符*,多个路径之间以 ; 分隔 如 /test/1.jpg;/test/2.jpg
    • 文件路径必须以反斜杠(/)开头。比如 /www/img/picture.png;/doc/study.docx
    • 文件路径可以包含可打印 ASCII 字符,以下字符除外:连续的斜杠(//)、空格、美元符号($)、问号(?)、Delete(ASCII code 127)。
    • 规则不允许重复。

鉴权请求地址

参数说明示例

远程鉴权地址(主)

表示鉴权服务器的主地址,长度不能超过 100 个字符,需要填写合法的域名或 IP。主地址必须采用以下格式之一:

  • <scheme>://<domain>
  • <scheme>://<ip>

说明

  • <scheme> 的值是 http 或者 https
  • <domain> 的值不能是 localhost。<ip> 的值不能是 127.0.0.1

https://example.com

远程鉴权地址(备)表示鉴权服务器的备地址,长度不能超过 100 个字符,格式和输入要求与主地址相同。

请求路径

表示鉴权 URL 中的路径。鉴权服务器的地址和该路径组成了鉴权 URL。视频点播会把用户请求转发到该鉴权 URL。该配置的选项如下:

  • 遵循用户请求路径:表示鉴权 URL 中的路径与用户请求 URL 中的路径相同。
  • 指定具体请求路径:表示一个指定的路径。您需要在鉴权路径中指定该路径。

鉴权路径

如果请求路径指定具体请求路径,该配置才会出现。在该配置中,您指定一个鉴权路径。需要遵循的规则如下:

  • 鉴权路径必须以斜杠(/)开头。
  • 长度不能超过 100 个字符。
  • 鉴权路径可以包含除了以下字符的可打印 ASCII 字符:连续的斜杠(//)、美元符号($)、空格、问号(?)、Delete(ASCII code 127)。

/sign

请求方法

表示在发送鉴权请求时,视频点播所使用的请求方法。该配置的选项如下:

  • 跟随用户请求的方法:表示鉴权请求使用的方法与用户请求相同。
  • GET:表示鉴权请求使用 GET 方法。
  • POST:表示鉴权请求使用 POST方法。
  • HEAD:表示鉴权请求使用 HEAD 方法。

鉴权请求参数

支持指定鉴权请求需要包含的参数。支持您添加一个或者多个规则。您最多可以添加 50 个规则。

参数说明

用户请求参数

表示哪些用户请求 URL 中的查询参数包含在鉴权请求中。该配置有以下选项:

  • 保留全部参数:表示鉴权请求包括用户请求 URL 中的所有查询参数。
  • 删除全部参数:表示鉴权请求不包括用户请求 URL 中的任何查询参数。
  • 保留部分参数:表示鉴权请求包括用户请求 URL 中的指定的查询参数。

参数清单

如果用户请求参数保留部分参数,该配置才会出现。该配置表示用户请求 URL 中的哪些查询参数需要包括在鉴权请求中。需要遵循的规则如下:

  • 多个参数用分号 (;) 分隔。
  • 总长度不能超过 1,024 个字符。
  • 参数名称是大小写敏感的,可以包含除了以下字符以外的可打印 ASCII 字符: 空格、双引号(")、Delete(ASCII code 127)
  • 参数清单不能重复。

添加鉴权请求参数

该配置表示您需要额外添加的查询参数。您最多可以添加 50 个参数。

  • 请求参数名称:表示您需要添加的一个查询参数的名称。参数名称不能超过 1,024 个字符,可以包含除了以下字符的可打印 ASCII 字符:双引号(")、空格、Delete(ASCII code 127)
  • 取值方式:表示该查询参数的值是如何定义的。该配置有以下选项:
    • 常量:表示该参数值是一个固定值,类型是字符串。
    • 变量:表示该参数的值来自一个变量。参见变量字段说明
  • 参数取值:表示该查询参数的值。该配置的说明如下:
    • 如果取值方式常量,您指定一个固定值作为该参数的值,长度不能超过 1,024 个字符。该参数值不能以美元符号($)开头,可以包含除了以下字符的可打印 ASCII 字符:双引号(")、Delete(ASCII code 127)
    • 如果取值方式变量,您需要从列表中选择一个变量。您选择的变量的值会作为该参数的值。

变量说明

视频点播提供了以下变量。

变量说明示例
host表示用户请求中 Host 头的值。example.com:8080
ua表示用户请求中 User-Agent 头的值。Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail
referer表示用户请求中 Referer 头的值。https://www.example.com/file?name=123
content_type表示用户请求中 Content-Type 头的值。text/html
X-Forwarded-For表示用户请求中 X-Forwarded-For 头的值。20.5.118.10
client_ip表示发送用户请求的 IP 地址。15.15.15.10
scheme表示用户请求使用的协议。https
server_protocol表示用户请求使用的协议的版本。HTTP/2.0
URI表示用户请求中的 URI,不包含查询字符串。/dir/page.php
req_args表示用户请求中所有的查询参数。color=red&n=10
request_method表示用户请求使用的请求方法。GET
request_uri表示用户请求中的 URI,包含查询字符串。/dir/page.php?color=red&n=10
local_ip表示在视频点播中,响应用户请求的边缘节点的 IP 地址。267.89.0.45
req_time表示视频点播收到用户请求的时间。关于时间格式,请参见示例。18/Apr/2022:16:48:48 +0800
msec表示当前的时间。格式是十进制的 Unix 时间戳。1650558396

鉴权请求头

支持您指定鉴权请求需要包含的请求头。支持您添加一个或者多个规则。您最多可以添加 50 个规则。

参数说明

HOST 请求头

表示鉴权请求中 HOST 头部的值。该配置有以下选项:

  • 加速域名:表示 HOST 头部的值与加速域名相同。
  • 自定义:表示一个指定的 HOST 头部值。

自定义请求 HOST

如果您选择该选项,页面会出现 自定义请求 HOST 配置。在该配置中,您需要输入一个 HOST 头部的值。需要遵循的规则如下:

  • 长度限制为 1 ~ 1024 个字符。
  • 符合请求头名称格式。
  • 头部清单不能重复。

用户其他请求头

表示哪些用户请求中的请求头包含在鉴权请求中。该配置有以下选项:

  • 保留全部头部:表示鉴权请求包含用户请求中的所有请求头。
  • 删除全部头部:表示鉴权请求不包含任何用户请求中请求头。
  • 保留部分头部:表示鉴权请求包含用户请求中的指定请求头。

头部清单

如果用户请求头保留部分头部,该配置才会出现。该配置指定需要包含在鉴权请求中的请求头。多个请求头用分号 (;) 分隔。请求头是大小写不敏感的。需要遵循的规则如下:

  • 长度限制为 1 ~ 1024 个字符。
  • 符合请求头名称格式。
  • 头部清单不能重复。
添加鉴权请求头该配置表示您需要额外添加的请求头。您最多可以添加 50 个请求头。
请求头部名称表示一个您需要添加的请求头。请求头是大小写不敏感的,不能是 Host,长度不能超过 1,024 个字符。该请求头可以包含除了以下字符以外的可打印 ASCII 字符:下划线(_)、空格、双引号("),Delete(ASCII code 127)

取值方式

表示该请求头的值是如何定义的。该配置有以下选项:

  • 常量:表示该请求头的值是一个固定值,类型是字符串。
  • 变量:表示该请求头的值来自一个变量。参见变量字段说明

参数取值

表示该请求头的值。该配置的说明如下:

  • 如果取值方式常量,您指定一个固定值作为该请求头的值。该值的长度不能超过 1,024 个字符,不能以美元符号($)开头,可以包含除了以下字符以外的可打印 ASCII 字符:双引号(")、Delete(ASCII code 127)。
  • 如果取值方式变量,您需要从列表中选择一个变量。您选择的变量的值会作为该请求头的值。

鉴权结果

支持您配置鉴权结果,包含鉴权成功状态码、鉴权失败状态码、鉴权超时时间等参数。

参数说明

鉴权成功状态码

表示从鉴权服务器返回的状态码中,哪些被认为是鉴权成功。默认值是 200。

说明

  • 您可以输入范围在 200-299 中的一个或者多个状态码。
  • 多个状态码使用分号(;)分隔。您也可以输入 2xx 表示 200-299 范围中的任意一个状态码。

鉴权失败状态码

表示从鉴权服务器返回的状态码中,哪些被认为是鉴权失败。默认值是 401。

说明

  • 您可以输入范围在 400-499 中的一个或者多个状态码。多个状态码使用分号(;)分隔。
  • 您也可以输入 4xx 表示 400-499 范围中的任意一个状态码。

其他状态码

该配置表示在满足以下所有条件时,视频点播对用户请求的处理方式。

  • 鉴权服务器返回的状态码不是您指定的表示鉴权成功的状态码。
  • 鉴权服务器返回的状态码不是您指定的表示鉴权失败的状态码。

该配置有以下选项:

  • 默认放行:表示视频点播认为用户请求鉴权成功,并将请求的文件返回给用户。
  • 默认拦截:表示视频点播认为用户请求鉴权失败,拒绝该用户请求。

鉴权结果缓存

表示视频点播是否缓存鉴权结果,也就是鉴权服务器返回的鉴权状态码。您可以设置该配置为 开启 或者 关闭。默认是 关闭

在开启该配置后,对于收到的用户请求,视频点播会检测该请求的鉴权状态码是否已被缓存。如果鉴权状态码已被缓存,视频点播则使用该鉴权状态码来确定是否将请求的文件发送给用户。

说明

该配置可以提升视频点播响应用户请求的效率。

缓存时间表示鉴权状态码的缓存时间,单位是秒。该配置仅在 鉴权结果缓存 为 开启 的情况下才出现。您可以输入范围在 [1,86400] 之间的一个值。86,400 秒表示 24 小时。

缓存key

表示缓存的鉴权状态码中所包含的字段。这些字段是您在该配置中定义的。每个鉴权状态码都有一个唯一的缓存key。该配置仅在 鉴权结果缓存 为 开启 的情况下才出现。

同时,视频点播通过缓存 key 来判断用户请求是否命中了鉴权状态码的缓存。 当收到一个请求时,视频点播尝试使用请求中的字段来匹配缓存 key。如果找到了匹配,视频点播就会使用该缓存的鉴权状态码。

注意

缓存key 中必须包含 URI 这个字段,不然视频点播无法判断鉴权结果所对应的请求文件。

响应客户端拦截状态码

表示鉴权失败时,视频点播响应用户请求的状态码。默认的状态码是 403。

您可以输入范围在 [400,499] 中的任意一个状态码。

鉴权超时时间表示鉴权请求的超时时间,单位是毫秒,默认值是 200。您可以输入的超时时间的范围是 200-3600。

异常执行策略

该配置表示鉴权异常发生时,视频点播处理用户请求的方式。

该配置有以下选项:

  • 默认放行:表示视频点播认为用户请求鉴权成功,并将请求的文件返回给用户。
  • 默认拦截:表示视频点播认为用户请求鉴权失败,拒绝该用户请求。

鉴权异常包括,但不限于,以下情况:

  • 鉴权请求超时。
  • 鉴权服务器拒绝了鉴权请求。
  • 视频点播无法与鉴权服务器建立连接。