Skip to main content

GitHub Enterprise Server에서 GitHub 앱을 사용할 수 있도록 설정

GitHub Enterprise Server 인스턴스가 사용자의 GitHub App을 사용하려면 몇 가지 추가 단계를 수행해야 합니다.

GitHub Apps용 GitHub Enterprise Server 개발 정보

GitHub App을(를) 귀하가 속해 있지 않은 GitHub Enterprise Server 인스턴스의 조직에서 사용할 수 있도록 하려면 다음 단계를 수행해야 합니다.

귀하의 GitHub App가 귀하가 속해 있는 GitHub Enterprise Server 인스턴스의 조직에서만 사용되는 경우에는 이러한 단계가 필요하지 않습니다. 자세한 내용은 고유한 GitHub 앱 설치을(를) 참조하세요.

GitHub Enterprise Server 액세스가 중요하다면, 대신 GitHub Actions용 사용자 지정 작업이 요구 사항에 적합한지 고려하세요. GitHub Enterprise Server이(가) 있는 GitHub Connect 인스턴스에서 공개 작업을 사용할 수 있습니다. 자세한 내용은 을 참조 하세요.

각 GitHub Enterprise Server 인스턴스는 자체 인스턴스를 등록해야 합니다. GitHub App

GitHub Enterprise Server 인스턴스가 소유한 조직은 GitHub Apps 또는 다른 GitHub.com 인스턴스에 등록된 GitHub Enterprise Server를 설치할 수 없습니다. 대신 해당 인스턴스에서 사용하기 위해 자체 GitHub App 등록하고 설치해야 합니다.

  1. 앱 개발자는 매니페스트 또는 URL 매개 변수를 만듭니다. 자세한 내용은 매니페스트에서 GitHub 앱 등록URL 매개 변수를 사용하여 GitHub 앱 등록을(를) 참조하세요.

  2. 앱 개발자는 앱을 사용하려는 관리자와 GitHub Enterprise Server 매니페스트 또는 URL 매개 변수를 공유합니다. 동일한 매니페스트 또는 URL 매개 변수를 여러 GitHub Enterprise Server 인스턴스와 공유할 수 있습니다.

  3. 인스턴스의 조직 소유자는 매니페스트 또는 URL 매개변수를 사용하여 GitHub App를 등록합니다.

  4. 조직은 등록한 GitHub App를 설치합니다.

    선택적으로, 조직이 GitHub App을 공개한 경우 인스턴스 내의 다른 조직도 GitHub App을 설치할 수 있습니다. GitHub App를 전체 인스턴스에 설치하는 방법은 없으며, 인스턴스 내 조직에만 설치할 수 있습니다.

앱 코드는 인스턴스의 자격 증명에 GitHub App 액세스할 수 있어야 합니다.

앱의 코드에는 GitHub App 인스턴스가 등록한 GitHub Enterprise Server의 자격 증명이 필요합니다. 인스턴스의 호스트 이름도 필요합니다. 인스턴스에서 자격 증명 및 호스트 이름을 가져오거나 고객 호스트가 있고 GitHub Enterprise Server 자체 호스팅 가능한 버전의 앱을 관리하는 두 가지 옵션이 있습니다.

인스턴스에서 GitHub Enterprise Server 자격 증명 가져오기

인스턴스는 앱 개발자와 자격 GitHub App 증명 및 호스트 이름을 공유할 수 있습니다. 사이트 관리자는 앱 개발자를 신뢰하는 경우에만 이 작업을 수행해야 합니다. 그런 다음 앱 코드는 수행하는 작업에 따라 적절한 자격 증명을 사용할 수 있습니다. 앱 개발자는 적절한 자격 증명 집합을 사용하고 데이터가 유출되지 않도록 예방 조치를 취해야 합니다.

