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

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기5분
  • 권한 부여 코드를 사용하여 GitHub Apps을(를) 통합하려면 다음 단계를 수행합니다.

    시작하기 전에

    필요한 역할:
    • 에서 DevOps 변경 속도oauth_admin.
    • GitHub관리자 계정.
    주:
    사용자 수준 리포지토리만 지원됩니다. 인증 코드를 사용하여 구성 DevOps 변경 속도 하려는 모든 GitHub 리포지토리에 대한 액세스 권한이 있어야 합니다.
    주:
    GitHub Enterprise Server(온-프레미스 인스턴스)의 경우 MID 서버를 사용하여 연결하는 경우 OAuth가 지원되지 않습니다.

    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. 리포지토리 권한 섹션에서 이러한 설정을 구성합니다.
      작업 읽기 전용
      검사 읽기 전용
      컨텐츠 읽기 전용
      배치 읽기 및 쓰기
      환경 읽기 전용
      메타데이터 읽기 전용
      끌어오기 요청 읽기 전용
      비밀 읽기 전용
      Webhook 읽기 및 쓰기
      주:
      에서 웹후크를 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 을 채웁니다(힌트: 이전에 앱 구성에 제공된 사용자 승인 콜백 URLGitHub 일치해야 함).
      • 시스템은 부여 유형인증 코드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 토큰을 생성합니다.