EspressReportのセキュリティ機能について【Java対応レポート・帳票ツールEspressReport】


下記EspressReport日本語マニュアル第12章からの抜粋

12 テンプレートセキュリティ

レポートツールで最も必要であるといわれていることは、いくつかの異なるレポートテンプレートを必要最小限に留めることです。テンプレートの再利用を促進するひとつの方法は、異なるレベルのユーザとって、テンプレートのある面がコントロールしやすくなっているということです。そのためにEspressReportでは、ユーザがテンプレートをビューするのに応じて、カラムレベル、行レベルそしてセルレベルの見掛けをコントロールするいくのもの異なるセキュリティコンフィギュレーションを設定できるようしています。

12.1 セキュリティレベル

EspressReport にはツールキットとして他のアプリケーション環境内に組み込まれるので、ユーザリストやアクセス特権などを保持しません。もっと正確に言うと、開発者はレポートテンプレートに独自のセキュリティを作成できるということです。各レベルでは、セルにある動作を割り当て、同時にデータフィルタも割り当てられます。 実行時のセキュリティレベルはAPIからレポートに与えられます。これによって、ほとんどのアプリケーションセキュリティモデルに柔軟に適応できるようになっています。

12.2 セルレベルセキュリティ

セルもしくは可視カラムには、それぞれのセキュリティレベルに対して異なる動作を設定することができます。セキュリティ設定をセルに適用させるには、セルを選択してData(データ)メニューの’Security’ を選択するか、あるいはセルの上を右クリックしてポップアップメニューの’Security’ を選択します。ダイアログが立ち上がり、そのセルに対してセキュリティ設定を指定することができます。

12.3 セキュリティパラメータ

レポートのセルの特定の動きをコントロールするだけでなく、パラメータ値をセキュリティレベル割り当てることもできます。例えば先に挙げた例 では、セールスレポートはリージョン(地域)でグループ化されていたので、セールスリージョンでフィルターをかけ、適切なリージョン値をそのリージョンのセキュリティレベルに割り当てるクエリーパラメータを追加することができます。社員がログインしたとき、レポートは適切なセキュリティレベルで実行されます。つまりセキュリティレベルによって適切なパラメータ値がレポートに与えられ、そのユーザはそれぞれのセールスリージョンのデータを見ることができるのみとなります。セキュリティパラメータを使うにはレポートがパラメータ化されたデータベースクエリーか、もしくはデータソースとしてパラメータ化されたクラスを使用している必要があります。

12.4 サブレポート/ドリルダウンレイヤーのセキュリティ

テンプレートのセキュリティ設定は自動的にサブレポートにも、ドリルダウンレイヤーにも適用されます。どちらの場合もセキュリティを追加するには、(サブレポートタブをクリック、またはドリルダウンレイヤーにナビゲートすることによって)サブレポートあるいはドリルダウンレイヤーを編集する必要があります。サブレポートもドリルダウンレイヤーも、セキュリティ設定は、メインレポートにするのと同じようにして追加することができます。セキュリティをメインレポートとサブレポートまたはダウンドリルレイヤーの両方に適用したい場合は、セキュリティレベルをメインレポートと同じに割り当てる必要があります。レポートがセキュリティレベルで実行されているとき、セキュリティレベルは自動的にサブレポートと/またはドリルダウンレイヤーに適用されます。

12.5 保護されたテンプレートのビュー

レポートデザイナーのプレビューウィンドウによって、セキュリティ設定の結果をプレビューすることができます。それには、Deta(データ)メニューの’Set Preview Security Level’ を選択します。これによってダイアログが立ち上がり、レポートをビューするのに使いたいセキュリティレベルを選択するようプロンプトが出されます。

12.5.1 レポートデザイナーでのセキュリティ

APIでレポートデザイナーを実行している場合も、セキュリティを適用することができます。デザイナーが始動するとsetSecurityLevel() メソッドを使ってセキュリティレベルでパスします。レポートデザイナーが安全モードで実行されているとき、ユーザはその決められたレベルでしかプレビューすることができません。また、セキュリティ設定が定義されているレポートセル、セキュリティ設定の適用されたセルスクリプトは変更することはできません。APIからのレポートデザイナー実行に関する詳細はセクション17.4.6を参照してください。

関連するトピックス: