プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Reports ServicesレポートWeb公開ガイド
12c (12.2.1.2)
E82763-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

6.3 Oracle Reports Servicesの保護

12c (12.2.1.1)では、デフォルトでOracle Platform Security Services(認証と認可を処理)を使用して、Reports Serverが保護されます。Oracle ReportsではこのJava EEベース型セキュリティ・モデルを使用して、レポート・ジョブやWebコマンドを実行するためにセキュリティ・ポリシーを作成できます。

以前のリリースでは、Reports Serverの認証に使用できるのは、Oracle Internet Directoryにのみ制限されていました。Reports Serverの認可には、Oracle Portalベースのセキュリティ・モデルが必要です(ポータル・メタデータ・リポジトリを使用して認可を確認)。以前のリリースのセキュリティ・メカニズムに戻す場合は、第6.3.1.1項「Oracle Portalセキュリティへの切替え」を参照してください。

Oracle Reports 12cリリース(12.2.1.1)では、管理者はOracle Enterprise Managerを使用して、詳細なセキュリティ・ポリシーとファイル・システム・アクセスをさらに簡単に定義したり管理できます。

6.3.1 セキュリティの有効化および無効化と使用するセキュリティ・メカニズムの変更

Reports ServerやReportsアプリケーションのセキュリティを有効化したり無効化する手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「EM MBeanブラウザWebLogicドメイン」→「システムMBeanブラウザ」にナビゲートします

  3. Reports Server MBeanにナビゲートします

    Standalone server - Folder: Configuration Beans --> Folder:oracle.reports.serverconfig --> type=ReportsServer, name=rwserver-<componentName>, ReportsServer.Job

    Inprocess server - Folder: Application Defined MBeans --> Folder:oracle.reportsApp.config --> Server:<managedServername>,Application=reports, type=ReportsApp, name=rwserver, ReportsApp.Job

  4. 子MBean rwEngrwJaznSecをクリックします。

  5. プロパティsecurityIdに、値を次のように入力します。

    • rwJaznSec - OPSSベース・セキュリティの場合

    • rwSec - Portalベース・セキュリティの場合

    • <Leave Empty> - アンセキュア

  6. 「適用」をクリックします。

6.3.1.1 Oracle Portalセキュリティへの切替え

第16章「Oracle Portalでのレポートの配布」で説明しているとおり、Oracle Portalの12c (12.2.1.2)でレポートを配布する手順は、以前のリリースと同じです。ただし、配布の基盤となるセキュリティ・メカニズムは変更されています。その場合、認可はデフォルトで有効ですが、インストール時にOracle Internet Directoryのみが指定されてPortalがインストールされていない場合、Oracle Portalを使用する認可は無効になります。12c (12.2.1.2)のデフォルト・インストールでは、Oracle Platform Security Servicesにより認証と認可の両方が実現されます。

下位互換性を確保するために、以前のリリースのOracle Portalのセキュリティ機能を引き続き使用できます。新しい12c (12.2.1.2)のOracle Platform Security Servicesから、11gより前のOracle Portalメタデータ・リポジトリ・ベース型セキュリティに切り替える手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「EM MBeanブラウザWebLogicドメイン」→「システムMBeanブラウザ」にナビゲートします

  3. Reports Server MBeanにナビゲートします

    スタンドアロン・サーバー - oracle.reports.serverconfig:type=ReportsServer,name=rwserver-<componentName>

    インプロセス・サーバー - oracle.reportsApp.config:Location=<managedServername>,name=rwserver,type=ReportsApp,Application=reports,ApplicationVersion=12.2.1.1

  4. MBean ReportsServerJobをクリックします。

  5. プロパティsecurityIdに、値を次のように入力します。

    rwSec - Portalベース・セキュリティの場合


注意:

Oracle Portalセキュリティ機能を有効にする場合、認可が行われるようにするには、インストール時にOracle Portalも構成する必要があります。
  • インストール時にOracle Portalを構成した場合、Oracle Internet Directoryを使用して認証は処理され、Oracle Portalを使用して認可は処理されます(認可ポリシーはOracle Portalに格納)。

  • インストール時にOracle Portalを構成しなかった場合、Oracle Internet Directoryを使用して認証は処理されますが、認可は行われません。


6.3.2 レポートのセキュリティ・ポリシーの定義

管理者は、レポートごとにセキュリティ・ポリシーを作成することで、特定のユーザーやロールがアクセスできるレポートを指定できます。セキュリティ・ポリシーでは、サーバー、宛先名(desname)、宛先タイプ(destype)などのパラメータも指定できます。認証されたユーザーは、これらのセキュリティ・ポリシーに基づいて認可されます。

