search
Cloud Блог – GitLab усиливает безопасность, расширяет Duo в рамках обновлений за первый квартал 2025 года
Gitlab

GitLab усиливает безопасность, расширяет Duo в рамках обновлений за первый квартал 2025 года

🤖 GitLab Duo и возможности искусственного интеллекта

Новая функция Duo Code Review (бета-версия) вносит свой вклад в разработку, проводя первичную проверку запросов на слияние. Он отыскивает потенциальные ошибки и предлагает улучшения — просто отметьте @GitLabDuo в качестве рецензента или упомяните его в комментарии, чтобы начать.

Duo Self-Hosted достиг общей доступности, открыв возможность запуска отдельных больших языковых моделей (LLM) поверх вашей собственной инфраструктуры. Вы можете подключить модели Mistral с открытым исходным кодом (через vLLM или AWS Bedrock), Claude 3.5 Sonnet (на AWS Bedrock) или модели OpenAI (на Azure OpenAI), адаптированные для Code Suggestions и Chat. Интеграция с VS Code и IDE JetBrains также находится на высоком уровне. Перетаскивание файлов проекта в чат Duo дает ему более полное представление о вашей кодовой базе, что означает более точные объяснения, более эффективную отладку и лучшие предложения.

Root Cause Analysis для GitLab Duo Self-Hosted вошел в бета-версию. Он поддерживает модели Mistral, Anthropic и OpenAI GPT, помогая вам быстрее устранять неполадки в работе CI/CD благодаря просмотру логов, выявлению проблем и рекомендациям касательно их устранения. Полное развертывание запланировано на 17.11.

Размер интерфейса Duo Chat теперь можно менять в GitLab UI. Это облегчает многозадачность, независимо от того, сканируете ли вы код или общаетесь в фоновом режиме. Ведете несколько бесед одновременно? Теперь Duo Chat отслеживает разные темы по отдельности. Каждая сохраняет свой собственный контекст, и переключение между ними происходит легко с помощью значка истории чата (в настоящее время эта функция доступна только на GitLab.com).

Хотите узнать, как ИИ влияет на ваш рабочий процесс? Информационная панель AI Impact Dashboard дает новые сведения, отслеживая тенденции за месяц по показателям принятия предложений по коду и активности в чате. Она дополняет существующий 30-дневный снимок и также доступна для пользователей Duo Self-Hosted — идеальное решение для выявления закономерностей и измерения реальной ценности.

Хотите поэкспериментировать с новейшими моделями? Meta Llama 3 сейчас находится в бета-версии для GitLab Duo Self-Hosted, поддерживая как Code Suggestions, так и Chat. Кроме того, появилась дополнительная гибкость: каждая подфункция Duo Chat на самостоятельном хостинге теперь может работать на разных поддерживаемых моделях, что дает возможность тонкого контроля над производительностью и поведением.

Наконец, композитная идентичность повышает безопасность, позволяя аутентифицировать запросы одновременно как пользователя и как учетную запись сервиса. Это особенно полезно для агентов искусственного интеллекта, которым необходимо сбалансировать намерения пользователей и свои собственные разрешения.

🔎 Рецензирование кода и управление коммитами

Правила ветвей стали более гибкими — теперь к ним добавились настраиваемые параметры сквоша. Вы можете тонко настраивать поведение сквоша для каждой защищенной ветки. Хотите требовать сквошинг при слиянии в develop, но пропустить его для main? Нет проблем. Настройте его в соответствии с рабочим процессом вашей команды.

Управление утверждениями также стало более умным. Файл CODEOWNERS теперь поддерживает исключения пути, так что вы можете указать определенные файлы или каталоги, которые не нуждаются в одобрении владельца кода. Более эффективные ревью, меньше бюрократии.

Еще лучше то, что теперь вы можете назначать владельцами кода целые роли, например @@developers, @@maintainers или @@owners — вместо того, чтобы перечислять отдельных пользователей. Это упрощает управление правами собственности и синхронизирует их с проектными ролями, а не с конкретными людьми.

