Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud Registry
  • Начало работы
    • Обзор
    • Реестр
    • Политика жизненного цикла
    • Паттерны фильтрации
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Аудитные логи Audit Trails

В этой статье:

  • Docker
  • Maven
  • NPM
  • NuGet
  • PyPI
  • Binary
  • Go
  • Debian
  1. Концепции
  2. Паттерны фильтрации

Паттерны фильтрации

Статья создана
Yandex Cloud
Обновлена 13 июля 2026 г.
Открыть в Markdown
  • Docker
  • Maven
  • NPM
  • NuGet
  • PyPI
  • Binary
  • Go
  • Debian

Паттерны фильтрации — это шаблоны в формате Ant Style, которые позволяют по пути к артефакту ограничить, какие артефакты в реестре доступны пользователям. Есть два вида шаблонов:

  • паттерны включения — описывают разрешенные пути к артефактам;
  • паттерны исключения — описывают запрещенные пути к артефактам.

Артефакт доступен пользователю, если путь артефакта совпадает хотя бы с одним паттерном включения и не совпадает ни с одним паттерном исключения.

Паттерны задаются при создании или обновлении реестра.

DockerDocker

<репозиторий> может состоять из нескольких сегментов (например library/nginx, traefik/whoami, team/service/sidecar) и содержать только цифры, строчные латинские буквы и символы ., _, -.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к репозиторию ["**"] ["<репозиторий>/**"]
Ограничить доступ к Docker-образам с указанным тегом ["**"] ["<репозиторий>/<тег>"]
Ограничить доступ к Docker-образам с указанным хешем ["**"] ["<репозиторий>/sha256:<хеш>"]
Ограничить доступ к Docker-образам с тегом latest ["**"] ["**/latest"]
Разрешить доступ к Docker-образу ["<Docker-образ>/**"] []

MavenMaven

Все символы-разделители в пути необходимо заменять на /. Например, использовать вместо com.example:mylib:1.0.0 паттерн com/example/mylib/1.0.0.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к группе проектов ["**"] ["<группа>/**"]
Ограничить доступ к артефакту ["**"] ["<группа>/<артефакт>/**"]
Ограничить доступ к версии ["**"] ["<группа>/<артефакт>/<версия>/**"]
Ограничить доступ к файлу ["**"] ["<группа>/<артефакт>/<версия>/<файл>"]
Ограничить доступ к снапшотам ["**"] ["**/*-SNAPSHOT/**"]
Предоставить доступ только к двум группам проектов ["<группа-1>/**", "<группа-2>/**"] []

NPMNPM

Паттерны применяются к пути в формате <пакет>/<файл>. Например, для express@4.18.0 путь — express/express-4.18.0.tgz.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к пакету ["**"] ["<пакет>/**"]
Ограничить доступ к версии ["**"] ["<пакет>/*-<версия>.tgz"]
Ограничить доступ к мажорной версии 2 ["**"] ["<пакет>/<пакет>-2.*.tgz"]
Ограничить доступ к пространству имен (scope) ["**"] ["@<пространство_имен>/**"]
Ограничить доступ к пакету в пространстве имен ["**"] ["@<пространство_имен>/<пакет>/**"]
Предоставить доступ только к одному пространству имен ["@<пространство_имен>/**"] []
Предоставить доступ только к двум пакетам ["<пакет-1>/**", "<пакет-2>/**"] []

NuGetNuGet

Паттерны применяются к пути в формате <пакет>/<версия>. Например, для Newtonsoft.Json@13.0.3 путь — newtonsoft.json/13.0.3. Имя файла .nupkg в путь не попадает: оно вычисляется отдельно (<пакет>.<версия>.nupkg) на уровне хранилища. Поэтому фильтрация работает с гранулярностью до версии, а не до отдельного файла.

Важно

NuGet принудительно приводит путь к нижнему регистру. Например, пакет Newtonsoft.Json преобразуется в newtonsoft.json. Поэтому вместо паттерна Newtonsoft.Json/** нужно использовать newtonsoft.json/**.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к пакету ["**"] ["<пакет>/**"]
Ограничить доступ к версии ["**"] ["<пакет>/<версия>"]
Ограничить доступ к мажорным версиям 2 ["**"] ["<пакет>/2.*"]
Предоставить доступ только к двум пакетам ["<пакет-1>/**", "<пакет-2>/**"] []

PyPIPyPI

Паттерны применяются к пути в формате <пакет>/<версия>/<файл>, например requests/2.31.0/requests-2.31.0.tar.gz.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к пакету ["**"] ["<пакет>/**"]
Ограничить доступ к версии ["**"] ["<пакет>/<версия>/**"]
Ограничить доступ к файлу ["**"] ["<пакет>/<версия>/<файл>"]
Ограничить доступ к мажорным версиям 2 ["**"] ["<пакет>/2.*/**"]
Предоставить доступ только к двум пакетам ["<пакет-1>/**", "<пакет-2>/**"] []