Reports ServerやReportsアプリケーション(インプロセスReports Server)のレポート用にセキュリティ・ポリシーを定義する手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「WebLogicドメイン」「セキュリティ」「アプリケーション・ポリシー」にナビゲートします。

  3. 「アプリケーション・ストライプ」をreportsとして選択します

  4. 「検索」アイコンをクリックします。

  5. ページのヘルプ・トピックの説明を参照して、ページの要素に適切な値を入力し、セキュリティ・ポリシーを定義または編集します。

  6. ページのオンライン・ヘルプをクリックして、ページレベルのヘルプにアクセスします。

  7. 作成」をクリックして、アプリケーション権限の作成ページにナビゲートします。

  8. 権限受領者セクションで、権限を割り当てるレポート・ロールを追加します。

  9. 「権限」セクションで、ロールに付与する新しい権限を追加します。

    使用する権限クラスは"oracle.reports.server.ReportsPermission"です

  10. 「リソース名」として、権限を付与するコマンドラインを指定します。ユーザーはパラメータ値としてワイルドカード("*")も使用できます。

  11. 「権限アクション」として、"*"を値として指定します


注意:

Oracle Enterprise Managerで定義されたセキュリティ・ポリシーは、ユーザーによって構成されたポリシー・ストアに格納されます。アイデンティティ・ストアにはユーザーに関する情報が格納され、ポリシー・ストアにはユーザーによって構成されたセキュリティ・ポリシーが格納されます。

6.3.3 ディレクトリのセキュリティ・ポリシーの定義

場合によっては、特定のユーザー・アクセスを複数の関連レポートに付与することが必要になることがあります。セキュリティ・ポリシーをレポートごとに指定するのではなく、1つのディレクトリにあるすべてのレポートを収集してから、そのディレクトリのセキュリティ・ポリシーを指定できます。ユーザーがユーザー名とパスワードを入力した際に、再びセキュリティ・ポリシーがチェックされます。

たとえば、15種類の財務レポートと12種類の人事レポートがあると仮定します。それらの財務レポートには、FINANCEロールへのアクセス権を付与するとします。また、それらの人事レポートには、HRロールへのアクセス権を付与するとします。FINANCEロールに15個のセキュリティ・ポリシーを指定しHRロールに12個のポリシー(各レポートにつき1個のポリシー)を指定するのではなく、すべての財務レポートを1つのディレクトリに集め、すべての人事レポートを別のディレクトリに集めてから、2つのポリシー(各ディレクトリにつき1個のポリシー)のみ指定することもできます。セキュリティ・ポリシーには、レポート名ではなく、ディレクトリ名を指定します。

