앱에 대한 GitHub OAuth 2.0 자격 증명 - 인증 코드

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기5분
  • 인증 코드를 사용하여 GitHub Apps를 통합하려면 다음 단계를 수행합니다.

    시작하기 전에

    필요한 역할:
    • 에 oauth_admin.DevOps 변경 속도
    • GitHub관리자 계정 .
    주:
    사용자 수준 리포지토리만 지원됩니다. 인증 코드를 사용하여 구성 DevOps 변경 속도 하려는 모든 GitHub 리포지토리에 대한 액세스 권한이 있어야 합니다.

    OAuth 인증 코드 부여 유형은 MID 서버가 있는 GitHub 및 GitHub Enterprise에 대해 지원됩니다.

    GitHub 계정에서 앱 GitHub 구성(인증 코드)

    계정에서 사용자 지정 GitHub 앱을 GitHub 생성하여 인스턴스에서 OAuth 2.0 인증을 ServiceNow 활성화합니다.

    시작하기 전에

    GitHub 요구 사항: GitHub 앱과 통합하도록 구성된 앱 ServiceNow

    필요한 역할: 인스턴스 역할이 필요하지 않음

    이 태스크 정보

    계정에서 GitHub 이 단계를 완료합니다. 참조 건물 GitHub (개발자 사이트)에서 GitHub 사용자 지정 애플리케이션을 만들고 구성하는 방법에 대한 지침을 확인할 수 있습니다.

    프로시저

    1. GitHub 계정에서 다음으로 이동하여 앱을 생성합니다GitHub. 개발자 설정 > GitHub 앱.
    2. 홈페이지 URL 필드에 https://<instance-name>.service-now.com 을 입력합니다.
    3. 사용자 권한 부여 콜백 URL 필드에 https://<instance-name>.service-now.com/oauth_redirect.do 을 입력합니다.
    4. 사용자 식별 및 권한 부여 섹션에서 사용자 인증 토큰 만료 필드의 선택을 취소합니다.
    5. 웹후크 섹션에서 활성 필드를 선택 취소합니다.
    6. 나머지 필드는 비워 둡니다(기본값).
    7. 리포지토리 권한 섹션에서 다음 설정을 구성합니다.
      동작 읽기 전용
      검사 읽기 전용
      콘텐츠 읽기 전용
      배치 읽기 및 쓰기
      환경 읽기 전용
      메타데이터 읽기 전용
      끌어오기 요청 읽기 전용
      비밀 읽기 전용
      Webhooks 읽기 및 쓰기
      주:
      에서 ServiceNow웹후크를 구성하려면 읽기 및 쓰기 권한이 필요합니다.
    8. 나머지 권한은 접근 권한 없음 (기본값)으로 둡니다.
    9. 새로 만든 GitHub 앱을 선택한 계정에 설치합니다.

    DevOps 속성에 클라이언트 ID 추가

    GitHub 앱을 구성한 후에는 클라이언트 ID 접두사(ID의 처음 3자 이상)가 DevOps 속성: GitHub 앱에 대한 클라이언트 ID 지정자에 추가되었는지 확인해야 합니다.

    시작하기 전에

    필요한 역할: sn_devops.admin

    프로시저

    1. 다음으로 이동 작업 공간 > DevOps 변경 작업 공간 > 관리 > 시스템 구성 > 속성.
    2. 애플리케이션 범위를 DevOps Data Model로 변경합니다.
    3. GitHub 앱에 대한 클라이언트 ID 지정자 [sn_devops.github_oauth_client_id_specifier] 속성을 검색합니다.
    4. GitHub 앱의 클라이언트 ID 접두사(ID의 처음 3자 이상)를 속성에 입력합니다.
    5. 저장을 선택합니다.

    OAuth 제공자로 등록 GitHub (인증 코드)

    앱 계정 구성 중에 GitHub 생성된 정보를 사용하여 OAuth 공급자로 등록 GitHub 하고 인스턴스가 OAuth 2.0 토큰을 요청하도록 허용합니다.

    시작하기 전에

    필요한 역할: admin, sn_devops.admin

    프로시저

    1. 다음으로 이동 모두 > 시스템 OAuth > 애플리케이션 레지스트리.
    2. 새로 만들기를 클릭합니다.
      어떤 종류의 OAuth 애플리케이션입니까?
    3. 외부 공급업체 OAuth 제공자에 연결을 선택합니다.
      시스템에 빈 애플리케이션 레지스트리 양식이 표시됩니다.
    4. 양식을 작성합니다.
      필드 필요한 값
      이름 기록을 고유하게 식별하는 이름을 입력합니다. 예를 들어 내 GitHub 앱 공급자를 입력합니다.
      클라이언트 ID 앱의 클라이언트 ID GitHub 를 입력합니다(힌트: 앱 GitHub 구성의 정보 섹션에서 GitHub 사용 가능).
      클라이언트 비밀 앱의 클라이언트 암호를 GitHub 입력합니다(힌트: 의 GitHub 앱 구성 정보 섹션에서 GitHub 사용 가능).
      OAuth API 스크립트 OAuthDevOpsGitHubHandler를 선택합니다.
      기본 부여 유형 인증 코드를 선택합니다.
      인증 URL

      https://github.com/login/oauth/authorize 입력합니다.

      온-프레미스 배포의 경우 적절한 GitHub 호스트 URL을 사용합니다.

      토큰 URL

      https://github.com/login/oauth/access_token 입력합니다.

      온-프레미스 배포의 경우 적절한 GitHub 호스트 URL을 사용합니다.

    5. 나머지 양식 필드는 기본값으로 둡니다.
      애플리케이션 레지스트리 양식
    6. 양식 헤더를 마우스 오른쪽 버튼으로 클릭하고 저장을 클릭합니다.
      • 시스템은 OAuth 사용자 인증 정보의 유효성을 검사하고 리디렉션 URL 을 채웁니다(힌트: 이전에 앱 구성에서 제공된 사용자 인증 콜백 URL 과 일치해야 합니다 GitHub ).
      • 시스템은 인증 코드로 부여 유형을 사용하여 OAuth 엔터티 프로파일을채웁니다. 예를 들어 OAuth 엔터티 프로파일은 기본 이름내 GitHub 앱 공급자 default_profile 사용하여 생성됩니다.

    앱 제공자에 대한 GitHub 자격 증명 기록 생성(인증 코드)

    이전에 앱 제공자에게 GitHub 자격 증명 기록을 생성하여 작업을 승인합니다.

    시작하기 전에

    필요한 역할: admin, credential_admin

    프로시저

    1. 다음으로 이동 모두 > 연결 및 자격 증명 > 자격 증명.
    2. 새로 만들기를 클릭합니다.
      시스템에 '어떤 유형의 자격 증명을 작성하시겠습니까?' 메시지가 표시됩니다.
    3. OAuth 2.0 자격 증명을 선택합니다.
      팝업 창에 빈 OAuth 2.0 자격 증명 양식이 표시됩니다.
    4. 이 값을 입력합니다.
      필드 필요한 값
      이름 기록을 고유하게 식별하는 이름을 입력합니다. 예를 들어 내 GitHub 앱 자격 증명을 입력합니다.
      활성 사용
      OAuth 엔터티 프로파일 이전에 생성한 기본 OAuth 엔터티 프로파일을 선택합니다.
      적용 대상 이 자격 증명을 사용할 수 있는 MID Server를 선택합니다. 예를 들어 모든 MID Server를 선택합니다.
      주:
      이 자격 증명을 사용하려면 MID 서버를 사용하여 GitHub 도구 인스턴스에 연결해야 합니다.
      순서 이 자격 증명을 적용하는 순서를 선택하십시오. 예를 들어 100을 입력합니다.
    5. 레코드를 저장합니다.
    6. OAuth 토큰 가져오기 관련 링크를 클릭하여 OAuth 토큰을 생성합니다.