5.2. Red Hat Single Sign-On을 사용하여 서비스 레지스트리 인증 및 권한 부여 구성
이 섹션에서는 Red Hat Single Sign-On을 사용하여 서비스 레지스트리에 대한 인증 및 권한 부여 옵션을 수동으로 구성하는 방법을 설명합니다.
또는 이러한 설정을 자동으로 구성하는 방법에 대한 자세한 내용은 5.1절. “Red Hat Single Sign-On Operator를 사용하여 서비스 레지스트리 보안” 을 참조하십시오.
OIDC(OpenID Connect)를 사용하여 OAuth 기반 Red Hat Single Sign-On을 사용하여 서비스 레지스트리 웹 콘솔 및 코어 REST API에 대한 인증을 활성화할 수 있습니다. 동일한 Red Hat Single Sign-On 영역과 사용자는 OpenID Connect를 사용하여 Service Registry 웹 콘솔과 코어 REST API 전체에 페더레이션되어 하나의 자격 증명 세트만 있으면 됩니다.
서비스 레지스트리는 기본 admin, write 및 읽기 전용 사용자 역할에 대한 역할 기반 권한 부여를 제공합니다. 서비스 레지스트리는 레지스트리 아티팩트의 작성자만 업데이트하거나 삭제할 수 있는 스키마 또는 API 수준에서 콘텐츠 기반 권한 부여를 제공합니다. 서비스 레지스트리 인증 및 권한 부여 설정은 기본적으로 비활성화되어 있습니다.
사전 요구 사항
- Red Hat Single Sign-On이 설치되어 실행 중입니다. 자세한 내용은 Red Hat Single Sign-On 사용자 설명서를 참조하십시오.
- 서비스 레지스트리가 설치되어 실행 중입니다.
절차
-
Red Hat Single Sign-On 관리 콘솔에서 서비스 레지스트리용 Red Hat Single Sign-On 영역을 생성합니다. 기본적으로 서비스 레지스트리에는
레지스트리
의 영역 이름이 필요합니다. 영역 생성에 대한 자세한 내용은 Red Hat Single Sign-On 사용자 설명서를 참조하십시오. 서비스 레지스트리 API에 사용할 Red Hat Single Sign-On 클라이언트를 생성합니다. 기본적으로 서비스 레지스트리에는 다음 설정이 필요합니다.
-
클라이언트 ID:
registry-api
-
클라이언트 프로토콜:
openid-connect
액세스 유형:
베어러 전용
다른 클라이언트 설정에 기본값을 사용할 수 있습니다.
참고Red Hat Single Sign-On 서비스 계정을 사용하는 경우
bearer-only
대신 클라이언트 액세스 유형을기밀로
유지해야 합니다.
-
클라이언트 ID:
서비스 레지스트리 웹 콘솔의 Red Hat Single Sign-On 클라이언트를 생성합니다. 기본적으로 서비스 레지스트리에는 다음 설정이 필요합니다.
-
클라이언트 ID:
apicurio-registry
-
클라이언트 프로토콜:
openid-connect
-
액세스 유형:
public
-
유효한 리디렉션 URL:
http://my-registry-url:8080/*
웹 출처:
+
다른 클라이언트 설정에 기본값을 사용할 수 있습니다.
-
클라이언트 ID:
OpenShift의 서비스 레지스트리 배포에서 Red Hat Single Sign-On을 사용하여 인증을 구성하려면 다음 서비스 레지스트리 환경 변수를 설정합니다.
Expand 표 5.2. 서비스 레지스트리 인증 구성 환경 변수 설명 유형 Default AUTH_ENABLED
true
로 설정하면 이어지는 환경 변수가 필요합니다.문자열
false
KEYCLOAK_URL
사용할 Red Hat Single Sign-On 인증 서버의 URL입니다.
/auth
로 끝나야 합니다.문자열
없음
KEYCLOAK_REALM
인증에 사용되는 Red Hat Single Sign-On 영역입니다.
문자열
레지스트리
KEYCLOAK_API_CLIENT_ID
서비스 레지스트리 REST API의 클라이언트 ID입니다.
문자열
registry-api
KEYCLOAK_UI_CLIENT_ID
서비스 레지스트리 웹 콘솔의 클라이언트 ID입니다.
문자열
apicurio-registry
작은 정보OpenShift에서 환경 변수를 설정하는 예는 6.1절. “OpenShift에서 서비스 레지스트리 상태 점검 구성” 을 참조하십시오.
Red Hat Single Sign-On에서 서비스 레지스트리 사용자 역할을 활성화하려면 다음 옵션을
true
로 설정합니다.Expand 표 5.3. 서비스 레지스트리 역할 기반 권한 부여 구성 환경 변수 Java 시스템 속성 유형 기본값 ROLE_BASED_AUTHZ_ENABLED
registry.auth.role-based-authorization
부울
false
Service Registry 사용자 역할이 활성화된 경우 서비스 레지스트리 사용자를 Red Hat Single Sign-On 영역에서 다음 기본 사용자 역할 중 하나에 할당해야 합니다.
Expand 표 5.4. 레지스트리 인증 및 권한 부여에 대한 기본 사용자 역할 Role 아티팩트 읽기 아티팩트 쓰기 글로벌 규칙 요약 sr-admin
제공됨
제공됨
제공됨
모든 생성, 읽기, 업데이트 및 삭제 작업에 대한 전체 액세스 권한
sr-developer
제공됨
제공됨
없음
글로벌 규칙 구성을 제외하고 생성, 읽기, 업데이트 및 삭제 작업에 액세스할 수 있습니다. 이 역할은 아티팩트 규칙을 구성할 수 있습니다.
sr-readonly
제공됨
없음
없음
읽기 및 검색 작업만 액세스할 수 있습니다. 이 역할은 규칙을 구성할 수 없습니다.
서비스 레지스트리의 스키마 및 API 아티팩트에 대한 업데이트에 대한 소유자 전용 권한 부여를 활성화하려면 다음을
true
로 설정합니다.Expand 표 5.5. 소유자 전용 권한 부여 구성 환경 변수 Java 시스템 속성 유형 기본값 REGISTRY_AUTH_OBAC_ENABLED
registry.auth.owner-only-authorization
부울
false