7.9.4. OpenID Connect CR 샘플

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

사용자 정의 인증서 번들, 추가 범위, 추가 권한 부여 요청 매개변수 또는 userInfo URL을 지정해야 하는 경우 전체 OpenID Connect CR을 사용하십시오.

표준 OpenID Connect CR

apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
  name: cluster
spec:
  identityProviders:
  - name: oidcidp 1
    mappingMethod: claim 2
    type: OpenID
    openID:
      clientID: ... 3
      clientSecret: 4
        name: idp-secret
      claims: 5
        preferredUsername:
        - preferred_username
        name:
        - name
        email:
        - email
      issuer: https://www.idp-issuer.com 6

1
이 공급자 이름은 ID 클레임 값 앞에 접두어로 지정되어 ID 이름을 형성합니다. 리디렉션 URL을 빌드하는 데에도 사용됩니다.
2
이 공급자의 ID와 User 오브젝트 간 매핑 설정 방법을 제어합니다.
3
OpenID 공급자에 등록된 클라이언트의 클라이언트 ID. 클라이언트를 https://oauth-openshift.apps.<cluster_name>.<cluster_domain>/oauth2callback/<idp_provider_name>으로 리디렉션할 수 있어야 합니다.
4
클라이언트 시크릿이 포함된 OpenShift Container Platform Secret 오브젝트에 대한 참조입니다.
5
ID로 사용할 클레임 목록입니다. 비어 있지 않은 첫 번째 클레임이 사용됩니다. 클레임이 한 개 이상 있어야 합니다. 나열된 클레임에 값이 없으면 인증이 실패합니다. 예를 들어, 여기서는 반환된 id_tokensub 클레임 값을 사용자의 ID로 사용합니다.
6
OpenID 사양에 설명된 발행자 식별자입니다. 쿼리 또는 조각 구성 요소 없이 https를 사용해야 합니다.

전체 OpenID Connect CR

apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
  name: cluster
spec:
  identityProviders:
  - name: oidcidp
    mappingMethod: claim
    type: OpenID
    openID:
      clientID: ...
      clientSecret:
        name: idp-secret
      ca: 1
        name: ca-config-map
      extraScopes: 2
      - email
      - profile
      extraAuthorizeParameters: 3
        include_granted_scopes: "true"
      claims:
        preferredUsername: 4
        - preferred_username
        - email
        name: 5
        - nickname
        - given_name
        - name
        email: 6
        - custom_email_claim
        - email
      issuer: https://www.idp-issuer.com

1
선택 사항: OpenShift Container Platform ConfigMap에 대한 참조로, 구성된 URL에 대한 서버 인증서의 유효성 확인에 사용할 PEM 인코딩 인증 기관 번들이 포함됩니다.
2
권한 부여 토큰 요청 중 openid 범위 외에 요청할 선택적 범위 목록입니다.
3
권한 부여 토큰 요청에 추가할 추가 매개변수의 선택적 맵입니다.
4
이 ID에 대해 사용자를 프로비저닝할 때 기본 사용자 이름으로 사용할 클레임 목록입니다. 비어 있지 않은 첫 번째 클레임이 사용됩니다.
5
표시 이름으로 사용할 클레임 목록입니다. 비어 있지 않은 첫 번째 클레임이 사용됩니다.
6
이메일 주소로 사용할 클레임 목록입니다. 비어 있지 않은 첫 번째 클레임이 사용됩니다.

추가 리소스

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