カスタムセキュリティプロバイダを構成すると、外部のデータベースに保存されているユーザー情報を使用してActiveReports Serverにログインできるようになるほか、ユーザーごとにUserContext属性を設定することができます。UserContext属性を使用すると、ログインしているユーザーに応じて、表示するデータ、データベースの接続文字列、SQLのクエリなどを動的に制御することができます。
ActiveReports 11.0J Serverのインストールフォルダには、カスタムセキュリティプロバイダのサンプルプロジェクトが含まれています。本サンプルでは、同梱のSQLiteのデータベース(ActiveTunes.sqlite)のCustomerテーブルとEmployeeテーブルに保存されているユーザー情報を使用して、ActiveReports Serverで認証してログインできるようにする方法を紹介します。
サンプルは、デフォルトで次の場所に配置されています。
C:\ActiveReports 11.0J Server\SDK\Samples\ActiveTunes.SecurityProvider
Visual Studioでソリューションを開くには、ActiveTunes.SecurityProvider.slnファイルをダブルクリックします。
 |
メモ:
- 本サンプルを実行するには、Microsoft Visual Studioが必要です。
- 本サンプルでは、CustomerテーブルのユーザーはActiveTunesCustomerのロールに、EmployeeテーブルのユーザーはActiveTunesEmployeeのロールに、それぞれ所属するように実装されています。ロールの設定を有効にするには、事前準備として、管理者ダッシュボードでActiveTunesCusomer、およびActiveTunesEmployeeのロールを作成する必要があります。
|
カスタムセキュリティプロバイダサンプルをコンパイルして使用する
- Visual Studioでサンプルを開き、[ビルド]メニューから[ソリューションのビルド]を選択します。
- Windowsエクスプローラーで、次のフォルダを開き、ActiveTunes.SecurityProvider.dllアセンブリをコピーします。
C:\ActiveReports 11.0J Server\SDK\Samples\ActiveTunes.SecurityProvider\ActiveTunes.SecurityProvider\bin\Debug
- 手順2でコピーしたアセンブリを、ActiveReports 11.0J Serverインストールフォルダ内にある次のフォルダに貼り付けます。
C:\ActiveReports 11.0J Server\SecurityProviders
- 管理者ダッシュボードのサイドバーメニューで[構成]セクションを開き、[セキュリティプロバイダ]をクリックします。
- 表示される[セキュリティプロバイダ]ページの[カスタムセキュリティプロバイダ]ドロップダウンで「ActiveTunesSecurityProviderFactory」を選択します。
- 表示される[ConnectionString]プロパティに接続文字列を入力します。
ConnectionString |
コードのコピー
|
Data Source=C:\ActiveReports 11.0J Server\SDK\Samples\ActiveTunes.SecurityProvider\ActiveTunes.sqlite
|
- カスタムセキュリティプロバイダをテストするために、下記の表からテスト用の値を選び、[テスト用ログインアカウント]、[テスト用パスワード]に入力します(例: ここではログインアカウントに「andrew@chinookcorp.com」、パスワードに「1」)。
ログインアカウント |
パスワード |
andrew@chinookcorp.com |
1 |
nancy@chinookcorp.com |
2 |
jane@chinookcorp.com |
3 |
margaret@chinookcorp.com |
4 |
steve@chinookcorp.com |
5 |
michael@chinookcorp.com |
6 |
robert@chinookcorp.com |
7 |
laura@chinookcorp.com |
8 |
-
[プロバイダのテスト]をクリックしてサンプルのデータベースに接続し、認証が正常に行われるかを確認します。次のような画面が表示されます。
- [変更の適用]ボタンをクリックします。
- [セキュリティプロバイダの設定の適用]ダイアログが表示されます。[確認]ボタンをクリックして、管理者ダッシュボードを閉じます。
- 利用者ポータルを開きます。
- 手順7の表にあるログインアカウント、パスワードの値を選び、ログイン画面にそれぞれ入力します(例: ユーザー名に「nancy@chinookcorp.com」、パスワードに「2」)。
- これで、ActiveTunesセキュリティプロバイダのユーザー「Nancy Edwards」として利用者ポータルにログインしました。
関連トピック