7.6.5. GitHub CR 샘플

다음 CR(사용자 정의 리소스)에는 GitHub ID 공급자에 대한 매개변수 및 허용 가능한 값이 표시되어 있습니다.

GitHub CR

apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
  name: cluster
spec:
  identityProviders:
  - name: githubidp 1
    mappingMethod: claim 2
    type: GitHub
    github:
      ca: 3
        name: ca-config-map
      clientID: {...} 4
      clientSecret: 5
        name: github-secret
      hostname: ... 6
      organizations: 7
      - myorganization1
      - myorganization2
      teams: 8
      - myorganization1/team-a
      - myorganization2/team-b

1
이 공급자 이름은 GitHub 숫자 사용자 ID 앞에 접두어로 지정되어 ID 이름을 형성합니다. 콜백 URL을 빌드하는 데에도 사용됩니다.
2
이 공급자의 ID와 User 오브젝트 간 매핑 설정 방법을 제어합니다.
3
선택 사항: OpenShift Container Platform ConfigMap 오브젝트에 대한 참조로, 구성된 URL에 대한 서버 인증서의 유효성 확인에 사용할 PEM 인코딩 인증 기관 번들이 포함됩니다. 공개적으로 신뢰할 수 없는 루트 인증서가 있는 GitHub Enterprise에서만 사용됩니다.
4
등록된 GitHub OAuth 애플리케이션의 클라이언트 ID. 애플리케이션은 https://oauth-openshift.apps.<cluster-name>.<cluster-domain>/oauth2callback/<idp-provider-name>의 콜백 URL을 사용하여 구성해야 합니다.
5
OpenShift Container Platform Secret 오브젝트에 대한 참조로, GitHub에서 발행한 클라이언트 시크릿이 포함됩니다.
6
GitHub Enterprise의 경우 인스턴스의 호스트 이름(예 : example.com )을 제공해야 합니다. 이 값은 /setup/settings 파일의 GitHub Enterprise hostname 값과 일치해야 하며 포트 번호를 포함할 수 없습니다. 이 값을 설정하지 않으면 teams 또는 organizations을 정의해야 합니다. GitHub의 경우 이 매개변수를 생략합니다.
7
조직 목록. hostname 필드가 설정되어 있지 않거나 mappingMethodlookup으로 설정되어 있는 경우에는 organizations 또는 teams 필드를 설정해야 합니다. teams 필드와 함께 사용할 수 없습니다.
8
팀 목록. hostname 필드가 설정되어 있지 않거나 mappingMethodlookup으로 설정되어 있는 경우에는 teams 또는 organizations 필드를 설정해야 합니다. organizations 필드와 함께 사용할 수 없습니다.
참고

organizations 또는 teams가 지정된 경우 나열된 조직 중 하나 이상에 속하는 GitHub 사용자만 로그인할 수 있습니다. clientID에 구성된 GitHub OAuth 애플리케이션이 조직의 소유가 아닌 경우 조직 소유자가 이 옵션을 사용하려면 타사 액세스 권한을 부여해야 합니다. 이러한 작업은 조직 관리자가 GitHub를 처음 로그인하는 동안 또는 GitHub 조직 설정에서 수행할 수 있습니다.

추가 리소스

  • 모든 ID 공급자에 공통되는 mappingMethod와 같은 매개변수에 대한 자세한 내용은 ID 공급자 매개변수를 참조하십시오.