BinaryBinary

Паттерны применяются к пути в формате <пакет>/<версия>/<файл>. <пакет> может состоять из нескольких сегментов, например tools/cli.

Примечание

Так как <пакет> может содержать символ /, <пространство_имен>/** ограничивает доступ ко всем пакетам под этим префиксом. Например, паттерн tools/** ограничивает доступ к tools/cli/..., tools/utils/... и т.п.

Описание Паттерн включения Паттерн исключения
Ограничить доступ к пакету ["**"] ["<пакет>/**"]
Ограничить доступ к версии ["**"] ["<пакет>/<версия>/**"]
Запретить загрузку файла ["**"] ["<пакет>/<версия>/<файл>"]
Ограничить доступ к пространству имен ["**"] ["<пространство_имен>/**"]
Предоставить доступ только к двум пакетам ["<пакет-1>/**", "<пакет-2>/**"] []

GoGo

Паттерны применяются к пути в формате <модуль>/<версия>/<файл>.

Особенности:

  • Префикс v версии удаляется: v1.5.2 преобразуется в 1.5.2. Поэтому вместо паттерна foo/bar/v1.5.2/** нужно использовать foo/bar/1.5.2/**.
  • Суффиксы у мажорных версий модуля удаляются (например, /v2, /v3 и т.п). Для модуля registry.yandex.cloud.net/foo/bar/v2@v2.1.0 нужно использовать путь foo/bar/2.1.0.
  • Префикс registry.yandexcloud.net не включен в путь.
Описание Паттерн включения Паттерн исключения
Ограничить доступ к модулю ["**"] ["<модуль>/**"]
Ограничить доступ к версии ["**"] ["<модуль>/<версия>/**"]
Ограничить доступ к файлу ["**"] ["<модуль>/<версия>/<файл>"]
Ограничить доступ к мажорной версии 2.x.x ["**"] ["<модуль>/2.*/**"]
Ограничить доступ к версиям pre-release ["**"] ["<модуль>/*-*/**"]
Ограничить доступ к пространствам имен, например myorg/cli и myorg/server ["**"] ["myorg/**"]
Предоставить доступ только к двум модулям ["<модуль-1>/**", "<модуль-2>/**"] []

DebianDebian

В Debian-реестре артефакты хранятся в трех независимых пространствах имен:

  • pool/ — бинарные пакеты (.deb). Пути вида pool/<компонент>/<архитектура>/<первая_буква_имени_пакета>/<пакет>/<версия>/<пакет>_<версия>_<архитектура>.deb. Например, pool/main/amd64/n/nginx/1.18.0-6.1/nginx_1.18.0-6.1_amd64.deb.
  • dists/ — метаданные репозитория. Например, dists/<дистрибутив>/Release, dists/<дистрибутив>/InRelease, dists/<дистрибутив>/<компонент>/binary-<arch>/Packages и т.п.
  • uploads/ — буфер загружаемых файлов до их раскладки в pool/. Используется путь uploads/<файл>.

Паттерны применяются к пути хранения, который не всегда совпадает с URL.

Важно

pool/ и dists/ не зависят друг от друга. .deb в pool/ не привязан к конкретному дистрибутиву — связь обеспечивает индекс пакетов в dists/<дистрибутив>/<компонент>/binary-<архитектура>/. Чтобы полностью ограничить доступ к дистрибутиву или компоненту, нужно блокировать и индекс в dists/, и соответствующие пакеты в pool/, иначе пользователь не найдет пакеты по индексам, но сможет сделать прямой запрос по pool/....

Описание Паттерн включения Паттерн исключения
Ограничить доступ к дистрибутиву ["**"] ["dists/<дистрибутив>/**"]
Ограничить доступ к компоненту non-free ["**"] ["pool/non-free/**", "dists/*/non-free/**"]
Ограничить доступ к архитектуре i386 ["**"] ["pool/*/i386/**", "dists/*/*/binary-i386/**"]
Ограничить доступ к пакету ["**"] ["pool/*/*/*/<пакет>/**"]
Ограничить доступ к версии ["**"] ["pool/*/*/*/<пакет>/<версия>/**"]

Была ли статья полезна?

Предыдущая
Политика жизненного цикла
Следующая
Квоты и лимиты
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»