• Русский
  • Управление коллекциями развертываний

    Alauda Security Service позволяет определять и управлять коллекциями развертываний — логическими группами ресурсов, основанными на шаблонах сопоставления. Коллекции помогают организовывать среды и задавать область для таких рабочих процессов, как отчетность по уязвимостям.

    Обзор

    Коллекции в Alauda Security Service — это созданные пользователем именованные ссылки, которые группируют развертывания, namespaces или кластеры с помощью правил отбора. Эти правила могут основываться на точных совпадениях или регулярных выражениях (поддерживается синтаксис RE2). Коллекции также могут быть вложенными, что позволяет строить сложные иерархии.

    Ключевые моменты:

    • В настоящее время коллекции доступны только для развертываний.
    • Коллекции используются в отчетности по уязвимостям и других рабочих процессах, работающих с коллекциями.
    • Для коллекций развертываний требуется серверная часть базы данных PostgreSQL.

    Предварительные требования

    Чтобы использовать коллекции, у вашей учетной записи должны быть следующие разрешения:

    • WorkflowAdministration: доступ на чтение для просмотра коллекций; доступ на запись для добавления, изменения или удаления коллекций.
    • Deployment: доступ на чтение или чтение/запись для просмотра того, как правила сопоставляются с развертываниями.

    Эти разрешения входят в системную роль Admin. Подробности см. в документации по управлению RBAC.

    Преимущества коллекций

    Коллекции предоставляют гибкий способ:

    • группировать ресурсы, принадлежащие конкретным командам;
    • применять разные политики для сред разработки и production-сред;
    • управлять распределенными приложениями, охватывающими несколько namespaces или кластеров;
    • эффективно организовывать production- или test-среды.

    Доступ к коллекциям и их управление

    Вы можете управлять коллекциями через портал Alauda Security Service:

    1. Перейдите в Platform Configuration > Collections.
    2. На странице отображается список существующих коллекций. Вы можете:
      • искать коллекции по имени;
      • создавать новые коллекции развертываний.

    В текущем представлении списка основными столбцами являются:

    • Collection
    • Description
    • Row actions

    Создание коллекции развертываний

    Шаги

    1. Нажмите Create collection.
    2. В разделе Collection details укажите имя и описание.
    3. В разделе Collection rules выполните хотя бы одно из следующих действий:
      • определите правила отбора (см. ниже);
      • прикрепите существующие коллекции.
    4. Проверьте раздел Attached collections, если хотите расширить коллекцию существующими наборами.
    5. Используйте Collection results для предварительного просмотра того, какие развертывания соответствуют текущему набору правил.
    6. Если вы еще не добавили никаких правил селектора или прикрепленных коллекций, предварительный просмотр останется пустым и предложит сначала добавить правила или прикрепить существующие коллекции.
    7. Нажмите Save.

    Примечание: Требуется как минимум одно правило или одна прикрепленная коллекция.

    Определение правил коллекции

    Вы можете настроить правила для выбора ресурсов в коллекцию:

    • Развертывания

      • No deployments specified: не учитывать критерии развертываний.
      • Deployments with names matching:
        • Exact value: введите имя развертывания.
        • Regex value: используйте регулярное выражение (синтаксис RE2) для сопоставления с шаблоном. Например, .* соответствует всем развертываниям.
      • Deployments with labels matching exactly: введите корректную метку Kubernetes в формате key=value.
    • Namespaces

      • No namespaces specified: не учитывать критерии namespaces.
      • Namespaces with names matching: используйте точное значение или регулярное выражение.
      • Namespaces with labels matching exactly: введите метку в формате key=value.
    • Clusters

      • No clusters specified: не учитывать критерии кластеров.
      • Clusters with names matching: используйте точное значение или регулярное выражение.

    Чтобы добавить дополнительные критерии, используйте вариант OR для объединения нескольких правил.

    Примеры регулярных выражений

    Alauda Security Service поддерживает синтаксис RE2 для регулярных выражений. Ниже приведены несколько распространенных примеров:

    Сопоставление production-кластеров

    Чтобы сопоставить кластеры, имена которых начинаются с prod:

    ^prod.*

    Сопоставление non-production-кластеров

    Чтобы сопоставить кластеры, в именах которых отсутствует prod (RE2 не поддерживает отрицательный просмотр вперед):

    ^[^p]*(p([^r]|$|r([^o]|$|o([^d]|$))))*[^p]*$

    Сопоставление всех сущностей

    Чтобы сопоставить все развертывания, namespaces и кластеры:

    • Deployments with names matching: .*
    • Namespaces with names matching: .*
    • Clusters with names matching: .*

    Сопоставление конкретных развертываний и меток

    Чтобы включить развертывание reporting, любое развертывание, имя которого заканчивается на -db, и namespaces с меткой kubernetes.io/metadata.name=medical:

    • Deployments with names matching: reporting
    • OR: значение Regex .*-db
    • Namespaces with labels matching exactly: kubernetes.io/metadata.name=medical

    Прикрепление коллекций

    Вы можете строить иерархические коллекции, прикрепляя существующие коллекции:

    1. Отфильтруйте коллекции по имени или выберите их из списка.
    2. Нажмите Attach, чтобы добавить выбранную коллекцию.
    3. Прикрепленные коллекции расширяют родительскую коллекцию с помощью отношения OR.

    Миграция из Access Scopes

    При миграции с rocksdb на PostgreSQL существующие access scopes, используемые в отчетности по уязвимостям, преобразуются в коллекции. Процесс миграции создает вложенные и корневые коллекции, чтобы воспроизвести исходную логику отбора.

    • Вложенные коллекции: повторяют исходную логику access scope.
    • Корневая коллекция: прикрепляет вложенные коллекции и используется в конфигурациях отчетов.

    Если область нельзя перенести (например, используются неподдерживаемые операторы селектора меток), формируется сообщение в журнале. Для селекторов меток поддерживается только оператор IN.

    Использование API

    Коллекциями также можно управлять через API CollectionService. Например, CollectionService_DryRunCollection возвращает результаты, аналогичные предварительному просмотру в реальном времени в портале. Подробности см. в справочнике API в портале.