7.5.4. 요청 헤더 CR 샘플

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

요청 헤더 CR

apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
  name: cluster
spec:
  identityProviders:
  - name: requestheaderidp 1
    mappingMethod: claim 2
    type: RequestHeader
    requestHeader:
      challengeURL: "https://www.example.com/challenging-proxy/oauth/authorize?${query}" 3
      loginURL: "https://www.example.com/login-proxy/oauth/authorize?${query}" 4
      ca: 5
        name: ca-config-map
      clientCommonNames: 6
      - my-auth-proxy
      headers: 7
      - X-Remote-User
      - SSO-User
      emailHeaders: 8
      - X-Remote-User-Email
      nameHeaders: 9
      - X-Remote-User-Display-Name
      preferredUsernameHeaders: 10
      - X-Remote-User-Login

1
이 공급자 이름은 요청 헤더에서 사용자 이름 앞에 접두어로 지정되어 ID 이름을 형성합니다.
2
이 공급자의 ID와 User 오브젝트 간 매핑 설정 방법을 제어합니다.
3
선택 사항: 인증되지 않은 /oauth/authorize 요청을 리디렉션할 URL로, 브라우저 기반 클라이언트를 인증한 다음 해당 요청을 https://<namespace_route>/oauth/authorize로 프록시합니다. OAuth 승인 flows가 제대로 작동하려면 https://<namespace_route>/oauth/authorize로 프록시되는 URL이 /authorize(후행 슬래시 없음)로 끝나야 하며 프록시 하위 경로도 마찬가지입니다. ${url}은 현재 URL로 교체되며 쿼리 매개변수에서 안전하도록 이스케이프됩니다. ${query}는 현재 쿼리 문자열로 교체됩니다. 이 속성이 정의되어 있지 않으면 loginURL을 사용해야 합니다.
4
선택 사항: 인증되지 않은 /oauth/authorize 요청을 리디렉션하는 URL로, WWW-Authenticate 요청을 예상하는 클라이언트를 인증한 다음 https://<namespace_route>/oauth/authorize로 프록시합니다. ${url}은 현재 URL로 교체되며 쿼리 매개변수에서 안전하도록 이스케이프됩니다. ${query}는 현재 쿼리 문자열로 교체됩니다. 이 속성이 정의되지 않은 경우 challengeURL을 사용해야 합니다.
5
PEM 인코딩 인증서 번들이 포함된 OpenShift Container Platform ConfigMap 오브젝트에 대한 참조입니다. 원격 서버에서 제공하는 TLS 인증서의 유효성을 확인하는 신뢰 앵커로 사용됩니다.
중요

OpenShift Container Platform 4.1부터는 이 ID 공급자에 ca 필드가 있어야 합니다. 이는 프록시에서 상호 TLS를 지원해야 함을 의미합니다.

6
선택 사항: 공통 이름(cn) 목록. 설정된 경우 요청 헤더에서 사용자 이름을 확인하기 전에 지정된 목록에 공통 이름(cn)이 있는 유효한 클라이언트 인증서를 제공해야 합니다. 비어 있는 경우 모든 공통 이름이 허용됩니다. ca와 함께만 사용할 수 있습니다.
7
사용자 ID에 대해 순서대로 확인할 헤더 이름입니다. 값을 포함하는 첫 번째 헤더가 ID로 사용됩니다. 필수 항목이며 대소문자를 구분하지 않습니다.
8
이메일 주소를 순서대로 확인할 헤더 이름입니다. 값을 포함하는 첫 번째 헤더가 이메일 주소로 사용됩니다. 선택 항목이며 대소문자를 구분하지 않습니다.
9
표시 이름을 순서대로 확인할 헤더 이름입니다. 값을 포함하는 첫 번째 헤더가 표시 이름으로 사용됩니다. 선택 항목이며 대소문자를 구분하지 않습니다.
10
headers에 지정된 헤더에서 결정된 불변 ID와 다른 경우, 기본 사용자 이름을 순서대로 확인하는 헤더 이름입니다. 값이 포 된 첫 번째 헤더는 프로비저닝시 기본 사용자 이름으로 사용됩니다. 선택 항목이며 대소문자를 구분하지 않습니다.

추가 리소스