18.3. 인증 공급자 이해
인증 공급자는 사용자 ID(예: ID 공급자 또는 IDP)의 타사 소스에 연결하고, 사용자 ID를 가져오고, 해당 ID를 기반으로 토큰을 발행하며, 토큰을 RHACS(Red Hat Advanced Cluster Security for Kubernetes)로 반환합니다. 이 토큰을 사용하면 RHACS가 사용자에게 권한을 부여할 수 있습니다. RHACS는 사용자 인터페이스 및 API 호출 내에서 토큰을 사용합니다.
RHACS를 설치한 후 사용자에게 권한을 부여하려면 IDP를 설정해야 합니다.
OpenID Connect(OIDC)를 IDP로 사용하는 경우 RHACS는 사용자 ID 토큰 또는 UserInfo
끝점 응답에서 그룹
,이메일
,사용자
ID 및 이름과
같은 특정 클레임의 값을 검사하는 매핑 규칙에 의존합니다. 이러한 세부 정보가 없으면 매핑이 성공할 수 없으며 사용자가 필요한 리소스에 액세스할 수 없습니다. 따라서 IDP에서 사용자를 인증하는 데 필요한 클레임(예: 그룹
)이 IDP의 인증 응답에 포함되어 성공적으로 매핑할 수 있도록 해야 합니다.
추가 리소스
18.3.1. 클레임 매핑
클레임은 ID 공급자가 발급한 토큰 내부의 사용자에 대해 포함하는 데이터입니다.
클레임 매핑을 사용하여 RHACS가 IDP에서 수신한 클레임 속성을 RHACS 발급 토큰의 다른 속성으로 사용자 지정해야 하는지 여부를 지정할 수 있습니다. 클레임 매핑을 사용하지 않는 경우 RHACS는 RHACS 발급 토큰에 claim 속성을 포함하지 않습니다.
예를 들어, 사용자 ID의 역할에서
클레임 매핑을 사용하여 RHACS 발행 토큰의 그룹에
매핑할 수 있습니다.
RHACS는 모든 인증 공급자에 대해 다른 기본 클레임 매핑을 사용합니다.
18.3.1.1. OIDC 기본 클레임 매핑
다음 목록은 기본 OIDC 클레임 매핑을 제공합니다.
-
userid
로하위
-
이름
-
이메일
주소 -
그룹에
대한그룹
18.3.1.2. Auth0 기본 클레임 매핑
Auth0
기본 클레임 매핑은 OIDC 기본 클레임 매핑과 동일합니다.
18.3.1.3. SAML 2.0 기본 클레임 매핑
다음 목록은 SAML 2.0 기본 클레임 매핑에 적용됩니다.
-
subject.NameID
가userid
에 매핑됨 -
응답의 모든 SAML
AttributeStatement.Attribute
는 해당 이름에 매핑됩니다.
18.3.1.4. Google IAP 기본 클레임 매핑
다음 목록은 Google IAP 기본 클레임 매핑을 제공합니다.
-
userid
로하위
-
이메일
주소 -
hd
hd로hd
-
access_levels에 대한 Google.
access_levels
18.3.1.5. 사용자 인증서 기본 클레임 매핑
사용자 인증서는 타사 IDP와 통신하는 대신 사용자가 사용하는 인증서에서 사용자 정보를 가져오기 때문에 다른 모든 인증 공급자와 다릅니다.
사용자 인증서에 대한 기본 클레임 매핑은 다음과 같습니다.
-
userid
에CertFingerprint
-
제목
일반 이름 -
이메일 주소
-
제목
조직 단위 그룹
18.3.1.6. OpenShift Auth 기본 클레임 매핑
다음 목록은 OpenShift Auth 기본 클레임 매핑을 제공합니다.
-
그룹에
대한그룹
-
UID
touserid
-
이름
18.3.2. 규칙
사용자에게 권한을 부여하기 위해 RHACS는 사용자 ID의 그룹
,이메일
,사용자
ID와 같은 특정 클레임의 값을 검사하는 매핑 규칙에 의존합니다. 규칙을 사용하면 특정 값이 있는 속성이 있는 사용자를 특정 역할에 매핑할 수 있습니다. 예를 들어 규칙에는 다음이 포함될 수 있습니다.'key'는
email
,value
는 john@redhat.com
이며,역할은
Admin
입니다.
클레임이 누락된 경우 매핑이 성공할 수 없으며 사용자가 필요한 리소스에 액세스할 수 없습니다. 따라서 성공적인 매핑을 활성화하려면 IDP의 인증 응답에 사용자에게 권한을 부여하는 데 필요한 클레임(예: 그룹
)이 포함되어 있는지 확인해야 합니다.
18.3.3. 최소 액세스 역할
RHACS는 특정 인증 공급자가 발행한 RHACS 토큰이 있는 모든 호출자에 최소 액세스 역할을 할당합니다. 최소 액세스 역할은 기본적으로 None
으로 설정됩니다.
예를 들어 Analyst
의 최소 액세스 역할의 인증 공급자가 있다고 가정합니다. 이 경우 이 공급자를 사용하여 로그인하는 모든 사용자에게 Analyst
역할이 할당됩니다.
18.3.4. 필수 속성
필수 속성은 사용자 ID에 특정 값이 있는 속성이 있는지 여부에 따라 RHACS 토큰의 발행을 제한할 수 있습니다.
예를 들어 key is_internal
속성의 속성 값이 true
인 경우에만 토큰을 발행하도록 RHACS를 구성할 수 있습니다. 속성 is_internal
이 false
로 설정되거나 설정되지 않은 사용자는 토큰을 가져오지 않습니다.