SSO(싱글 사인온)로 인증
SUSE Multi-Linux Manager는 SAML(Security Assertion Markup Language) 2 프로토콜을 구현하여 SSO(싱글 사인온)를 지원합니다.
싱글 사인온은 사용자가 하나의 자격 증명으로 여러 응용 프로그램에 접근할 수 있도록 하는 인증 프로세스입니다. SAML은 인증 및 권한 부여 데이터를 교환하기 위한 XML 기반 표준입니다. SAML 아이덴티티 서비스 제공자(IdP)는 SUSE Multi-Linux Manager과 같은 서비스 제공자(SP)에 인증 및 권한 부여 서비스를 제공합니다. SUSE Multi-Linux Manager는 싱글 사인온을 위해 활성화해야 하는 세 가지 엔드포인트를 노출합니다.
SUSE Multi-Linux Manager의 SSO는 다음을 지원합니다:
-
SSO로 로그인합니다.
-
서비스 제공자 시작 싱글 로그아웃(SLO) 및 ID 서비스 제공자 싱글 로그아웃 서비스(SLS)로 로그아웃합니다.
-
어설션 및 nameID 암호화.
-
어설션 서명.
-
AuthNRequest, LogoutRequest 및 LogoutResponses 포함 메시지 서명.
-
어설션 소비자 서비스 엔드포인트를 활성화합니다.
-
싱글 로그아웃 서비스 엔드포인트를 활성화합니다.
-
SP 메타데이터(서명 가능한)를 게시합니다.
SUSE Multi-Linux Manager의 SSO는 다음을 지원하지 않습니다:
-
ID 서비스 제공자(IdP)를 위한 제품 선택 및 구현.
-
기타 제품에 대한 SAML 지원(해당 제품 설명서 확인).
SSO의 예제 구현은 예시 SSO 구현을 참조하십시오.
|
기본 인증 방법에서 싱글 사인온으로 변경하면 새로운 SSO 자격 증명은 Web UI에만 적용됩니다.
|
1. 전제 조건
시작하기 전에 이러한 매개변수로 외부 아이덴티티 서비스 제공자를 구성해야 합니다. 지침은 IdP 문서를 확인하십시오.
|
IdP 사용자와 SUSE Multi-Linux Manager 사용자 간의 매핑은 SAML:Attribute에 지정됩니다. SAML:Attribute는 IdP에서 구성되어야 하며 SAML 인증에서 SUSE Multi-Linux Manager로 전달되어야 합니다. 속성은 `uid`라는 이름을 가져야 하며 로그인 후 매핑된 SUSE Multi-Linux Manager 사용자를 포함해야 합니다. 싱글 사인온을 활성화하기 전에 SUSE Multi-Linux Manager 사용자를 생성해야 합니다. |
필요한 엔드포인트는 다음과 같습니다.
-
어설션 소비자 서비스(또는 ACS): 서비스 제공자에 대한 세션을 연결하기 위해 SAML 메시지를 수락하는 엔드포인트입니다. SUSE Multi-Linux Manager의 ACS 엔드포인트는 다음과 같습니다: https://server.example.com/rhn/manager/sso/acs
-
싱글 로그아웃 서비스(또는 SLS): IdP에서 로그아웃 요청을 시작하는 엔드포인트입니다. SUSE Multi-Linux Manager의 SLS 엔드포인트는 다음과 같습니다: https://server.example.com/rhn/manager/sso/sls
-
메타데이터: SAML에 대한 SUSE Multi-Linux Manager 메타데이터를 검색하기 위한 엔드포인트입니다. SUSE Multi-Linux Manager의 메타데이터 엔드포인트는: https://server.example.com/rhn/manager/sso/metadata입니다.
orgadmin 사용자를 사용한 IdP 인증에 성공하면, SUSE Multi-Linux Manager에 orgadmin 사용자가 존재하는 경우 SUSE Multi-Linux Manager에 orgadmin 사용자로 로그인됩니다.
2. SSO 사용
|
SSO 사용은 다른 유형의 인증과 상호 배타적이며, 활성화 또는 비활성화됩니다. SSO는 기본적으로 비활성화되어 있습니다. |
|
서버 컨테이너 내에서 단계를 실행하기 전에 `mgrctl term`를 사용하십시오. |
-
아직 사용자가 SUSE Multi-Linux Manager에 존재하지 않는 경우, 먼저 생성해야 합니다.
-
`/etc/rhn/rhn.conf`을(를) 편집하고 파일 끝에 이 줄을 추가하십시오.
java.sso = true
-
`/usr/share/rhn/config-defaults/rhn_java_sso.conf`에서 사용자 정의하려는 매개변수를 찾으십시오. 사용자 정의하려는 매개변수를 `/etc/rhn/rhn.conf`에 삽입하고 `java.sso`를 접두사로 붙이십시오. 예를 들어, `/usr/share/rhn/config-defaults/rhn_java_sso.conf`에서 다음을 찾으십시오:
onelogin.saml2.sp.assertion_consumer_service.url = https://YOUR-PRODUCT-HOSTNAME-OR-IP/rhn/manager/sso/acs
사용자 정의하려면 `/etc/rhn/rhn.conf`에서 옵션 이름에 `java.sso.`를 접두사로 붙여 해당 옵션을 생성합니다.
java.sso.onelogin.saml2.sp.assertion_consumer_service.url = https://YOUR-PRODUCT-HOSTNAME-OR-IP/rhn/manager/sso/acs
변경해야 할 모든 항목을 찾으려면 파일에서
YOUR-PRODUCT및YOUR-IDP-ENTITY자리 표시자를 검색하십시오. 모든 파라미터에는 그 용도에 대한 간단한 설명이 포함되어 있습니다. -
Spacewalk 서비스를 다시 시작하여 변경 사항을 적용합니다.
mgradm restart
SUSE Multi-Linux Manager URL을 방문하면 SSO를 위해 IdP로 리디렉션되며, 인증을 요청받습니다. 인증에 성공하면, SUSE Multi-Linux Manager Web UI로 리디렉션되며, 인증된 사용자로 로그인됩니다. SSO를 사용하여 로그인하는 데 문제가 발생하면, SUSE Multi-Linux Manager 로그를 확인하여 추가 정보를 얻으십시오.