임베딩된 Oracle Analytics 콘텐츠를 포함하는 애플리케이션 또는 웹 페이지에 인증 추가

이 섹션의 항목에서는 포함된 Oracle Analytics 콘텐츠를 가진 웹 애플리케이션 또는 포털 웹 페이지에 인증 방법을 추가합니다.

임베딩된 Oracle Analytics 콘텐츠에서 로그인 프롬프트 인증 사용

로그인 프롬프트 인증은 웹 애플리케이션 또는 포털 웹 페이지에 임베딩된 Oracle Analytics 콘텐츠에 대한 기본 인증 방법입니다.

사용자가 임베딩된 분석 콘텐츠에 액세스하면 데이터 확인을 위해 로그인 이름 및 비밀번호를 입력해야 하는 로그인 화면이 표시됩니다. Oracle Analytics와 웹 애플리케이션 또는 포털 웹 페이지 간에 공통 ID 관리가 없으면 사용자가 임베딩된 분석 콘텐츠를 가진 웹 애플리케이션 또는 포털 웹 페이지에 이미 로그인한 경우에도 사용자에게 이 로그인 화면이 표시됩니다.

로그인 프롬프트 인증 메시지 사용자정의

<oracle-dv> 태그에 속성을 추가하여 로그인 프롬프트 인증 메시지를 사용자정의합니다. 다음 속성이 지원됩니다.

  • auth-message-prefix: 로그인 메시지에 대한 접두어 텍스트를 지정합니다. 기본값은 "Oracle Analytics"입니다.

  • auth-message-link: 로그인 링크에 대한 텍스트를 지정합니다. 기본값은 "Login"입니다.

  • auth-message-suffix: 로그인 메시지에 대한 접미어 텍스트를 지정합니다. 기본값은 "Required"입니다.

  • auth-needed-message: 인증 필요 메시지에 대한 텍스트를 지정합니다. 기본값은 "Requires Authentication"입니다.

  • auth-message-prefix-small: 로그인 메시지에 대한 접두어 텍스트를 지정합니다. 기본값은 "Oracle Analytics"입니다. 포함된 컨테이너 크기가 215픽셀보다 작은 경우에만 적용할 수 있습니다.

  • auth-message-link-small: 로그인 링크에 대한 텍스트를 지정합니다. 기본값은 "Login"입니다. 포함된 컨테이너 크기가 215픽셀보다 작은 경우에만 적용할 수 있습니다.

  • auth-message-suffix-small: 로그인 메시지에 대한 접미어 텍스트를 지정합니다. 기본값은 빈 문자열입니다. 포함된 컨테이너 크기가 215픽셀보다 작은 경우에만 적용할 수 있습니다.

  • auth-needed-message-small: 인증 필요 메시지에 대한 텍스트를 지정합니다. 기본값은 "Requires Authentication"입니다. 포함된 컨테이너 크기가 160픽셀보다 작은 경우에만 적용할 수 있습니다.

임베딩된 Oracle Analytics 콘텐츠에서 3단계 OAuth 인증 사용

이미 고유의 인증 방법을 사용하는 포털 또는 웹 애플리케이션에 Oracle Analytics 콘텐츠를 포함할 때는 3단계 OAuth 인증 방법을 사용합니다.

매끄러운 사용자 환경을 위해 사용자정의 웹 페이지와 Oracle Analytics는 동일한 인증 제공자를 사용해야 합니다. 따라서 타사 웹 애플리케이션의 경우 Oracle Analytics와 동일한 Oracle Cloud 인증 제공자(즉, 동일한 Oracle Identity Cloud Service 인스턴스 또는 Oracle Cloud Infrastructure IAM(Identity and Access Management) ID 도메인)를 사용해야 합니다. 또는 Oracle Analytics를 타사 인증 제공자에 통합해야 합니다. 

적절한 인증이 가능하도록 모든 서버 요청에 대해 3단계 OAuth 매개변수를 지정해야 합니다.

  1. embedding.js 스크립트 참조에서 IDCS_OAUTH3LEGGED 매개변수를 true로 설정합니다.
  2. setSecurityConfig 함수를 사용하여 애플리케이션의 보안 구성 유형을 oauth_3legged로 지정합니다.

여기서 project-path는 워크북의 저장소 경로를 지정합니다.

<!DOCTYPE html>
<html dir="ltr">
    <head>
        <script src=""https://<instance>.analytics.ocp.oraclecloud.com/public/dv/v1/embedding/<embedding_method>/embedding.js?IDCS_OAUTH3LEGGED=true" type="application/javascript">
        </script>
    </head>
    <body>
        <div style="position: absolute; width: calc(100% - 40px); height: calc(100% - 120px)" >
            <oracle-dv project-path="/Shared Folders/Embed/Embed Samples">
            </oracle-dv>
        </div>
    <script>
      requirejs(['jquery', 'knockout', 'obitech-application/application', 'ojs/ojcore', 'ojs/ojknockout', 'ojs/ojcomposite', 'jet-composites/oracle-dv/loader'], function($, ko, application) {
      application.setSecurityConfig("oauth_3legged");
      ko.applyBindings();
      });
     </script>
    </body>
</html>

임베딩된 Oracle Analytics 콘텐츠에서 토큰 인증 사용

백그라운드에서 Oracle Analytics에 대한 인증을 수행할 때 3단계 OAuth를 사용하지 않으려는 경우 토큰 인증 방법을 사용합니다.

적절한 토큰 인증이 가능하도록 HTML 페이지를 업데이트합니다. 토큰 생성 방법에 대한 자세한 내용은 Oracle Cloud에서 권한 부여 보안을(를) 참조하십시오.

  1. HTML 페이지의 embedding.js 스크립트 참조에서 TOKEN 매개변수를 true로 설정합니다.
  2. 토큰의 보안 구성 유형을 지정합니다. setSecurityConfig 함수를 사용하여 애플리케이션에 토큰 검색 함수를 추가합니다. 아래의 예를 참조하십시오.

이 예에서는 API를 사용하여 토큰을 가져옵니다. HTML 페이지에서 API를 사용하여 토큰을 가져오는 경우 필요한 API를 사용 가능하도록 설정해야 합니다.

여기서 project-path는 워크북의 저장소 경로를 지정합니다.

<!DOCTYPE html>
<html dir="ltr">
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <title>Standalone DV Embed Demo Using Token</title>
     <script src="https://<instance>.analytics.ocp.oraclecloud.com/public/dv/v1/embedding/<embedding mode>/embedding.js?TOKEN=true" type="application/javascript">
     </script>
   </head>
   <body>
     <B>Standalone embedded workbook test</B>
      <div style="width: calc(50% - 40px); height: 50%; border: 1px solid black; padding: 10px;" >
         <oracle-dv
            project-path="/@Catalog/Shared Folders/Embed/Embed Samples"
            active-page="canvas"
            active-tab-id="1">
         </oracle-dv>
      </div>

      <script>
         var token = '<token from identity management API>';
         requirejs(['jquery', 'knockout', 'obitech-application/application', 'ojs/ojcore', 'ojs/ojknockout', 'ojs/ojcomposite', 'jet-composites/oracle-dv/loader'],
       function($, ko, application) {
               application.setSecurityConfig("token", {tokenAuthFunction:
                  function(){
                     return token;
                  }
               });
               ko.applyBindings();
            }
        );
      </script>
   </body>
</html>