3.2. 控制镜像 web-import 源

您可以通过将 URI blocklist 和 allowlists 添加到可选的 glance-image-import.conf 文件中来限制 web-import 镜像下载源。

您可以在三个级别允许或阻止镜像源 URI:

  • scheme (allowed_schemes, disallowed_schemes)
  • host (allowed_hosts, disallowed_hosts)
  • port (allowed_ports, disallowed_ports)

如果您在任何级别上同时指定了 allowlist 和 blocklist,则会遵守允许列表,并忽略 blocklist。

Image 服务(glance)应用以下决策逻辑来验证镜像源 URI:

  1. 检查方案。

    1. 缺少方案: reject
    2. 如果存在允许列表,并且 allowlist: reject 中没有方案。否则,跳过 C 并继续 2。
    3. 如果存在黑名单,且 blocklist: reject 中存在方案。
  2. 检查主机名。

    1. 缺少主机名: reject
    2. 如果存在允许列表,并且 allowlist: reject 中没有主机名。否则,跳过 C 并继续 3。
    3. 如果存在黑名单,并且 blocklist: reject 中存在主机名。
  3. 如果 URI 中存在端口,则会检查端口。

    1. 如果存在允许列表,并且 allowlist: reject 中没有端口。否则,跳过 B 并继续 4。
    2. 如果存在黑名单,并且该端口存在于 blocklist: reject 中。
  4. URI 被接受为 valid。

如果您允许方案,可以将它添加到允许列表中,或者不将其添加到黑名单中,则允许将这个方案使用默认端口的任何 URI 添加到该方案中。如果在 URI 中包含端口,则 URI 会根据默认的决策逻辑进行验证。