新增包含內嵌 Oracle Analytics 內容之應用程式或網頁的認證

您可以利用本節中的主題,新增包含內嵌 Oracle Analytics 內容之 Web 應用程式或入口網站網頁的認證方法。

對內嵌的 Oracle Analytics 內容使用登入提示認證

登入提示認證是 Web 應用程式或入口網站網頁中內嵌之 Oracle Analytics 內容的預設認證方法。

當使用者存取內嵌的分析內容時,會看到登入畫面,他們必須在該畫面中輸入登入名稱與密碼,才能檢視資料。Oracle Analytics 與 Web 應用程式或入口網站網頁之間若沒有通用的識別管理,即使使用者已登入包含內嵌分析內容的 Web 應用程式或入口網站網頁,他們仍然會看到此登入畫面。

自訂登入提示認證訊息

新增屬性至 <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 內容使用三方 OAuth 認證

將 Oracle Analytics 內容內嵌至使用自己本身認證方法的入口網站或 Web 應用程式中時,請使用三方 OAuth 認證方法。

為了讓使用者體驗順暢,自訂網頁和 Oracle Analytics 必須使用相同的認證提供者。因此如果是第三方 Web 應用程式,它必須使用與 Oracle Analytics 相同的 Oracle Cloud 認證提供者 (亦即相同的 Oracle Identity Cloud Service 執行處理或 Oracle Cloud Infrastructure Identity and Access Management (IAM) 識別網域),或者 Oracle Analytics 必須與第三方認證提供者同盟。 

為了允許適當的認證,您必須為所有伺服器要求指定三方 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 進行認證,但不想要使用三方 OAuth 時,請使用權杖認證方法。

您可以更新 HTML 頁面,以允許使用適當的權杖認證。如需有關如何產生權杖的資訊,請參閱 Securing Authorizations in 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>