Документация

Безопасность и развертывание

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

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

Место выполнения работы агентов

Каждая задача выполняется в собственном изолированном облачном рабочем пространстве. Это рабочее пространство создается для конкретной задачи и удаляется после ее завершения. Агенты могут считывать и записывать данные только из репозитория, открытого в этом пространстве.

Существует три зоны:

ЗонаВладелецЧто в ней размещено
Рабочее пространство агентаCoroidИнструменты для проверки исходного кода, сборки и тестирования одной задачи. Создаются для каждой задачи и удаляются после ее завершения.
Плоскость управленияCoroidПланирование, спецификации, подтверждения и цепочка решений. В ней хранятся учетные данные проекта в зашифрованном виде.
Ваша сеть и производственная средаВыНедоступно из рабочего пространства агента.
  1. Рабочее пространство агентовУправляется CoroidИнструменты для проверки исходного кода, сборки и тестирования для одной задачи.
  2. Плоскость управленияУправляется CoroidПланирование, спецификации, подтверждения и цепочка принятия решений. Учётные данные хранятся в зашифрованном виде.
  3. Ваша сеть и продакшн-средаВашеНе требуется расширение IDE, локальный агент или доступ к сети.

Рабочее пространство агента не может получить доступ к вашей сети или продакшену.

Единственный способ выйти — это pull request, решение о его объединении принимаете вы.

Для каждой задачи создаётся отдельное рабочее пространство, которое удаляется после завершения работы. Результатом становится только pull request, а дальнейший процесс развёртывания контролируете вы.

Результат работы агентов выходит из рабочего пространства в виде pull request. Ваша команда решает, стоит ли его объединять с основным кодом, а затем ваш собственный путь развертывания использует полученный результат. Для работы Coroid не требуются расширение IDE, локальные агенты или доступ к вашей частной сети.

Идентификация и доступ

Аутентификация централизованно осуществляется через шлюз. Поддерживаются следующие режимы:

  • Сессии пользователей на основе JWT для доступа к порталу
  • Токены между сервисами с управляемой ротацией
  • Ключи API для внешних интеграций
  • Механизмы защиты конечных точек с различными типами доступа: пользовательского, сервисного и смешанного

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

Владельцы и администраторы организации управляют участниками, сессиями и потоком событий безопасности в разделе Настройки → Идентификация и доступ. Решение SSO/SAML с поддержкой SCIM входит в состав тарифа Enterprise, который находится на закрытом этапе предварительного просмотра.

Защита данных

  • Данные шифруются при передаче и хранении.
  • Учетные данные вашей организации, такие как ключи провайдеров, токены репозиториев и другие секреты интеграций, шифруются с использованием ключа данных, принадлежащего вашей организации. Служба управления ключами шифрует этот ключ данных отдельно. Расшифровать их может только брокер учетных данных Coroid, при этом каждый случай использования фиксируется. См. Ключи провайдера.
  • Секреты собственной конфигурации Coroid хранятся в зашифрованном виде.
  • Облачный сервис предлагает профиль размещения в ЕС для команд с требованиями к GDPR или локализации данных. Только для ЕС Профиль AI обеспечивает выполнение вычислений модели на провайдерах, размещенных в ЕС. Подробнее Профили AI.
  • Вы контролируете срок хранения истории выполнения, расшифровок и артефактов. Подробнее Хранение данных.

Цепочка принятия решений

Каждое автономное изменение описывается на языке, привычном для рецензентов и команд по безопасности:

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

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

Операции в продакшн-среде

  • Генерация SBOM и сканирование образов контейнеров в процессе непрерывной интеграции
  • Публичные эндпоинты только по протоколу HTTPS с завершением TLS
  • Автоматизированные снимки базы данных и инструкции по восстановлению
  • Мониторинг и оповещения по метрикам, логам и ошибкам

Варианты развертывания

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

РежимДоступностьГде он работает
ОблакоДоступно для широкого использованияУправляется Coroid, с возможностью выбора профиля размещения в ЕС
Корпоративное облакоЗакрытая предварительная версияУправляется Coroid, с выделенной мощностью, поддержкой SSO/SAML, SCIM и экспортом аудита
ЛокальноЗакрытая предварительная версияВаша инфраструктура с использованием Docker Compose или Kubernetes

Локально

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

  • Docker Compose Подходит для установок на одном сервере и пилотных проектов. Постоянные тома хранят базу данных, репозитории и логи.
  • Kubernetes Подходит для установок на нескольких серверах и с автоматическим масштабированием. Helm управляет сервисами приложения, рабочих процессов, синхронизации и выполнения, а также работает с управляемыми или самостоятельно размещаемыми экземплярами PostgreSQL и объектными хранилищами.
  • Ограниченные сети Могут использовать стратегии работы с моделями и зависимостями в автономном режиме, самостоятельно размещаемые системы управления секретами и внутренний протокол TLS.

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

Сертификаты

Coroid в настоящее время не имеет отчета SOC 2 или других сторонних сертификатов безопасности. SOC 2 — это цель готовности. Мы не будем называть тот или иной контроль сертифицированным, пока это не подтвердится.