Для тех, кто копается в истории Git, в аннотациях есть новая фишка. Теперь можно отключить видимость определенных ревизий, отмеченных в файле.git-blame-ignore-revs. Это означает более чистый контекст при просмотре истории файлов — особенно полезно при игнорировании крупных рефакторингов или изменений, связанных только с форматированием.

🔄 Непрерывная интеграция/непрерывная доставка (CI/CD)

Клиенты GitLab Dedicated теперь имеют больше возможностей для аварийного восстановления благодаря более широкому выбору регионов AWS для размещения фейловер-инстансов. Эти дополнительные регионы дают командам больше гибкости при планировании отказоустойчивости.

Для усиления контроля над выполнением пайплайнов задания на этапе .pipeline-policy-pre reserved теперь должны быть завершены до начала любого другого этапа, независимо от взаимосвязей между needs.

Политики выполнения пайплайнов также изменились: теперь они поддерживают дополнительные переменные запроса на слияние. Усиление контроля над пайплайном также сопровождается возможностью принудительного выполнения пользовательских этапов в режиме Inject с помощью политик выполнения. Это добавляет гибкости вашей структуре CI/CD, заменяя старую стратегию inject_ci на более мощную inject_policy.

  • Теперь вы можете применять правила централизованного воркфлоу для стратегии override_ci.
  • Поведение skip_ci теперь настраивается в политиках, что позволяет доверенным пользователям или учетным записям служб обходить пайплайны, не пропуская проверки на соответствие требованиям.

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

Автоматическое истечение срока действия пайплайна теперь является настраиваемым параметром проекта. Задайте временные рамки, и GitLab удалит устаревшие пайплайны и их артефакты, обеспечив порядок и отсутствие ручного труда. Кроме того, администраторы, использующие лицензии GitLab для сообщества, теперь могут устанавливать лимиты ресурсов CI/CD, чтобы лучше управлять их использованием в разных проектах — и поддерживать эффективность пайплайнов, а также контролируемость инфраструктуры.

GitLab теперь поддерживает GitOps на основе OCI с помощью FluxCD. Это позволяет упаковывать манифесты Kubernetes как образы OCI и хранить их в любом совместимом реестре контейнеров, что является большим шагом вперед в современных рабочих процессах GitOps.

GitLab Runners выпустили новую порцию функций и исправлений:

  • В 17.9 добавлены проверка состояния раннеров автоскейлера, метрики гистограммы для стадии prepare и поддержка пользовательских имен контейнеров сервисов при использовании экзекьютора Kubernetes.
  • В 17.10 добавлены проверки состояния экзекьюторов автоскейлера, поддержка расширенных вольюмов Docker-экзекьюторов и новые параметры конфигурации устройств для служб.

🛡️ Безопасность и комплаенс

Защищенные репозитории теперь предлагают жесткий контроль доступа и гранулированные разрешения, поэтому только одобренные пользователи могут перемещать, извлекать или управлять образами контейнеров.

Управление уязвимостями стало более адаптивным:

  • Теперь вы можете вручную регулировать степень серьезности отдельных уязвимостей, чтобы лучше отразить модель рисков вашей организации. Каждое изменение полностью отслеживается.
  • Обнаружение секретов теперь включает рекомендации по устранению, что помогает командам действовать быстрее и эффективнее.
  • Уязвимости теперь могут запускать события веб-хука, что упрощает автоматизацию ответных действий или интеграцию со сторонними инструментами.
  • Система теперь может идентифицировать коммит, устранивший уязвимость, что улучшает отслеживаемость и готовность к аудиту.
  • Дополнительные сигналы риска — данные EPSS, KEV и CVSS — теперь отображаются в Vulnerability Report и Details, что помогает определить приоритетность наиболее важных проблем.
  • Кроме того, в отчете об уязвимостях на уровне проекта можно отфильтровать данные по идентификатору для быстрого и целенаправленного поиска.

