ロールベース・フィルタについて
アプリケーション・ロールに基づくフィルタ(ロールベース・フィルタとも呼ばれる)を使用すると、Oracle Analyticsのビジネス・アナリストおよびユーザーは、必要なデータにのみアクセスできます。たとえば、一部のユーザーが共有のグローバル・セールス・ワークブックを開いたときに、北米の売上データのみが表示されるようにしたいとします。これを実現するには、「北米アナリスト」というカスタム・アプリケーション・ロールを作成し、それを使用してワークブック・データをフィルタ処理します。
ロールベース・フィルタの概要
- データセット所有者は、Oracle Analyticsアプリケーション・ロールに基づいてフィルタを適用します。これにより、ユーザーには自分のアプリケーション・ロールに適したデータのみが表示されます。
- ロールベース・フィルタをデータセットに適用します。
- 同時に複数のロールベース・フィルタをデータセットに適用できます。
- データセット・エディタでロールベース・フィルタを追加する場合、表示されるプレビュー・データはフィルタ処理されず、ワークブック・コンシューマがデータセットにアクセスしたときにデータセットがフィルタ処理されます。
- 既存のアプリケーション・ロールを使用することも、独自のアプリケーション・ロールを作成することもできます。たとえば、ヨーロッパと北米のアナリストのグローバル売上データセットをフィルタ処理するには、アプリケーション・ロールEuropeanSalesおよびNorthAmericaSalesを作成できます。
- 式を使用して、ロールベース・フィルタを指定します。たとえば、North America Salesアプリケーション・ロールでは、式
COUNTRY_SUBREGION = "Northern America"
を使用して、COUNTRIES表のCOUNTRY_SUBREGION列をフィルタ処理できます。 - フィルタ式では、Oracle Analyticsシステム変数を参照できます。たとえば、Sales Repアプリケーション・ロールでは、式
SALESREP_ID = USER()
を使用してSALESREP_ID列をフィルタ処理できます。ここで、USER ()はログイン・ユーザーのIDを提供するシステム変数です。 - データベース・エディタで、ツールバーのロールベース・フィルタ・バーの非表示または表示オプションを使用して、ロールベース・フィルタ・パネルを表示します。
ロールベース・フィルタの使用に関するヒント
- すべてのユーザーおよびロールのデータセットをフィルタ処理するには、Authenticated Userロールにロールベース・フィルタを追加します。たとえば、ユーザーがEMEAリージョンのデータにのみアクセスできるようにする場合は、フィルタ式REGION = "EMEA"をAuthenticated Userロールに追加します。
- データセットにロールベース・フィルタを設定すると、データセット所有者を含め、指定されたロールを持たないユーザーは、どのデータも参照できなくなります。データセット所有者がデータを参照する必要がある場合は、指定されたロールの1つにデータセット所有者を追加します。さらに、AdminやOrgVPなどのスーパー・ロールを持つユーザーがすべてのデータを参照する必要がある場合は、ダミー・フィルタを作成します。たとえば、OrgVPがリージョン内のすべてのデータを参照できるようにする場合は、OrgVPのアプリケーション・ロール用に追加のフィルタを作成し、式1=1でフィルタを作成します。OrgVPを持つユーザーがログインしてワークブックを作成する場合、すべてのデータを参照できます。