29.5. RH-SSO 서버를 사용하여 서비스 검색 구성(Keycloak)
시스템 관리자로서 OpenShift용 Red Hat Single Sign-On 을 사용하여 3scale을 개별적으로 인증하고 권한을 부여하도록 허용합니다.
OpenShift의 권한 부여 게이트웨이로 RH-SSO 배포를 사용하도록 OpenShift를 구성하는 방법은 이 워크플로우 를 참조하십시오.
사전 요구 사항
- OpenShift 클러스터(버전 3.11 이상)에 3scale 2.12를 배포해야 합니다.
- 3scale을 OpenShift에 배포하려면 3scale-amp-openshift-templates 를 사용해야 합니다.
- 3scale에서 Service Discovery를 사용하려는 3scale 사용자는 OpenShift 클러스터에 액세스할 수 있어야 합니다.
절차
Red Hat OAuth 서버(Keycloak)에서 3scale의 OAuth 클라이언트를 만듭니다.
참고클라이언트 구성에서 OpenShift가 계정을 연결할 수 있도록
사용자 이름이
preferred_username
에 매핑되는지 확인합니다.3scale 서비스 검색 설정을 편집합니다.
$ oc project <3scale-project> $ oc edit configmap system
다음 설정이 구성되어 있는지 확인합니다. 여기서
'<the-client-secret-from-Keycloak>
은 OAuth 클라이언트를 생성할 때 Keycloak이 자동으로 생성되는 값입니다.service_discovery.yml: production: enabled: true authentication_method: oauth oauth_server_type: rh_sso client_id: '3scale' client_secret: '<the-client-secret-from-Keycloak>'
사용자에게 검색 가능한 서비스가 포함된 클러스터 프로젝트를 볼 수 있는 적절한 권한이 있는지 확인합니다.
예를 들어
<
보기 권한을 부여하려면 다음 명령을 사용합니다.namespace> 프로젝트에 대한 <user
>oc adm policy add-role-to-user view <user> -n <namespace>
-
configmap
을 수정한 후에는system-app 및
Pod를 재배포하여 변경 사항을 적용해야 합니다.system-
sidekiq
추가 리소스
- 토큰 수명: 기본적으로 세션 토큰은 Keycloak - 세션 및 토큰 시간 제한에 표시된 대로 1분 후에 만료됩니다. 그러나 시간 제한을 1일의 허용 가능한 값으로 설정하는 것이 좋습니다.