На стороне соответствия законодательству:

  • Теперь можно выбрать стандартную структуру соответствия из выпадающего списка на странице Frameworks, что облегчает настройку для групп верхнего уровня.
  • Вкладка UI в Центре соответствия была оптимизирована для работы с большим количеством фреймворков без снижения производительности.
  • Пользовательские роли теперь могут получать разрешение на чтение комплаенс-дашборда, что позволяет более точно контролировать доступ.
  • Теперь можно применить фреймворк непосредственно из центра соответствия проекта, что делает внедрение более быстрым и простым.

Рабочие процессы утверждения мердж-реквестов стали более мощными:

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

При применении политик теперь можно блокировать удаление активных проектов политики безопасности, связанных с группами или проектами, что предотвращает случайные или злонамеренные нарушения. И наконец, OAuth-авторизации теперь генерируют события аудита, что позволяет лучше контролировать доступ к сторонним приложениям.

⌚ Аутентификация и авторизация

  • Теперь вы можете настроить срок действия ID-токенов с помощью атрибута id_token_expiration, когда GitLab используется в качестве провайдера OpenID Connect (OIDC), что позволяет более точно контролировать сроки аутентификации.
  • Администраторы GitLab теперь имеют единый API для идентификации и отзыва токенов.
  • Расширены триггеры Webhook для истечения срока действия токенов. Теперь, помимо прежнего 7-дневного предупреждения, события срабатывают за 60 и 30 дней до истечения срока действия, обеспечивая более заблаговременное уведомление о необходимости обновления токена.
  • Усовершенствовано сопоставление атрибутов профиля, позволяющее проверять Organization и Title от провайдера идентификации OmniAuth (IdP) на соответствие с профилем пользователя в GitLab.
  • Новый скоуп self_rotate позволяет автоматически оборачивать токены доступа (персональные, проектные или групповые), повышая безопасность токенов без ручного вмешательства.
  • В Credentials Inventory теперь можно сортировать персональные, SSH, проектные и групповые токены доступа по владельцу, дате создания и дате последнего использования, что помогает администраторам эффективнее управлять токенами и проводить аудит.
  • Теперь вы можете установить пользовательскую дату истечения срока действия для ротируемых токенов учетных записей служб с помощью атрибута expires_at, что обеспечивает управление жизненным циклом токенов.
  • Теперь для членства в группах поддерживаются несколько поставщиков OIDC, что обеспечивает бóльшую гибкость при аутентификации через различных поставщиков идентификационных данных.
  • Отслеживание IP-адресов было расширено и теперь показывает до семи последних, с которых использовались токены доступа.
  • Администраторы теперь могут отключать 2FA для отдельных Enterprise-пользователей через API.
  • Неактивные токены доступа к проектам и группам теперь видны в пользовательском интерфейсе в течение 30 дней для аудита, поэтому ни один токен не будет упущен при проверке безопасности.
  • Функция видимости общего доступа к группам теперь предоставляет отдельные вкладки для проектов и групп на странице обзора, помогая пользователям быстро ориентироваться в общих ресурсах.
  • Администраторы теперь могут запретить пользователям делать свой профиль приватным с помощью специальной настройки в админке.
  • Наконец, были уточнены и улучшены разрешения, благодаря чему администраторам стало проще определять, кто может создавать проекты в группах. Роль владельца теперь включена в настройки защиты создания проектов.

8️⃣ Интеграция с Kubernetes

Менеджмент развертываний Kubernetes через GitLab стал гораздо удобнее. Ресурсы Kubernetes, управляемые GitLab, теперь автоматически выполняют provisioning, что упрощает развертывание приложений без тяжелой работы.

Навигация по панели Kubernetes также стала более интуитивной. Новая строка поиска позволяет быстро находить конкретные поды, сокращая время на просмотр длинных списков.

А при использовании Flux стало проще следить за происходящим: реконсиляции, которые находятся в режиме ожидания, теперь четко обозначены соответствующим статусом, что позволяет лучше видеть процесс развертывания прямо с дашборда.

