Oracle Access Management Identity Federation Services를 사용한 Single Sign-On

Essbase 온프레미스에서 Oracle Access Management Identity Federation Services(FS)의 SSO(Single Sign-On)를 사용하도록 설정할 수 있습니다. WebLogic과 함께 SP(서비스 제공자)로 사용할 IDP(ID 제공자)로 Oracle Access Management Identity Federation을 구성하는 방법에 대해 설명합니다.

  • Federation Services가 사용으로 설정된 OAM(Oracle Access Manager) 환경이 있어야 합니다. OAM은 OUD, OID 또는 AD와 같은 LDAP 디렉토리와 통합됩니다. 여기서 OID는 OAM과 통합됩니다.
  • Essbase가 설치되어 있어야 합니다.
  • 다음 태스크는 Essbase가 Oracle Access Management Identity Federation Services를 사용하여 Single Sign-On을 사용하도록 하려면 제공된 순서대로 수행해야 합니다.

PART A - SP 구성에 대한 IDP 메타 데이터 가져오기

  1. OAM 콘솔에 로그인하고 Configuration(구성) > Available Services(사용 가능한 서비스)로 이동합니다.
  2. Identity Federation이 사용으로 설정되었는지 확인하거나 사용으로 설정합니다.
  3. 구성 > 설정 > 보기 > 페더레이션으로 이동합니다.
  4. IDP 메타데이터를 다운로드하려면 SAML 2.0 메타데이터 익스포트를 누릅니다.
  5. 이 파일을 사용하여 WebLogic에서 OAM을 IDP로 등록하려면 메타데이터 파일을 oam_fed_idp_metadata.xml로 저장합니다.
  6. oam_fed_idp_metadata.xml를 편집하고 <md:RoleDescriptor ... </md:RoleDescriptor 태그를 제거한 다음 파일을 저장합니다. 이 태그는 WebLogic에서 지원되지 않습니다.

