MSAD Federation Services를 사용한 Single Sign-On

Essbase가 MSAD(Microsoft Active Directory) FS(Federation Services)의 SSO(Single Sign-On)를 사용하도록 설정할 수 있습니다.

  • Microsoft Active Directory를 사용하기 위해 WebLogic 통합의 지침에 따라 Essbase를 MSAD와 통합해야 합니다. 이 Single Sign-On 항목은 이미 필요 조건 WebLogic 통합에서 처리되었으므로 명시적 역할 지정이 필요하지 않습니다.
  • WebLogic 관리 서버 SSL을 사용으로 설정해야 하며, HTTPS URL만 보호할 수 있습니다. 이 작업은 다음 단계에 포함됩니다.
  • Essbase가 MSAD Federation Services를 사용하여 Single Sign-On을 사용하도록 설정하려면 다음 태스크를 제시된 순서대로 수행해야 합니다.

A부 - ADFS(Active Directory Federated Services) 실행 및 통합 메타데이터 XML 다운로드

  1. ADFS를 실행하는 Microsoft Windows 시스템에 연결하고 ADFS 관리 인터페이스를 시작합니다. 클라이언트 컴퓨터에 대한 SSO 액세스를 제공합니다. 실행 후 소스 시스템으로 돌아갑니다.
  2. Essbase 로컬 시스템에서 다음 샘플 링크를 사용하여 ADFS 메타데이터를 다운로드합니다.
    https://<ADFS_hostname>/federationmetadata/2007-06/federationmetadata.xml
    이 메타데이터는 ADFS와의 WebLogic 통합에 필요합니다.
  3. WebLogic에서 인식되지 않으므로 federationmetadata.xml를 편집하고 다음 태그를 제거합니다. 하위 태그를 포함한 전체 태그를 삭제합니다.
    • <ds:Signaturexmlns:ds="http://www.w3.org/2000/09/xmldsig#"> .......... </X509Data></KeyInfo></ds:Signature>
    • <RoleDescriptor xsi:type="fed:ApplicationServiceType" ........... </EndpointReference></fed:PassiveRequestorEndpoint></RoleDescriptor>
    • <RoleDescriptor xsi:type="fed:SecurityTokenServiceType" ........... </EndpointReference></fed:PassiveRequestorEndpoint></RoleDescriptor>
    • <SPSSODescriptor WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> ........... </SPSSODescriptor>