Поддержка воркспейс-контейнеров с Sysbox также теперь доступна. Если ваша среда разработки на кластере Kubernetes, настроенном с помощью Sysbox, вы можете создавать и запускать контейнеры прямо в своем рабочем пространстве — никаких дополнительных действий не требуется.

Кстати, о рабочих пространствах: теперь создавать их стало еще проще. Больше не нужно определять собственный devfile.yaml — GitLab предоставляет файл по умолчанию, предварительно наполненный общими инструментами разработки, чтобы вы могли быстрее приступить к кодингу.

И наконец, предупреждение для пользователей, управляющих кластерами Kubernetes на основе сертификатов: GitLab представила новый API-эндпойнт, который поможет вам обнаружить и перенести эти кластеры. Это особенно важно, поскольку поддержка интеграции на основе сертификатов будет отключена на GitLab.com и в конечном итоге удалена из самоуправляемых инстансов.

📄 Страницы GitLab

Доступ к частным страницам GitLab Pages стал еще проще для автоматизации и интеграции — теперь вы можете программно аутентифицироваться с помощью токенов доступа. Идеально подходит для скриптов, ботов и других инструментов, которым нужен безопасный доступ без ручного входа. Контроль доступа на уровне групп теперь позволяет владельцам ограничить доступ к GitLab Pages только для членов проекта.

Нужно разместить разные версии сайта? Благодаря параллельному развертыванию вы теперь можете одновременно запускать несколько версий сайтов GitLab Pages — каждая из них получает уникальный URL-адрес, поэтому тестирование и предварительный просмотр изменений не составят труда. А если вы управляете несколькими пользовательскими доменами, GitLab Pages теперь позволяет установить основной. Весь трафик будет автоматически перенаправляться на него — ваши URL будут чистыми, согласованными и готовыми к SEO.

🧑‍💻 Управление рабочими элементами

Проблемы, эпики и задачи теперь говорят на одном языке — в буквальном смысле. Они были объединены в общую структуру, а новый внешний вид бета-версии привнес в нее элегантный интерфейс. Это и представления в виде drawer для более быстрого доступа, и возможность переключения типов элементов, и поддержка дат начала, и понимание наследования, и единый список элементов разработки, и улучшенный макет со связанными работами.

Для обеспечения последовательности и эффективности шаблоны описания теперь доступны для всех типов рабочих элементов — эпиков, проблем, задач, целей и ключевых результатов.

Управлять to-do стало еще проще:

  • Откладывайте выполнение элементов, чтобы временно скрыть их в неподходящий момент.
  • Используйте групповые действия, чтобы отметить элементы как выполненные или отложить сразу несколько.
  • Отслеживайте несколько дел по каждой проблеме или запросу на слияние и получайте отдельные уведомления для каждого упоминания или действия — ничто не ускользнет из виду.

В эпиках все организовано как никогда:

  • Переработанный виджет Epics ancestors теперь находится в самом верху и наглядно показывает непосредственные и конечные материнские элементы.
  • Теперь вы можете добавлять материнские эпики напрямую, как и в случае с проблемами.
  • Поле итерации теперь отображается в дочерних элементах эпиков, проблем и целей, что дает вам больше возможностей для планирования.
  • Статусы состояния эпиков («По плану», «Требует внимания», «В зоне риска») позволяют наглядно продемонстрировать прогресс.
  • Вы также можете отслеживать время, потраченное на эпики, что позволяет вывести тайм-менеджмент на более высокий уровень.
  • А благодаря новым веб-хукам внешние инструменты могут синхронизироваться с обновлениями эпиков в режиме реального времени.

Отличная новость для любителей кастомизации: теперь у вас есть расширенные возможности выбора цвета для эпиков, включая пользовательские RGB и шестнадцатеричные значения наряду с предопределенными вариантами — добавьте немного индивидуальности (или смысла) в ваше планирование. Тем временем разработчики и специалисты по Data Science оценят, что GraphQL Work Items API был дополнен фильтрами для дат, состояния и веса, что дает вам больше контроля над тем, какие запросы вы отправляете.

