Примечание.
Соблюдение лицензий с открытым исходным кодом находится в Публичный предварительный просмотр норме и может измениться.
Обзор
Соответствие лицензий Open source помогает отслеживать лицензии зависимостей и применять политику для открытый код программного обеспечения в вашей цепочке поставок. Вы можете использовать соответствие лицензии для снижения юридических и операционных рисков, выявляя несоответствующие зависимости до слияния изменений.
Как работает политика лицензирования
Вы можете определить корпоративную или организационную политику, которая контролирует, какие лицензии могут использовать.
Вы можете указывать лицензии либо из встроенного списка, или, если лицензия отсутствует, вручную добавив идентификатор лицензии SPDX.
Ваша политика применяется в сфере деятельности предприятия, организации и репозитория. Вы также можете добавлять исключения для пакетов или лицензий, когда Enterprise Open Source License Manager одобряет запросы.
Оценка лицензий использует данные зависимостей из ваших репозиториев, включая транзитивные зависимости, обнаруженные в графе зависимостей.
Как работает исполнение запросов на pull
Соблюдение лицензий с открытым исходным кодом обеспечивается через наборы правил ветков. Когда pull-запрос меняет пакет, он GitHub сравнивает изменения зависимостей между базовой и пулл-запросной ветками, оценивает обнаруженные лицензии по политике и сообщает о нарушениях.
Если в активном режиме есть набор правил, использующий условие «Требуется результаты соответствия лицензии перед слиянием», pull requests, вводящие несоответствующие зависимости, блокируются до устранения нарушений. Набор правил режима Evaluate с таким условием запускает проверки лицензий и аннотирует pull-запрос, но не блокирует слияния.
Кроме того, правило защиты ветки , требующее разрешения комментариев перед слиянием, будет отслеживать аннотации из проверок лицензии, так что даже оповещения, генерируемые наборами правил Оценки , подпадают под защиту.
Где появляются результаты
Если лицензия на зависимость не указана в вашей политике, результаты будут отображаться в аннотациях pull request. Аннотации не генерируют автоматический запрос на исключение, поскольку разработчик может решить изменить свой код, чтобы избежать несоответствующей зависимости. Если они действительно хотят использовать зависимость, GitHub они запросят разработчика дополнительную информацию, а затем отправят запрос на закрытие менеджерам корпоративных Open Source License Managers, которые имеют разрешение на изменение политики.
Для менеджеров корпоративных лицензий с открытым исходным кодом ожидающие запросы на исключения доступны в обзорах корпоративной безопасности и отправляются в виде уведомлений по электронной почте.
Область действия и модель управления
Вы можете создавать политику в корпоративном масштабе для общего базового плана, а затем наложить исключения, специфичные для репозитория, где это необходимо.
Для крупных предприятий распространённая закономерность:
- Определите широкую политику централизованно
- Назначить роль менеджера корпоративных лицензий с открытым исходным кодом проверяющим политики
- Используйте пользовательское свойство репозитория, чтобы классифицировать репозитории как неактивные, оценочные или активные
- Используйте наборы правил, которые нацелены на пользовательские значения свойств, чтобы контролировать режим применения через репозиторий
Разработчики с правом записи могут просматривать эффективную политику и исключения для репозитория на странице настроек лицензионной политики репозитория.
Дальнейшие действия
Сведения о начале работы см. в разделе Настройка политик лицензий открытый код.
Дополнительные сведения о наборах правил см. в разделе Сведения о наборе правил.