B부 - SP(서비스 제공자) SSO 구성

  1. SSL 사용:
    1. WebLogic 관리 콘솔에서 myrealm > Providers Summary of Environment > Summary of Servers > essbase_server1(Essbase 서버에 대한 설정 페이지)로 이동합니다.
    2. [구성] 탭 > [일반 사항] 탭에서 SSL 수신 포트 사용 확인란을 선택합니다.
    3. SSL 수신 포트를 지정합니다.
    4. 저장을 누릅니다.
    5. Protocols(프로토콜) > HTTP(HTTP) 탭으로 이동하고 프론트 엔드 호스트, HTTP 포트 및 HTTPS 포트 세부정보를 지정합니다.
    6. 변경 사항을 저장하고 활성화합니다.
  2. ID 검증기 생성:
    1. Security Realms > myrealm > Providers로 이동합니다.
    2. 잠금과 편집을 선택합니다.
    3. 새로 만들기를 누르고 saml_IA와 같은 새 SAML2IdentityAsserter를 생성합니다.
  3. 새 인증 제공자 생성:
    1. samauth와 같은 제공자 이름을 입력하여 새 제공자를 입력합니다.
    2. 새 제공자 유형(예: SAMLAuthenticator)을 선택하고 확인을 누릅니다.
    3. 새로 만든 공급자를 누르고 제어 플래그 값을 선택하여 충족으로 변경합니다.
    4. 변경사항을 저장합니다.
  4. myrealm > Providers 아래에서 제공자의 순서를 재지정합니다. 예:
    보안 인증 제공자 목록 이미지

  5. 모든 변경 사항을 눌러 WebLogic 관리 및 관리 서버를 활성화하고 재시작합니다.
  6. WebLogic이 다시 시작된 후 WebLogic 관리 콘솔에 로그인하고 환경 > 서버 > essbase_server1 > 통합 서비스 > SAML 2.0 서비스 제공자로 이동합니다.
  7. 잠금 및 편집을 누릅니다.
  8. 사용으로 설정됨을 선택합니다.
  9. 기본 URL 지정:
    https://<your-essbase-host>:<your Essbase SSL port>/essbase/jet/
    Preferred BindingPOST로 설정되었는지 확인하고 Save를 누릅니다.
  10. 서버 > essbase_server1 Federation Services > SAML 2.0 일반에서 다음 세부정보를 지정합니다.
    1. 담당자 세부정보 ADFS에 추가할 때는 다른 등록과 충돌해서는 안됩니다.
    2. 게시된 사이트 URL은
      https://<Managed_server_host>:<Managed_Server_SSL_Port>/saml2
    3. 개체 ID는 <wls_sp_for_adfs_hostname>입니다. ADFS에 추가할 때 고유한 이름을 지정하여 다른 등록과 충돌하지 않도록 해야 합니다.
  11. 변경사항 활성화를 누릅니다.
  12. 메타데이터 게시를 누르고 파일을 디렉토리에 저장합니다. 이 파일을 ADFS에 등록해야 합니다. spd.xml 파일을 ADFS가 있는 시스템에 복사합니다.
  13. WebLogic 서버에 ADFS를 등록하려면 다운로드된 federationmetadata.xml(STEP A에서 생성됨) 파일을 ADFS 시스템에서 WebLogic Server 시스템으로 복사합니다. WebLogic AdminServer에서 액세스할 수 있어야 합니다(예: /scratch/user/federationmetadata.xml).
  14. Security Realms myrealm Providers > Authentication > saml_IA Management > New > New Web Single Sign-On Identity Provider Partner로 이동합니다.
  15. WebSSO-IdP-Partner-0을 누르고 다음을 입력합니다.
    1. 설명: 이름과 동일한 값을 입력합니다.
    2. 재지정 URI 입력:
      
      /essbase/jet/*
      /essbase/smartview
      /essbase/smartview/*
      /essbase/smartview*
      /essbase/ui
  16. ./Oracle/domains/esscs/bin/setDomainEnv.sh를 편집하고 JVM 인수 EXTRA_JAVA_PROPERTIES: EXTRA_JAVA_PROPERTIES="<Extra_Java_Properties> -DLOGOUT_URL=https://MSAD-Host/adfs/ls/?wa=wsignout1.0" export <Extra_Java_Properties>-DLOGOUT_URL를 추가합니다.

    주의:

    Essbase 플랫폼에는 Essbase 기능의 환경 및 동작을 사용자정의할 수 있는 스크립트가 <DOMAIN HOME>/bin에 포함되어 있습니다. 그러나 이 도메인 환경이나 시작 스크립트를 변경하면 시작 실패를 비롯한 의도치 않은 효과가 발생할 수 있습니다. 오라클은 먼저 테스트 환경에서 변경할 것을 권장합니다. 이 스크립트를 편집하기 전에 항상 다음을 수행하십시오.

    1. <DOMAIN HOME>/esstools/bin/stop.sh(Linux) 또는 <DOMAIN HOME>\esstools\bin\stop.cmd(Windows)를 사용하여 Essbase 관리 서버를 중지합니다.

    2. <DOMAIN HOME>/bin에서 편집할 파일의 백업 복사본을 만듭니다. 예제

      Linux의 경우

      cp setStartupEnv.sh setStartupEnv_bak.sh

      Windows의 경우

      copy setStartupEnv.cmd setStartupEnv_bak.cmd
    3. 오라클의 문서화 지침만 사용하거나 오라클 고객지원센터와 협력하여 신중하게 편집하십시오.

    4. <DOMAIN HOME>/esstools/bin/start.sh(Linux) 또는 <DOMAIN HOME>\esstools\bin\start.cmd(Windows)를 사용하여 Essbase를 재시작합니다. 시작이 정상적으로 완료되었는지 확인합니다.

  17. 변경 사항을 활성화한 후 WebLogic AdminServer 및 관리 서버를 다시 시작합니다.

부품 C - ADFS IDP 구성

  1. ADFS 관리 인터페이스가 실행 중인 ADFS 시스템으로 이동합니다. Trust Relationships > Relying Party Trusts에서 마우스 오른쪽 버튼을 누르고 Add Relying Party Trust....를 실행합니다.
  2. 시작을 누릅니다.
  3. 파일에서 상대방에 대한 데이터 임포트 옵션에서 WebLogic에서 다운로드할 통합 메타데이터 파일 위치 spd.xml을 찾아서 다음을 누릅니다.
  4. 표시 이름을 지정하고 다음을 누릅니다.
  5. 다중 요소를 구성하지 않으려는 경우...를 선택하고 다음을 누릅니다.
  6. 기본 옵션에 동의하고 다음을 누릅니다.
  7. 클레임 규칙 편집 대화상자 열기... 체크 박스를 선택합니다.
  8. [클레임 규칙 편집] 대화상자에서 규칙 추가를 누릅니다.
  9. 규칙 템플리트 Send LDAP Attributes as Claims를 선택합니다.
  10. 다음을 입력합니다.
    1. 클레임 규칙 이름Name을 입력합니다.
    2. 속성 저장소: Active Directory를 선택합니다.
    3. LDAP 속성에서 SAM-Account-Name을 선택합니다.
    4. 발신 클레임 유형에서 Name ID을 선택합니다.
  11. 완료를 누릅니다.
  12. 마찬가지로 다른 규칙인 [클레임 규칙 이름: GivenName; 속성 저장소: Active Directory; LDAP 속성에서 Given-Name을 선택하고 [발신 클레임] 유형에서 Given Name을 선택하고 Finish를 누릅니다.
  13. 청구 규칙 편집 대화상자에서 적용을 누르고 닫습니다.
  14. 새로 추가된 릴레이 Party 트러스트를 두 번 클릭하고 고급 탭으로 이동합니다. 보안 해시 알고리즘(SHA-1)을 선택합니다.
  15. 끝점 > SAML 추가를 누르고 아래 표시된 세부 정보를 입력합니다.
    1. 끝점 유형: SAML 로그아웃
    2. 바인딩: POST
    3. 신뢰할 수 있는 URL: (형식:) https://host:port/adfs/ls/?wa=wsignout1.0
  16. 위의 B부 - SP(서비스 제공자) SSO 구성, 10c단계에서 입력한 엔티티 ID를 기록합니다. 그런 다음 전원 셸을 열고 다음 명령을 실행합니다.
    set-AdfsRelyingPartyTrust -targetIdentifier <Entity ID> -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None

    이제 설정이 완료되었습니다.

부품 D - 테스트 MSAD FS Single Sign-On

  1. HTTPS URL(예: HTTPS://host:port/essbase/jet)에서 Essbase를 실행합니다.
  2. Essbase 사용자 인터페이스의 오른쪽 상단 모서리에 MSAD 사용자가 표시됩니다.

    주:

    로그아웃한 후 브라우저 세션이 닫히고(삭제된 경우) 브라우저를 다시 시작하여 다른 사용자로 로그인합니다.