Skip to main content
Skip to content

GitHub 앱을 사용하여 Single Sign-On에 대한 자격 증명 권한 부여

엔터프라이즈 설치 GitHub App 에서 SSO(Single Sign-On) 권한 부여를 관리할 수 있도록 하여 여러 조직에 대한 자격 증명에 권한을 부여합니다.

누가 이 기능을 사용할 수 있나요?

Enterprise owners and users with the "Manage enterprise credentials" permission

GitHub App를 사용한 자격 증명 승인 정보

기본적으로 엔터프라이즈에서 설치된 GitHub Apps는 자격 증명을 인증할 수 없습니다. 엔터프라이즈 구성원이 개별 조직에 대해 동일한 자격 증명에 권한을 부여해야 하는 횟수를 줄이려면 앱이 기존 personal access tokens (classic) 또는 확인된 사용자 소유 SSH 인증 키에 권한을 부여하도록 허용할 수 있습니다. 요청당 최대 50개까지 선택된 조직이 허용됩니다.

GitHub App 없이 단일 조직에 자격 증명을 승인하려면 Single Sign-On에 사용할 개인용 액세스 토큰 권한 부여 또는 Single Sign-On에 사용할 SSH 키 권한 부여을 참조하세요.

사전 요구 사항

앱이 자격 증명에 권한을 부여하려면 먼저 다음 요구 사항을 충족해야 합니다.

  • 엔터프라이즈는 엔터프라이즈 수준 SSO를 사용해야 합니다.
  • 자격 증명 소유자는 앱이 자격 증명에 권한을 부여하는 모든 조직의 구성원이어야 합니다.

GitHub App 만들기

  1. 새 앱을 등록합니다. 지침은 GitHub 앱 등록을(를) 참조하세요. 앱은 다음을 수행해야 합니다.

    • 엔터프라이즈 또는 엔터프라이즈의 조직이 소유해야 합니다.
    • "엔터프라이즈 자격 증명" 권한에 대한 쓰기 권한이 있어야 합니다.
  2. 앱의 클라이언트 ID를 적어 둡니다. 그런 다음 프라이빗 키를 생성하고 안전하게 저장합니다. GitHub 앱에 대한 프라이빗 키 관리을(를) 참조하세요.

  3. 엔터프라이즈 계정에 앱을 설치합니다. 엔터프라이즈에 GitHub 앱 설치을(를) 참조하세요.

  4. 앱 설치 페이지의 URL에서 설치 ID를 기록해 둡니다. ID는 URL 끝에 있는 숫자 문자열입니다 /enterprises/ENTERPRISE/settings/installations/ID .

GitHub App가 자격 증명을 승인하도록 허용

  1. 귀하의 기업으로 이동하세요. 예를 들어 GitHub.com의 Enterprises 페이지에서.

  2. 설정에서 인증 보안을 클릭합니다.

  3. "자격 증명"에서 자격 증명에 권한을 부여하도록 허용 GitHub Apps 을 사용하도록 설정합니다.

설치 액세스 토큰 생성

앱은 엔터프라이즈 설치 액세스 토큰을 사용하여 API 요청을 인증해야 합니다. 조직 설치 액세스 토큰, 사용자 액세스 토큰은 personal access tokens 지원되지 않습니다.

설치 액세스 토큰을 생성하려면 다음을 수행합니다.

  1. 앱의 클라이언트 ID 및 프라이빗 키를 사용하여 JWT(JSON 웹 토큰)를 생성합니다. GitHub 앱에 대한 JWT(JSON 웹 토큰) 생성을(를) 참조하세요.
  2. JWT 및 엔터프라이즈 설치 ID를 사용하여 설치 액세스 토큰을 만듭니다. GitHub 앱에 대한 설치 액세스 토큰 생성을(를) 참조하세요.

설치 액세스 토큰은 앱에 부여된 엔터프라이즈 권한을 상속하고, 범위를 축소할 수 없으며, 1시간 후에 만료됩니다.

자격 증명 식별자 찾기

엔터프라이즈의 조직에 대해 이미 권한이 부여된 자격 증명의 경우 조직 소유자는 REST API를 사용하여 대량으로 식별자를 가져올 수 있습니다. 조직에 대한 REST API 엔드포인트을(를) 참조하세요.

응답에는 fingerprintauthorized_credential_id에 사용하거나, SSH 키에는 personal access token (classic)를 사용합니다. 해당 조직에 대한 자격 증명의 권한을 나타내는 credential_id를 사용하지 마세요.

이 엔드포인트는 조직에 대해 권한이 부여되지 않은 자격 증명을 반환하지 않습니다. 다른 자격 증명에 대한 식별자를 가져오려면 다음 방법 중 하나를 사용합니다.

  • personal access token (classic) 페이지에서 의 토큰을 엽니다. 토큰 ID는 URL의 끝에 있는 숫자입니다 /settings/tokens/ID . 또는 엔터프라이즈 감사 로그에 기록된 작업에 토큰을 사용한 경우 엔터프라이즈 소유자는 이벤트 token_id 필드에서 ID를 찾을 수 있습니다. ID는 해당 토큰으로 인증된 엔터프라이즈 표시 이벤트가 유지되는 동안에만 감사 로그에서 사용할 수 있습니다. 토큰 값이 아닌 ID를 공유합니다. 자세한 내용은 개인용 액세스 토큰 관리엔터프라이즈에 대한 감사 로그 검색을(를) 참조하세요.
  • SSH 키의 경우 확인된 사용자 소유 인증 키에 대한 SHA-256 지문을 찾습니다. 자세한 내용은 SSH 키 검토을(를) 참조하세요.

자격 증명 승인

REST API를 사용하여 선택한 조직에 대한 자격 증명에 권한을 부여합니다. 다음은 그 예입니다.

curl --request POST \
  --url "https://api.github.com/enterprises/ENTERPRISE/credential-authorizations" \
  --header "Accept: application/vnd.github+json" \
  --header "Authorization: Bearer INSTALLATION-ACCESS-TOKEN" \
  --header "X-GitHub-Api-Version: 2026-03-10" \
  --data '{
    "credential_id": 12345678,
    "credential_type": "classic_pat",
    "organizations": ["ORGANIZATION-1", "ORGANIZATION-2"]
  }'

INSTALLATION-ACCESS-TOKEN를 엔터프라이즈 슬러그로, ORGANIZATION-1를 설치 액세스 토큰으로, ORGANIZATION-2ENTERPRISE를 조직 슬러그로 바꾸세요. 12345678를 personal access token (classic)의 ID로 바꿉니다. 대신 SSH 키를 승인하려면 12345678를 키의 SHA-256 지문으로 바꾸고 classic_patssh_key로 바꾸세요.

자세한 내용은 엔터프라이즈 자격 증명 권한 부여를 위한 REST API 엔드포인트을(를) 참조하세요.

GitHub Apps로 자격 증명 권한 부여 비활성화

설정을 사용하지 않도록 설정하면 앱에서 새 자격 증명 권한 부여를 만들 수 없게 됩니다. 기존 권한 부여는 해지되거나, 자격 증명이 해지되거나 삭제되거나, 자격 증명 소유자가 조직의 멤버 자격을 잃을 때까지 활성 상태로 유지됩니다.

동일한 REST API를 사용하여 엔터프라이즈 위임을 통해 앱이 만든 권한 부여를 취소할 수 있습니다.