Pentaho Report Designer でActive Directory のデータを連携利用
CData JDBC Driver for Active Directory のデータ を使えば、ダッシュボードやレポートからリアルタイムデータにアクセスできます。この記事では、Active Directory のデータにJDBC データソースとして接続し、Pentaho でActive Directory のデータをもとにしたレポートを公開する方法を説明します。
接続してレポートを作成
- インストールディレクトリのlib サブフォルダ内にあるドライバーのJAR ファイルを、Pentaho ディレクトリ内の\Report-Designer\lib\jdbc\ フォルダにコピーします。
- \Report-Designer\ フォルダ内のreport-designer.bat ファイルを実行してReport-Designer UI を開きます。
Data -> Add Data Source -> Advanced -> JDBC(Custom)をクリックし、新しいActive Directory 接続を作成して、ドライバーで新しいデータソースを作成します。 表示されるダイアログで、以下のように接続プロパティを設定します。
Custom Connection URL property:JDBC URL を入力します。JDBC URL はjdbc:activedirectory: で始まり、その後にセミコロン区切りで接続プロパティを指定します。
ActiveDirectory 接続プロパティの取得・設定方法
接続には以下の情報が必要です。
- 有効なユーザーおよびパスワード情報 (例:Domain\BobF or cn=Bob F,ou=Employees,dc=Domain)。
- 接続するサーバーのIP、ホスト名、ポートを含むサーバー情報。
-
BaseDN: 指定されたname にLDAP 検索の範囲を制限します。
ちなみに、BaseDN を狭い範囲に設定することで大幅にパフォーマンスを改善できます。例えば、cn=users,dc=domain は、cn=users およびその子の範囲に戻り値の結果を制限します。
組み込みの接続文字列デザイナー
JDBC URL の構成については、Active Directory JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.activedirectory.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限されます。特にレポートやビジュアライゼーションを設計する際のパフォーマンス向上に役立ちます。
一般的なJDBC URL は次のとおりです:
jdbc:activedirectory:User=cn=Bob F,ou=Employees,dc=Domain;Password=bob123;Server=10.0.1.2;Port=389;
- Custom Driver Class Name:cdata.jdbc.activedirectory.ActiveDirectoryDriver を入力します。
- User Name:認証に使用するユーザー名。
- Password:認証に使用するパスワード。
レポートにActive Directory のデータを追加
Active Directory のデータをもとにレポートを作成する準備が整いました。
-
レポートにActive Directory のソースを追加します。Data -> Add Data Source -> JDBC をクリックしてデータソースを選択します。
クエリを設定します。この記事では以下のクエリを使用します:
SELECT Id, LogonCount FROM User
- レポートにチャートをドラッグし、ダブルクリックしてチャートを編集します。レポートを実行してチャートを表示します。このクエリの結果を使用して、User テーブルのシンプルなチャートを作成できます。
- 最後に、レポートを実行してチャートを確認します。