{"meta":{"title":"Аутентификация как приложение GitHub","intro":"Вы можете пройти проверку подлинности как GitHub App для создания маркера доступа к установке или управления приложением.","product":"Приложения","breadcrumbs":[{"href":"/ru/apps","title":"Приложения"},{"href":"/ru/apps/creating-github-apps","title":"Создание приложений на GitHub"},{"href":"/ru/apps/creating-github-apps/authenticating-with-a-github-app","title":"Проверка подлинности с помощью GitHub App"},{"href":"/ru/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app","title":"Проверка подлинности в качестве приложения"}],"documentType":"article"},"body":"# Аутентификация как приложение GitHub\n\nВы можете пройти проверку подлинности как GitHub App для создания маркера доступа к установке или управления приложением.\n\n## О проверке подлинности как GitHub App\n\nДля выполнения запросов REST API в качестве приложения необходимо пройти проверку подлинности как GitHub App. Например, если вы хотите использовать API для создания маркера доступа к установке для доступа к организации ресурсов, перечисления установок в учетных записях приложения или приостановке установки приложения, необходимо пройти проверку подлинности в качестве приложения.\n\nЕсли конечная точка REST API требует проверки подлинности в качестве приложения, документация по этой конечной точке указывает, что для доступа к конечной точке необходимо использовать JWT. API GraphQL не поддерживает какие-либо запросы или изменения, требующие проверки подлинности с помощью JWT.\n\n## Использование веб-маркера JSON (JWT) для проверки подлинности в виде GitHub App\n\n1. Создайте веб-токен JSON (JWT) для приложения. Дополнительные сведения см. в разделе [Генерация веб-токена JSON (JWT) для приложения GitHub](/ru/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-json-web-token-jwt-for-a-github-app).\n2. Включите JWT в `Authorization` заголовок запроса. В следующем примере замените `YOUR_JWT` JWT.\n\n   ```shell\n   curl --request GET \\\n   --url \"https://api.github.com/app/installations\" \\\n   --header \"Accept: application/vnd.github+json\" \\\n   --header \"Authorization: Bearer YOUR_JWT\" \\\n   --header \"X-GitHub-Api-Version: 2026-03-10\"\n   ```\n\n## Использование пакета SDK Octokit.js для проверки подлинности в виде GitHub App\n\nДля проверки подлинности как %}можно использовать пакет SDK Octokit.js %}. Одним из преимуществ использования пакета SDK для проверки подлинности является то, что вам не нужно создавать веб-токен JSON (JWT) самостоятельно. Кроме того, пакет SDK будет заботиться о повторном создании JWT после истечения срока его действия.\n\n> \\[!NOTE]\n> Чтобы использовать библиотеку Octokit.js, необходимо установить и импортировать `octokit` ее. В следующем примере используются инструкции импорта в соответствии с ES6. Дополнительные сведения о различных методах установки и импорта см[](https://github.com/octokit/octokit.js/#usage). в репозитории octokit/octokit.\n\n1. Получите идентификатор приложения. Идентификатор приложения можно найти на странице параметров для GitHub App. Дополнительные сведения о переходе на страницу параметров для GitHub Appсм. в разделе [Изменение регистрации приложения GitHub](/ru/apps/maintaining-github-apps/modifying-a-github-app-registration#navigating-to-your-github-app-settings).\n\n2. Создайте закрытый ключ. Дополнительные сведения см. в разделе [Управление приватными ключами для приложений GitHub](/ru/apps/creating-github-apps/authenticating-with-a-github-app/managing-private-keys-for-github-apps).\n\n3. Импорт `App` из `octokit`.\n\n   ```javascript copy\n   import { App } from \"octokit\";\n   ```\n\n4. Создайте новый экземпляр класса `App`. В следующем примере замените `APP_ID` ссылку на идентификатор приложения. Замените `PRIVATE_KEY` ссылкой на значение закрытого ключа приложения.\n\n   ```javascript copy\n    const app = new App({\n     appId: APP_ID,\n     privateKey: PRIVATE_KEY,\n   });\n   ```\n\n5. `octokit` Используйте метод для выполнения запроса к конечной точке REST API, требующей JWT. Например:\n\n   ```javascript copy\n   await app.octokit.request(\"/app\")\n   ```"}