Skip to main content

О связанных артефактах

Это linked artifacts page помогает вам проводить аудит и расставлять приоритеты построений GitHubвашей организации, независимо от того, где хранятся артефакты.

Он linked artifacts page предоставляет единый вид программных артефактов, с помощью которых ваша организация строит GitHub Actions, таких как изображения контейнеров, пакеты или сборки вашего производственного кода.

На странице показано, как артефакт был создан, где он хранится или выполняется, а также какие метаданные соответствия и безопасности связаны с этим артефактом.

Команды вашей организации могут использовать данные из следующих linked artifacts page целей:

  • Приоритизируйте оповещения от GitHub Advanced Security функций в зависимости от того, работают ли обнаруженные уязвимости в продакшене или находятся ли в интернете
  • Быстро соединяйте артефакты с деталями сборки, местами хранения и командами владельцев
  • Соблюдайте требования, экспортируя проверяемые доказательства происхождения и целостности ваших артефактов
  • Найдите репозитории, связанные с развернутым артефактом, и нацеливайте их в наборы правил ветвей

Какие артефакты отображаются на linked artifacts page?

Это linked artifacts page уникально для каждой организации. Он содержит метаданные для артефактов, которые были собраны GitHub Actions в репозиториях вашей организации. Он not отображает артефакты, которые ваша организация использует из других источников, например, открытый код зависимости.

Записи об артефактах загружаются вашей организацией либо с помощью публичного API, либо интеграции с внешним реестром. Файлы linked artifacts page артефактов сами по себе не сохраняются. Он просто предоставляет авторитетный источник метаданных, связанных с каждым артефактом.

Поскольку артефакт не обязательно сохранять GitHub для появления в linked artifacts page, вы можете использовать linked artifacts page его вместе с выбранным вами реестром посылок, например, JFrog Artifactory или GitHub Packages.

Какие метаданные включены?

Он linked artifacts page объединяет данные из двух различных типов записей: записей хранения и записей развертывания. Эти записи загружаются с помощью различных API или интеграций.

Записи хранения

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

Скриншот страницы артефакта. Выделенные поля: реестр хранилища, репозиторий артефактов, репозиторий исходного кода.

Хранилище артефактов не является обязательным. Он относится к понятию репозитория в определённых внешних реестрах пакетов: места, где можно сгруппировать несколько пакетов. В отличие от этого, исходный репозиторий относится GitHub к репозиторию, где построен артефакт. Исходный репозиторий обязателен и обнаруживается автоматически, если артефакт имеет подтверждение происхождения сборки.

Для получения дополнительной информации о аттестациях и уровнях SLSA см. Аттестации артефактов.

Рекорды развертывания

Записи развертывания включают среду, в которой развёртывается артефакт, и любые риски во время выполнения (такие как «чувствительные данные» или «обнаружение интернета»), связанные с артефактом.

Скриншот страницы артефакта. Выделенные поля: список «Развертывания», включая теги для «Prod», «чувствительные данные» и «pacific-east».

Примечание.

Записи о развертывании не включают активность развертывания из панели управления развертывания репозитория, которая поступает из другого источника. См . раздел AUTOTITLE.

Где доступны данные об артефактах?

Помимо доступности на linked artifacts page самом артефакте, метаданные артефактов интегрируются в поверхности политики и безопасности на GitHub. Команды могут использовать эти данные для принятия политических решений или приоритизации вопросов безопасности. Например, они могут:

  • Используйте deployed фильтры deployable для поиска репозиториев или целевых репозиториев в правилах организации и предприятия. См . раздел AUTOTITLE.
  • Фильтруйте кампании безопасности, code scanning оповещения и Dependabot оповещения по риску во время выполнения. См . раздел AUTOTITLE.
  • Рассматривайте риски во время выполнения как атрибуты отдельных code scanning и Dependabot оповещений.

Как это linked artifacts page вписывается в мои процессы?

Этот пример рабочего процесса показывает, как он linked artifacts page интегрируется с другими GitHub функциями и внешними системами.

  1. Разработчик фиксирует код в GitHub репозитории, где определяется код программного пакета.

  2. Рабочий процесс в репозитории автоматически:GitHub Actions

    1. Создаёт пакет.
    2. Отправляет пакет в выбранный вами реестр, например GitHub Packages JFrog Artifactory.
    3. Создаёт криптографически подписанное подтверждение происхождения, связывающее пакет с репозиторием, коммитом и рабочим процессом, используемыми для создания пакета.
    4. Развёртывает пакет в стадинг или продакшн-среду. Ваша система развертывания может быть закрыта так, чтобы в продакшн можно было развернуть только подтверждённые артефакты, например, с помощью Kubernetes Admissions Controller.
  3. Метаданные пакета, такие как его связанный репозиторий, аттестации и история развертывания, загружаются в linked artifacts page.

  4. Используя данные из linked artifacts page, руководитель безопасности сортирует сканирование кода и оповещения Dependabot, а также создает кампанию для устранения оповещений, влияющих на производственные среды или несут специфический риск во время выполнения.

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

Дальнейшие шаги

Чтобы добавить записи в вашу организацию linked artifacts page, смотрите Загрузка данных хранения и развертывания в linked artifacts page.

Чтобы увидеть linked artifacts page информацию о вашей организации, смотрите Аудит построек вашей организации на linked artifacts page.