13.3. ID 공급자 구성
OpenShift Container Platform은 동일한 ID 공급자에 대해 여러 LDAP 서버를 구성할 수 없습니다. 그러나 LDAP 페일오버 와 같은 더 복잡한 구성을 위해 기본 인증을 확장할 수 있습니다.
이러한 매개변수를 사용하여 설치 중 또는 설치 후 ID 공급자를 정의할 수 있습니다.
13.3.1. Ansible을 사용하여 ID 공급자 구성
초기 클러스터 설치의 경우 기본적으로 Deny All Identity 프로바이더가 구성되어 있지만, 인벤토리 파일에 openshift_master_identity_providers
매개변수를 구성하여 설치 중에 재정의할 수 있습니다. OAuth 구성의 세션 옵션은 인벤토리 파일에서도 구성할 수 있습니다.
Ansible을 사용한 ID 공급자 구성 예
# htpasswd auth openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}] # Defining htpasswd users #openshift_master_htpasswd_users={'user1': '<pre-hashed password>', 'user2': '<pre-hashed password>'} # or #openshift_master_htpasswd_file=/etc/origin/master/htpasswd # Allow all auth #openshift_master_identity_providers=[{'name': 'allow_all', 'login': 'true', 'challenge': 'true', 'kind': 'AllowAllPasswordIdentityProvider'}] # LDAP auth #openshift_master_identity_providers=[{'name': 'my_ldap_provider', 'challenge': 'true', 'login': 'true', 'kind': 'LDAPPasswordIdentityProvider', 'attributes': {'id': ['dn'], 'email': ['mail'], 'name': ['cn'], 'preferredUsername': ['uid']}, 'bindDN': '', 'bindPassword': '', 'insecure': 'false', 'url': 'ldap://ldap.example.com:389/ou=users,dc=example,dc=com?uid'}] # Configuring the ldap ca certificate 1 #openshift_master_ldap_ca=<ca text> # or #openshift_master_ldap_ca_file=<path to local ca file to use> 2 # Available variables for configuring certificates for other identity providers: #openshift_master_openid_ca #openshift_master_openid_ca_file 3 #openshift_master_request_header_ca #openshift_master_request_header_ca_file 4
- 1
- LDAP ID 공급자에 대해서만
openshift_master_identity_providers
매개변수에서 'insecure': 'true'
를 지정한 경우 CA 인증서를 생략할 수 있습니다. - 2 3 4
- 플레이북을 실행하는 호스트에서 파일을 지정하면 해당 콘텐츠가 /etc/origin/master/<identity_provider_name>_<identity_provider_type>_ca.crt 파일에 복사됩니다. ID 공급자 이름은
openshift_master_identity_providers
매개변수,ldap
,openid
또는request_header
의 값입니다. CA 텍스트 또는 로컬 CA 파일의 경로를 지정하지 않으면 이 위치에 CA 인증서를 배치해야 합니다. 여러 ID 공급자를 지정하는 경우 이 위치에 각 공급자에 대한 CA 인증서를 수동으로 배치해야 합니다. 이 위치를 변경할 수 없습니다.
여러 ID 공급자를 지정할 수 있습니다. 이 경우 각 ID 공급자의 CA 인증서를 /etc/origin/master/ 디렉터리에 배치해야 합니다. 예를 들어 openshift_master_identity_providers
값에 다음 공급자를 포함합니다.
openshift_master_identity_providers: - name: foo provider: kind: OpenIDIdentityProvider ... - name: bar provider: kind: OpenIDIdentityProvider ... - name: baz provider: kind: RequestHeaderIdentityProvider ...
해당 ID 공급자의 CA 인증서를 다음 파일에 배치해야 합니다.
- /etc/origin/master/foo_openid_ca.crt
- /etc/origin/master/bar_openid_ca.crt
- /etc/origin/master/baz_requestheader_ca.crt