Плюс:

  • Переключение между типами рабочих элементов теперь полностью поддерживается.
  • Добавление новых дочерних элементов стало быстрее, а форма остается открытой после каждой отправки, чтобы вы могли продолжать работу.
  • Уведомления для учетных записей служб теперь можно настраивать с указанием конкретного адреса электронной почты для лучшей связи и ясности.
  • Страницы Wiki теперь поддерживают комментарии, превращая документацию в пространство для совместного обсуждения и обратной связи.

📦 Реестр пакетов

GitLab также продолжает совершенствовать управление зависимостями и защиту пакетов:

  • GitLab Dependency Proxy теперь поддерживает аутентификацию с Docker Hub, позволяя вам обходить ограничения скорости и получать доступ к приватным образам с легкостью. Настроить это можно непосредственно через GraphQL API.
  • Сканирование зависимостей расширило свой охват за счет поддержки менеджера пакетов pub (Dart).
  • Сканирование зависимостей также получило поддержку SBOM (Software Bill of Materials) в проектах, использующих Cargo, Conda, Cocoapods и Swift.
  • Операции с реестром пакетов теперь включают события аудита для отслеживания публикации или удаления пакетов, обеспечивая более наглядное представление о жизненном цикле.
  • Защита пакетов PyPI — это дополнительный уровень стабильности реестра. С помощью этой новой функции вы сможете защитить свои критически важные зависимости от непреднамеренных изменений.
  • Добавлена поддержка сканирования лицензий для пакетов Swift, что позволяет командам, использующим Swift в своих проектах, лучше отслеживать соблюдение требований.
  • В списке зависимостей в проекте теперь можно фильтровать по имени пакета с помощью фильтра Component, что упрощает поиск и управление конкретными зависимостями.

✅ Другие улучшения

С появлением бета-версии GitLab Query Language (GLQL) пользователи теперь могут создавать динамическое отслеживание работы в реальном времени прямо в существующих рабочих процессах, вставляя запросы к данным в блоки кода Markdown. Значительные улучшения коснулись и GitLab Flavored Markdown. В частности, обновленные возможности редактора и организация контента облегчают пользователям создание хорошо структурированной документации, включающей сложные формулы и высококачественные изображения.

Для тех, кто хочет отслеживать эффективность DevOps, GitLab представила новую визуализацию показателей DORA по проектам на панели Value Streams Dashboard. Панель метрик Projects by DORA дает представление о ключевых показателях эффективности, помогая командам оценивать и оптимизировать свои рабочие процессы с помощью данных. К слову об оценивании, отслеживание экспериментов с моделями машинного обучения стало общедоступным.

Интеграция проектов стала намного проще благодаря возможности управлять ими из группы с помощью REST API, а расширения рабочих пространств теперь поддерживают предлагаемые API, что позволяет разработчикам создавать еще более кастомизированную среду. GitLab также расширил свои предложения по раннерам: Linux для GitLab Dedicated теперь доступны в ограниченном количестве, а большие M2 Pro-раннеры на macOS доступны в бета-версии.

Кто мы

Cloudfresh — это GitLab Professional Services и Select Partner, которому доверяют команды по всему миру. Мы поможем быстро сделать так, чтобы GitLab работал на вас. От настройки и стратегии до практического обучения и прямых ответов — мы гарантируем, что вы действительно получите желаемую ценность во всех аспектах платформы, включая Duo (Enterprise) AI.

Нужна ясность? Мы объясним, почему, а не только как. Есть вопросы? Мы всегда готовы ответить. Хотите, чтобы ваша команда чувствовала себя уверенно при использовании GitLab? Мы поможем им в этом. Просто заполните короткую форму ниже, чтобы начать.

Дизайн
Cвяжитесь с Сloudfresh