ディレクトリのセキュリティ・ポリシーを定義する手順は、次のとおりです。

  1. 第6.3.3項「ディレクトリのセキュリティ・ポリシーの定義」の手順を使用してセキュリティ・ポリシーを定義します。ここでディレクトリのセキュリティ・ポリシーも定義できます。

  2. 指定されたロールまたは他のロールとしてレポートを実行して、定義されたように認証と認可のためのセキュリティ・ポリシーが強制適用されることをテストします。たとえば、次のURLを使用してブラウザからレポートを実行します。

    http://host:port/reports/rwservlet?report=report_name.rdf&destype=cache&desformat=html&userid=user/password@mydb&server=ReportsServer_instancename
    
    http://host:port/reports/rwservlet?report=report_name.rdf&userid=user/password@mydb&destype=file&desformat=pdf&desname=report_name.pdf 
    

    説明:

    hostは、Oracleインスタンスが設定されているマシンです

    portは、OHSのメイン・ポートです。

  3. セキュリティ・ポリシーのコマンドライン・オプション'report'に、定義するセキュリティ・ポリシー用のレポート定義ファイル名またはディレクトリを1つ以上入力します。たとえば、ディレクトリを指定するには、/myreports/runtime/reports/*と入力します。カンマ(,)で複数のエントリを区切ります。

定義したディレクトリ・アクセス制御をReports Serverレベルで使用するには、第6.3.1項「セキュリティの有効化および無効化と使用するセキュリティ・メカニズムの変更」を参照して、セキュリティが有効であることを確認します。


注意:

Oracle Enterprise Managerで定義されたセキュリティ・ポリシーは、ユーザーによって構成されたポリシー・ストアに格納されます。アイデンティティ・ストアにはユーザーに関する情報が格納され、ポリシー・ストアにはユーザーによって構成されたセキュリティ・ポリシーが格納されます。

6.3.4 Webコマンドのセキュリティ・ポリシーの定義

Oracle Reports Servlet (rwservlet)のWebコマンドごとにセキュリティ・ポリシーを作成することで、特定のユーザーやロールがアクセス権を持つWebコマンドも指定できます。ユーザーがユーザー名とパスワードを入力した際に、セキュリティ・ポリシーがチェックされます。

Webコマンドのセキュリティ・ポリシーを定義する手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「WebLogicドメイン」「セキュリティ」「アプリケーション・ポリシー」にナビゲートします。

  3. 「アプリケーション・ストライプ」をreportsとして選択します

  4. 「検索」アイコンをクリックします。

  5. ページのヘルプ・トピックの説明を参照して、ページの要素に適切な値を入力し、セキュリティ・ポリシーを定義または編集します。

  6. ページのオンライン・ヘルプをクリックして、ページレベルのヘルプにアクセスします。

  7. 作成」をクリックして、アプリケーション権限の作成ページにナビゲートします。

  8. 権限受領者セクションで、権限を割り当てるレポート・ロールを追加します。

  9. 「権限」セクションで、ロールに付与する新しい権限を追加します。

    使用する権限クラスは"oracle.reports.server.WebCommandPermission"です

  10. 「リソース名」として、権限を付与するコマンドラインを指定します。ユーザーはパラメータ値としてワイルドカード("*")も使用できます。次に示されたフォームになります。

    webcommands=<カンマで区切られたwebcommandのリスト> server=<Reports Server名>

    webcommands=showmyjobs,getjobid,showjobid,getserverinfo,showjobs server=*
    
  11. 「権限アクション」として、executeを値として指定します


注意:

Oracle Enterprise Managerで定義されたセキュリティ・ポリシーは、ユーザーによって構成されたポリシー・ストアに格納されます。アイデンティティ・ストアにはユーザーに関する情報が格納され、ポリシー・ストアにはユーザーによって構成されたセキュリティ・ポリシーが格納されます。

6.3.5 ディレクトリへの読取り/書込みアクセス権の定義

管理者は、Reports Server、Reportsアプリケーション(インプロセスReports Server)またはOracle Reports Runtimeによるディレクトリへの読取りアクセス権や書込みアクセス権を指定できます。この機能は、Reports Server、ReportsアプリケーションまたはOracle Reports Runtimeによる指定ディレクトリへの読取りや書込みが認可されているかどうかを確認するのみであり、ユーザー名とパスワードを確認するセキュリティ・ポリシーとは無関係です。

  • 読取りアクセス。機密ファイルの内容が漏洩するセキュリティ問題を防止するために、Reports Server、ReportsアプリケーションまたはOracle Reports Runtimeによる読取りを許可するディレクトリを指定できます。

    たとえば、悪意のあるユーザーは、次のキーワードを指定してWindows上でレポートを実行する場合があります。

    distribute=yes&destination=C:\Temp
    

    これによって、ファイルの構文に誤りがあることを示すエラーが生成されます。これを防止するには、ファイル・システムのアクセス制御を有効にして、システム・ディレクトリが含まれない読取りディレクトリを指定します。

  • 書込みアクセス。悪意のあるユーザーがレポート出力をシステム・ディレクトリに送信することでシステム・ファイルの上書きが潜在的に可能なセキュリティ問題を防止するために、Reports Server、ReportsアプリケーションまたはOracle Reports Runtimeによる書込みを許可するディレクトリを指定できます。それ以外のディレクトリへの書込みが試行されると、エラーが返されます。

    たとえば、ユーザーは、Windows上で実行するレポートの出力先として次を指定する場合があります。

    desname=C:\Temp
    

    ファイル・システムのアクセス制御を有効にしてシステム・ディレクトリが含まれない書込みディレクトリを指定している場合を除いて、これによってシステム・ファイルが上書きされます。

Reports Server、ReportsアプリケーションまたはOracle Reports Runtimeによるディレクトリへの読取りアクセス権や書込みアクセス権を定義する手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「EM MBeanブラウザWebLogicドメイン」→「システムMBeanブラウザ」にナビゲートします

  3. Reports Server MBeanにナビゲートします。

    スタンドアロン・サーバー - oracle.reports.serverconfig:type=ReportsServer,name=rwserver-<componentName>

    インプロセス・サーバー - oracle.reportsApp.config:Location=<managedServername>,name=rwserver,type=ReportsApp,Application=reports,ApplicationVersion=12.2.1.1

  4. 「操作」をクリックします。

  5. addFolderAccessをクリックします

  6. Reports Server、ReportsアプリケーションまたはOracle Reports Runtimeがアクセス権を必要とする読取りデイレクトリおよび書込みディレクトリの名前を入力します。入力された値は、構成ファイルのfolderaccess要素のreadサブ要素とwriteサブ要素に設定されます。

    ディレクトリの読取り: 機密ファイルの内容が漏洩するセキュリティ問題を防止するために、Reports Serverによる読取りを許可するディレクトリの名前を入力します。ディレクトリ名はセミコロン(;)で区切ります。

    ディレクトリの書込み: Reports Serverによる書込みを許可するディレクトリの名前を入力します。他のフォルダへの書込みが試行されると、エラーが返されます。

  7. 「起動」をクリックします。

6.3.6 Single Sign-Onの有効化と無効化

Oracle Application Server Single Sign-Onを使用する予定がある場合、Oracle Enterprise Managerを使用して、rwservlet.properties構成ファイルのSINGLESIGNONパラメータを設定できます。インストール時は、デフォルトでSINGLESIGNON=YESに設定されます。Single Sign-Onの詳細は、第17章「Oracle Single Sign-Onの構成と管理」を参照してください。

Single Sign-Onを有効にする手順は、次のとおりです。

  1. Oracle Enterprise Managerにログインします。

  2. 「EM MBeanブラウザWebLogicドメイン」→「システムMBeanブラウザ」にナビゲートします

  3. ReportsサーブレットMBeanにナビゲートします

    oracle.reportsApp.config:Location=<managedServername>,name=rwservlet,type=ReportsApp,Application=reports,ApplicationVersion=12.2.1.1

  4. プロパティSinglesignonをyes/noとして設定してシングル・サインオンを有効化/無効化します。

  5. 「適用」をクリックします。

6.3.7 Oracle Access Managerの使用

Oracle Access Managerは、Oracle Fusion Middlewareのコンポーネントの1つです。OracleAS Single Sign-On 10gのかわりに使用して、集中認証、ポリシーベースの認可、委任管理などを実装できます。

OracleAS Single Sign-On 10gからOracle Access Manager 11gへのアップグレードにはOracle Fusion Middleware Upgrade Assistantを使用できます。Oracle Access Manager 11gへのアップグレードの詳細は、『Oracle Fusion Middleware Oracle Identity Managementアップグレード・ガイド』の「Oracle Single Sign-On環境のアップグレード」の章を参照してください。

6.3.8 資格証明の管理

この項では、Oracle Enterprise Managerを使用してドメイン資格証明ストア内の資格証明を管理する方法について説明します。

  1. Oracle Enterprise Managerにログインし、「WebLogicドメイン」「セキュリティ」「資格証明」にナビゲートして、「資格証明」ページを表示します。

  2. 「削除」ボタンを使用して、表内で選択したアイテム(キーまたはマップ)を削除します。資格証明マップを削除すると、マップにあるすべてのキーが削除されます。同様に、「編集」ボタンを使用して、選択したアイテムでデータを表示または変更します。

  3. 特定のキー名と一致する資格証明を表示するには、「資格証明キー名」ボックスに一致させる文字列を入力し、右にある青いボタンをクリックします。問合せの結果が表に表示されます。

  4. 問合せの結果を調べた後に資格証明のリストを再表示するには、「WebLogicドメイン」「セキュリティ」「資格証明」を選択します。

新しいキーを資格証明マップに追加するには:

  1. 「マップの作成」をクリックして、「マップの作成」ダイアログ・ボックスを表示します。

  2. ダイアログに、作成する資格証明のマップ名を入力します。

  3. 「OK」をクリックして「資格証明」ページに戻ります。新しい資格証明マップ名がフォルダ・アイコンとともに表に表示されます。


注意:

CSFでは、Reports Serverがアクセスできるのは、Reportsフォルダにある資格証明のみです。そのため、資格証明はReportsフォルダの下に作成する必要があります。

新しいキーを資格証明マップに追加するには:

  1. 「キーの作成」をクリックして、「キーの作成」ダイアログ・ボックスを表示します。

  2. このダイアログで、「マップの選択」プルダウン・リストから新しいキーを挿入するマップを選択し、「キー」テキスト・ボックスにキーを入力して、「タイプ」プルダウン・リストからタイプを選択し(ダイアログの外観は、選択したタイプに応じて変わります)、必要なデータを入力します。

  3. 終了したら「OK」をクリックして、「資格証明」ページに戻ります。新しいキーが、選択したマップに対応するマップ・アイコンの下に表示されます。

資格証明ストアの再関連付けの詳細は、Oracle Platform Security Servicesによるアプリケーションの保護を参照してください。