Сведения о подписи веб-фиксации
Если вы включите подписывание веб-фиксации, GitHub Enterprise Server будет автоматически использовать GPG для подписывания фиксаций, которые пользователи делают в веб-интерфейсе экземпляр GitHub Enterprise Server. У фиксаций, подписанных GitHub Enterprise Server, будет проверенное состояние. Дополнительные сведения см. в разделе Сведения о проверке подписи фиксации.
Можно включить подпись веб-фиксации, сменить закрытый ключ, используемый для подписи веб-фиксации, и отключить подпись веб-фиксации.
Включение подписи веб-фиксации
-
В административной оболочке создайте ключ PGP. Запишите адрес электронной почты и идентификатор ключа.
Shell gpg --full-generate-key --pinentry-mode=loopback
-
Используйте тип ключа по умолчанию и по крайней мере
4096
бит без истечения срока действия. -
Используйте
web-flow
в качестве имени пользователя. Еслиweb-flow
он недоступен или непригодный для использования, используйте любое новое уникальное имя пользователя. Используйте это имя пользователя на следующих шагах в этой статье. -
Если у вас есть адрес электронной почты, с которого вы не отвечаете на входящие сообщения, определенный в Консоль управления, используйте этот адрес. В противном случае используйте любой адрес электронной почты, например
web-flow@my-company.com
. Адрес электронной почты не обязательно должен быть действительным. -
Ключ PGP не может быть защищен парольной фразой. 1. Определите ключ как переменную среды для GitHub Enterprise Server, заменив
<YOUR-KEY-ID>
идентификатором ключа GPG.Shell ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a <YOUR-KEY-ID> | awk '{printf "%s\\n", $0}')" ``` 1. Обновите параметры для службы подписывания фиксаций GitHub Enterprise Server.
Shell sudo consul-template -once -template /etc/consul-templates/etc/nomad-jobs/gpgverify/gpgverify.hcl.ctmpl:/etc/nomad-jobs/gpgverify/gpgverify.hcl nomad job run /etc/nomad-jobs/gpgverify/gpgverify.hcl
-
-
Включите о подпись веб-фиксации.
Shell ghe-config app.github.web-commit-signing-enabled true
-
Примените конфигурацию, а затем дождитесь завершения настройки.
Shell ghe-config-apply
-
Создайте нового пользователя в экземпляр GitHub Enterprise Server с помощью встроенной проверки подлинности или внешней проверки подлинности. Дополнительные сведения см. в разделе Сведения о проверке подлинности для вашей организации.
- Имя пользователя должно совпадать с именем пользователя, которое использовалось при создании ключа PGP на шаге 1 выше, например
web-flow
. - Адрес электронной почты пользователя должен совпадать с адресом, который использовался при создании ключа PGP. 1. Выполните следующую команду, заменив KEY-ID идентификатором ключа PGP.
Shell gpg --armor --export KEY-ID
- Имя пользователя должно совпадать с именем пользователя, которое использовалось при создании ключа PGP на шаге 1 выше, например
-
Скопируйте ключ PGP, начиная с
-----BEGIN PGP PUBLIC KEY BLOCK-----
и заканчивая-----END PGP PUBLIC KEY BLOCK-----
. -
Войдите в GitHub Enterprise Server как пользователь, созданный для подписывания веб-фиксации, например
web-flow
. -
Добавьте открытый ключ PGP в профиль пользователя. Дополнительные сведения см. в разделе Добавление ключа GPG в учетную запись GitHub.
Примечание. Не удаляйте другие открытые ключи из списка ключей GPG. Если открытый ключ удален, все фиксации, подписанные соответствующим закрытым ключом, больше не будут помечены как проверенные.
-
Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта. 1. На боковой панели Администратор сайта щелкните Консоль управления.
-
На боковой панели "Параметры" щелкните Email.
-
В разделе "Адрес электронной почты без ответа" введите тот же адрес электронной почты, который использовался при создании ключа PGP.
Примечание: Поле "Адрес электронной почты без ответа" отображается только в том случае, если вы включили электронную почту для экземпляр GitHub Enterprise Server. Дополнительные сведения см. в разделе Настройка электронной почты для получения уведомлений.
Примечание. Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простою, заметному для пользователей.
-
Подождите завершения запуска конфигурации.
Смена закрытого ключа, используемого для подписи веб-фиксации
-
В административной оболочке создайте ключ PGP. Запишите адрес электронной почты и идентификатор ключа.
Shell gpg --full-generate-key --pinentry-mode=loopback
-
Используйте тип ключа по умолчанию и по крайней мере
4096
бит без истечения срока действия. -
Используйте имя пользователя подписывания веб-фиксации, например
web-flow
. -
Используйте адрес электронной почты без ответа, определенный в Консоль управления, который должен совпадать с адресом электронной почты пользователя, подписывающего веб-фиксацию, например
web-flow
. -
Ключ PGP не может быть защищен парольной фразой. 1. Определите ключ как переменную среды для GitHub Enterprise Server, заменив
<YOUR-KEY-ID>
идентификатором ключа GPG.Shell ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a <YOUR-KEY-ID> | awk '{printf "%s\\n", $0}')" ``` 1. Обновите параметры для службы подписывания фиксаций GitHub Enterprise Server.
Shell sudo consul-template -once -template /etc/consul-templates/etc/nomad-jobs/gpgverify/gpgverify.hcl.ctmpl:/etc/nomad-jobs/gpgverify/gpgverify.hcl nomad job run /etc/nomad-jobs/gpgverify/gpgverify.hcl ``` 1. Выполните следующую команду, заменив KEY-ID идентификатором ключа PGP. ```bash{:copy} gpg --armor --export KEY-ID
-
-
Скопируйте ключ PGP, начиная с
-----BEGIN PGP PUBLIC KEY BLOCK-----
и заканчивая-----END PGP PUBLIC KEY BLOCK-----
. -
Войдите в GitHub Enterprise Server как пользователь, созданный для подписывания веб-фиксации, например
web-flow
. -
Добавьте открытый ключ PGP в профиль пользователя. Дополнительные сведения см. в разделе Добавление ключа GPG в учетную запись GitHub.
Примечание. Не удаляйте другие открытые ключи из списка ключей GPG. Если открытый ключ удален, все фиксации, подписанные соответствующим закрытым ключом, больше не будут помечены как проверенные.
Выключение подписи веб-фиксации
Вы можете отключить подписывание веб-фиксации для экземпляр GitHub Enterprise Server.
-
В административной оболочке выполните следующую команду.
Shell ghe-config app.github.web-commit-signing-enabled false
-
Примените конфигурацию.
Shell ghe-config-apply