PART B - WebLogic SP(서비스 공급자) 구성

  1. SSL을 사용으로 설정합니다.
    1. WebLogic 콘솔의 도메인 구조에서 환경 > 서버 > essbase_server1 > 구성 > 일반으로 이동합니다. Listen Port Enabled(수신 포트 사용) 확인란을 선택하고 관리 서버에 대한 포트 번호를 제공합니다.
    2. 관리 서버에서 프로토콜 HTTP에 대해 SSL을 사용으로 설정합니다. 도메인 구조에서 환경 > 서버 > essbase_server1 프로토콜 > HTTP로 이동합니다. SSL 수신 포트 사용 확인란을 선택하고 포트 번호를 제공합니다.
    3. 보안 영역 > myrealm > 구성 > 일반 탭으로 이동합니다. 보안 모델고급으로 설정합니다.
  2. WebLogic 관리 콘솔을 사용하여 ID 검증기를 생성합니다.
    1. WebLogic 콘솔에 로그인합니다.
    2. 홈 > 보안 영역 요약 > myrealm > 공급자로 이동합니다.
    3. 새 인증 제공자 생성을 누릅니다.
    4. 확인을 누릅니다.
    5. 제공자 이름을 SAML-IA로 입력하고 유형 SAML2IdentityAsserter를 선택합니다.
    6. 확인을 누릅니다.
  3. 새 SAMLAuthenticator 제공자를 생성합니다.
    1. 이동: 홈 > 보안 영역의 요약 > myrealm > 공급 업체.
    2. 새 인증 제공자 생성을 누릅니다.
    3. 확인을 누릅니다.
    4. 제공자 이름을 SAML-auth로 입력하고 SAMLAuthenticator 유형을 선택합니다.
    5. 확인을 누릅니다.
  4. 위 단계에서 만든 인증자에 대해 제어 플래그 값을 SUFFICIENT로 변경합니다.
    1. 이동: 홈 > 보안 영역 요약 > myrealm > 제공자 > SAML-auth.
    2. Configuration(구성) > Common(공통) 아래에서 Control Flag(제어 플래그)SUFFICIENT(충족)로 설정합니다.
    3. 저장을 누릅니다.
  5. 새 oid-auth 제공자를 생성합니다.
    1. 이동: 홈 > 보안 영역의 요약 > myrealm > 공급 업체.
    2. 새 인증 제공자 생성을 누릅니다.
    3. 확인을 누릅니다.
    4. 제공자 이름을 oid-auth로 입력하고 OracleInternetDirectoryAuthenticator 유형을 선택합니다.
    5. 확인을 누릅니다.
    6. 추가된 oid-auth Provider에 대해 제어 플래그SUFFICIENT로 변경하고 Save를 누릅니다.
  6. Provider Specific 탭을 선택하고 OID 서버 세부 정보를 입력합니다. OAM 콘솔 > User Identity Store 섹션에서 OID 서버 세부 정보를 가져옵니다.
    1. OAM 콘솔 구성 > 사용자 ID 저장소에서 OID 저장소를 누릅니다.
    2. oid-auth Provider의 Provider Specific 섹션에서 다음 절을 적절한 값으로 업데이트합니다.
      • Connection 섹션:
        • 호스트 입력: OID 서버의 호스트 이름
        • 주체: cn=orcladmin,cn=users,dc=us,dc=oracle,dc=com
        • Credential Confirm Credential: 인증서를 제공합니다.
      • 사용자: 기본 DN: cn=users,dc=us,dc=oracle,dc=com으로 제한합니다.
      • 그룹: 그룹 기본 DN: cn=groups,dc=us,dc=oracle,dc=com
      • 검색한 사용자 이름을 사용자로 사용: 확인
    3. 다른 필드의 기본값을 적용하고 모든 변경 사항을 저장합니다.
  7. 관리 서버에 대해 통합을 사용으로 설정합니다.
    1. 홈 > 환경 서버 > essbase_server1 > 구성 > 페더레이션 서비스로 이동합니다.
    2. SAML 2.0 서비스 제공자 탭에서 사용 옵션을 선택하고 기본 URL
      https://Essbase-Host:Essbase-Managed Server-SSL-Port/essbase/jet
      나머지 필드를 기본값으로 적용하고 저장합니다.
    3. IDP 구성에 대한 SP 메타데이터 가져오기: SAML 2.0 General(SAML 2.0 일반 사항) 탭에서 적절한 값을 제공하고 저장합니다.
    4. 변경사항이 저장되면 SP 메타데이터를 XML 파일(예: sp_metadata.xml)로 익스포트합니다.
    5. 메타 데이터 게시를 누릅니다.
  8. OAM 상자에서 복사된 oam_fed_idp_metadata.xml 파일을 사용하여 WebLogic에 IDP 파트너를 생성합니다.
    1. Security Realms > myrealm > Providers > Authentication > saml_IA > Management > New > New Web Single Sign-On Identity Provider Partner(예: WebSSO-IdP-Partner-oam)로 이동합니다.
    2. oam_fed_idp_metadata.xml file을 선택하고 확인을 누릅니다.
    3. IDP 파트너를 사용으로 설정하려면 WebSSO-IDP-Partner-oam을 누릅니다. 사용 체크박스를 선택하고 재지정 URL을 제공합니다.
  9. OAM 콘솔에서 IDP를 구성합니다.
    1. Federation > Identity Provider Management로 이동합니다.
    2. 서비스 제공자 파트너 생성을 누릅니다.
    3. 이름을 입력합니다.
    4. 파트너 사용이 선택되어 있는지 확인합니다.
    5. SAML 2.0을 프로토콜로 적용합니다(기본값).
    6. WebLogic(SP)에서 다운로드한 메타데이터 파일을 선택합니다.
    7. NameID 형식 설정을 지정합니다.
    8. NameID 형식으로 Unspecified를 선택합니다.
    9. 사용자 ID 저장소 속성을 NameID 값으로 선택합니다.
    10. 사용자 식별자를 포함하는 LDAP 사용자 레코드에 User Attribute를 입력합니다. Oracle Internet Directory는 사용자 데이터 저장소이고 속성은 uid입니다.
  10. $ORACLE_HOME/user_projects/domains/Essbase-Domain/bin/setDomainEnv.sh를 편집하고 아래와 같이 -DLOGOUT_URL to the JVM arg EXTRA_JAVA_PROPERTIES를 추가합니다.
    변경 전:
    EXTRA_JAVA_PROPERTIES="-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder ${EXTRA_JAVA_PROPERTIES}"
    변경 후:
    EXTRA_JAVA_PROPERTIES="-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder -DLOGOUT_URL=http://OAM-Host:OAM-Port/oam/server/logout ${EXTRA_JAVA_PROPERTIES}"

PART C - 역할 지정

OID 통합 후에는 내장된 LDAP 사용자(예: WebLogic)가 Essbase 인터페이스에 로그인할 수 없습니다. REST/MaxL 작업만 허용됩니다. 내장된 LDAP 관리 사용자를 사용하여 REST를 사용하여 OID 사용자에게 Essbase 역할을 지정합니다. OID 사용자는 역할 지정 후에만 Essbase에 로그인할 수 있습니다.

역할이 하나 이상의 OID 사용자(관리자)에게 지정되면 해당 OID 사용자는 Essbase에 로그인하여 인터페이스를 통해 다른 사용자에게 직접 역할을 지정할 수 있습니다.

여기에 표시된 REST 기반 지정 예: curl --insecure -X PUT -u weblogic:samplepass "http://host:9000/essbase/rest/v1/permissions/user1" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"links\": [ { \"rel\": \"string\", \"href\": \"string\", \"method\": \"string\", \"type\": \"string\" } ], \"id\": \"user1\", \"name\": \"user1\", \"role\": \"service_administrator\", \"group\": false}"

부품 D: 테스트 OAM FS Single Sign-On

Essbase 열기 및 실행
https://<essbase_vm>:<sslportno>/essbase/jet
요청이 OAM 통합 로그인 페이지로 재지정됩니다.

주:

로그아웃 문제가 있는 경우 로그아웃 작업을 완료하려면 브라우저를 닫습니다.