Skip to main content

Авторизация приложений OAuth

Вы можете подключить удостоверение GitHub Enterprise Server к сторонним приложениям с помощью OAuth. При авторизации OAuth app следует убедиться в том, что вы доверяете приложению, проверить, кем оно разработано, и просмотреть типы сведений, к которым приложению требуется доступ.

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

Доступ к OAuth app

OAuth apps могут иметь доступ на чтение или запись к данным GitHub Enterprise Server.

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

Tip

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

Сведения об областях OAuth

Области — это именованные группы разрешений, которые OAuth app может запрашивать для доступа к открытым и закрытым данным.

Если необходимо использовать OAuth app в интеграции с GitHub Enterprise Server, это приложение сообщит требуемый тип доступа к данным. Если вы предоставляете доступ к приложению, приложение сможет выполнять действия от вашего имени, например чтение или изменение данных. Например, если вы хотите использовать приложение, которое запрашивает область действия user:email, приложение будет иметь доступ к частным адресам электронной почты только для чтения. Дополнительные сведения см. в разделе Области для приложений OAuth.

Note

В настоящее время невозможно ограничить доступ к исходному коду только для чтения.

Маркер имеет те же возможности для доступа к ресурсам и выполнения действий с этими ресурсами, которые владелец маркера имеет, и дополнительно ограничивается любыми областями или разрешениями, предоставленными маркеру. Маркер не может предоставить пользователю дополнительные возможности доступа. Например, приложение может создать маркер доступа, настроенный с admin:org помощью области, но если пользователь приложения не является владелец организации, приложение не будет предоставлять административный доступ к организации.

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

Типы запрашиваемых данных

OAuth apps могут запрашивать несколько типов данных.

Тип данныхDescription
Состояние фиксацииВы можете предоставить приложению доступ к сведениям о состоянии фиксации. Доступ к состоянию фиксации позволяет приложениям определять, была ли сборка для определенной фиксации выполнена успешно. У приложений не будет доступа к коду, но они смогут считывать сведения о состоянии определенной фиксации и записывать их.
РазвертыванияДоступ к состоянию развертывания позволяет приложениям определять, было ли развертывание для определенной фиксации в общедоступном или частном репозитории выполнено успешно. У приложений не будет доступа к коду.
GistДоступ к gist позволяет приложениям осуществлять как чтение из общедоступных и секретных gist, так и запись в них.
ОбработчикиДоступ к веб-перехватчикам позволяет приложениям считывать конфигурации перехватчиков в управляемых вами репозиториях и записывать их.
NotificationsДоступ к уведомлениям позволяет приложениям считывать уведомления GitHub Enterprise Server, например комментарии к проблемам и запросам на вытягивание. Однако приложения по-прежнему не имеют доступа к содержимому репозиториев.
Организации и группыДоступ к организации и командам позволяет приложениям получать доступ к организации и командам и управлять членством в них.
Личные данные пользователяДанные пользователя включают в себя сведения в профиле пользователя, такие как имя, адрес электронной почты и местонахождение.
РепозиторииСведения о репозитории включают в себя имена участников, созданные ветви и существующие файлы в репозитории. Приложения могут запрашивать доступ к общедоступным или частным репозиториям на уровне пользователя.
Удаление репозиторияПриложения могут запрашивать удаление управляемых вами репозиториев, но у них нет доступа к коду.

Запрос обновленных разрешений

Когда OAuth apps запрашивают новые права доступа, они уведомляют вас о различиях между текущими и новыми разрешениями.