장점:

  • 앱 개발자는 앱이 실행되는 인프라를 제어합니다.
  • 앱 개발자는 앱 업데이트를 더 효과적으로 제어할 수 있습니다.
  • 앱 개발자는 앱 성능에 대해 더 많은 인사이트를 가질 수 있습니다.

단점:

  • 앱 개발자는 인스턴스에서 데이터가 유출되는 것을 방지하기 위해 예방 조치를 취해야 합니다.
  • 사이트 관리자는 애플리케이션이 인스턴스에 도달하기 위해 방화벽 예외를 열어야 할 수도 있지만, 그렇게 하기를 주저할 수도 있습니다.

고객이 GitHub Enterprise Server 앱의 자체 호스팅 버전을 호스팅하고 관리하도록 합니다.

앱 개발자는 자체 호스팅 가능한 버전의 앱을 제공할 수 있습니다. 그런 다음, 사이트 관리자는 앱 개발자의 설치 및 설치 지침에 따라 앱을 호스트할 수 있습니다.

자체 호스팅 가능 버전의 앱을 만들고 공유하는 방법은 앱 개발자에게 달려 있으며 앱에서 사용하는 기술에 따라 다릅니다.

장점:

  • 인스턴스가 앱 자격 증명을 공유하지 않으므로 더 안전하게 유지됩니다.
  • 앱 개발자는 인스턴스의 데이터 유출에 대해 걱정할 필요가 없습니다.

단점:

  • 앱 개발자는 사이트 관리자를 사용하여 앱에 대한 인프라를 제공하고 올바르게 설정합니다.
  • 앱 코드에 대한 업데이트를 릴리스하는 것이 더 복잡할 수 있습니다.
  • 앱 개발자가 앱 성능에 대한 가시성을 잃을 수 있습니다.

앱 코드는 올바른 URL을 사용해야 합니다.

GitHub Enterprise Server은 GitHub Free, GitHub Pro, GitHub Team, GitHub Enterprise Cloud와 다른 URL을 사용합니다. 인스턴스에서 작동하는지 GitHub Enterprise Server 여부에 따라 적절한 URL을 사용하도록 앱 코드를 업데이트해야 합니다. GitHub Enterprise Server 인스턴스의 호스트 이름으로 HOSTNAME을 바꾸십시오.

GitHub Free
GitHub Pro
GitHub Team
GitHub Enterprise Cloud
GitHub Enterprise Server
https://api.github.comhttps://HOSTNAME/api/v3
https://api.github.com/graphqlhttps://HOSTNAME/api/v3/graphql
https://github.com/login/oauth/authorizehttps://HOSTNAME/login/oauth/authorize
https://github.com/login/oauth/access_tokenhttps://HOSTNAME/login/oauth/access_token

앱 코드는 기능 차이점을 인식해야 합니다.

새 REST API 엔드포인트, GraphQL 객체 및 웹후크는 GitHub Enterprise Server, GitHub Free, GitHub Pro, GitHub Team보다 나중에 GitHub Enterprise Cloud에 제공됩니다. 또한 여러 버전의 GitHub Enterprise Server버전이 있으며 이전 버전에는 다른 REST API 엔드포인트, GraphQL 개체 및 웹후크가 있을 수 있습니다.

따라서 앱 코드는 이러한 차이점을 인식해야 합니다. API 응답 및 웹훅 페이로드에는 다루고 있는 버전을 확인하는 데 도움이 되도록 GitHub Enterprise Server 페이로드용 x-github-enterprise-version 헤더가 포함됩니다.

각 GitHub Enterprise Server 인스턴스는 속도 제한을 구성할 수 있습니다.

각 GitHub Enterprise Server 인스턴스는 자체 속도 제한을 구성할 수 있습니다. 앱이 속도 제한에 도달하고 있으며 이미 속도 제한을 유지하기 위해 예방 조치를 취하고 있는 경우 인스턴스 관리자 GitHub Enterprise Server 에게 문의해야 합니다.