SpagoBI でLDAP に連携

SpagoBI Studio でリアルタイムLDAP にフィーチャーしたレポートを作成します。ホストのLDAP はSpagoBI サーバーを報告します。

古川えりか
コンテンツスペシャリスト

最終更新日:2022-06-13

この記事で実現できるLDAP 連携のシナリオ

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。

CData JDBC Driver for LDAP はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムLDAP に接続することを可能にします。この記事では、LDAP をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。

SpagoBI サーバーのJDBC ドライバーをデプロイ

以下のステップに従ってSpagoBI サーバーでJDBC data source for LDAP を作成します。

  1. ドライバーJAR を%CATALINA_BASE%/lib にコピーします。これらのファイルは、インストールディレクトリのlib サブフォルダにあります。
  2. LDAP ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。 <Resource name="jdbc/ldap" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.ldap.LDAPDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>

  3. 以下のリソースリンクを追加し、Web アプリケーションへのアクセスを許可します。この記事では、SpagoBI のMETA-INF\context.xml に次の行を追加します。 <ResourceLink global="jdbc/ldap" name="jdbc/ldap" type="javax.sql.DataSource"/>
  4. サーバーを再起動します。

SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。

  • Label:ドライバーに独特の識別子を入力します。
  • Description:ドライバーにディスクリプションを入力します。
  • Dialect:デフォルトの方言を選択します。
  • Read Only:読み取り専用オプションを選択します。このオプションは、データソースがエンドユーザーによって作成された、データセットを保存するためのデフォルトデータベースであるかどうかを決定します。
  • Type:[JDBC]を選択します。
  • URL:
  • 必要な接続文字列プロパティを使用してJDBC URLを入力します。

    リクエストを認証するには、User およびPassword プロパティを有効なLDAP クレデンシャル(例えば、User を"Domain\BobF" または"cn=Bob F,ou=Employees,dc=Domain")に設定します。 CData 製品は、デフォルトでプレーンテキスト認証を使用します。これは、CData 製品がサーバーとTLS/SSL のネゴシエーションを試みるためです。 AuthMechanism を使って別の認証方法を指定できます。 TLS/SSL コンフィギュレーションについて詳しくは、ヘルプドキュメントの「高度な設定」を参照してください。

      基本接続には、Server およびPort を設定します。さらに、次のように接続を微調整できます。
    • FollowReferrals:設定すると、CData 製品は参照サーバーのデータもビューとして表示します。参照サーバー上のデータを変更するには、このサーバーをServer およびPort で指定する必要があります。
    • LDAPVersion:サーバーが実装するプロトコルのバージョンに設定します。デフォルトでは、CData 製品はversion 2 を使用します。
    • BaseDN は、LDAP 検索の範囲を指定された識別名の高さに限定します。BaseDN の範囲を絞ることはパフォーマンスを劇的に向上させます。例えば、"cn=users,dc=domain" の値は、"cn=users" およびその子に含まれる結果のみを返します。
    • Scope:このプロパティを使用すると、サブツリーから返されるデータをより細かく制御できます。

    ビルトイン接続文字列デザイナ

    JDBC URL の構成については、LDAP JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

    java -jar cdata.jdbc.ldap.jar

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    以下は一般的なJDBC URL です。

    jdbc:ldap:User=Domain\BobF;Password=bob123456;Server=10.0.1.1;Port=389;
  • Driver:ドライバーのクラス名にcdata.jdbc.ldap.LDAPDriver を入力します。
The configuration for the LDAP JDBC data source.(Salesforce is shown.)

SpagoBI Studio でレポートを作成

以下のステップに従い、SpagoBI StudioでLDAP に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。

初めに、SpagoBI Studio のレポートからLDAP に接続してください。

  1. SpagoBI Studio で、[File]->[New]->[Project]とクリックしていき、[Business Intelligence and Reporting Tools]フォルダで[Report Project]を選択します。
  2. [File]->[New]->[Report]と進み、[Blank Report]を選択します。
  3. [Data Explorer]ビューで[Data Sources]を右クリックし、[New Data Source]をクリックします。
  4. [JDBC Data Source]を選択し、データソース名を入力します。
  5. [Manage Drivers]をクリックし、[Add]をクリックしてドライバーJAR(cdata.jdbc.ldap.jar) を追加します。
  6. ドライバーJAR は、インストールディレクトリのlib サブフォルダにあります。
  7. [Driver Class]メニューでドライバークラス(cdata.jdbc.ldap.LDAPDriver)を選択します。
  8. [Database URL]ボックスに、[JDBC URL]を入力します。以下は一般的な接続文字列です。 jdbc:ldap:User=Domain\BobF;Password=bob123456;Server=10.0.1.1;Port=389; 必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。 The JDBC data source.(Salesforce is shown.)

LDAP に接続した後、SQL クエリの結果を含むデータセットを作成します。

  1. [DataSet]フォルダを右クリックし、[New Data Set]をクリックします。JDBC data source for LDAP を選択し、データセットの名称を入力します。
  2. SQL クエリを構築します。ここでは、このクエリを使用してダッシュボードにチャートを追加します。例: SELECT Id, LogonCount FROM User The query to be used to populate a chart.(Salesforce is shown.)

データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。

  1. [Palette]ビューで、チャートをキャンバスにドラッグします。
  2. [Select Chart Type]タブで棒グラフを選択します。
  3. [Select Data]タブで[Use Data From]オプションをクリックし、メニューからLDAP のデータセットを選択します。
  4. Id をテーブルからx 軸の系列にドラッグします。
  5. LogonCount をテーブルからy 軸の系列にドラッグします。 Columns in the dataset defined as the x- and y-axes for the chart.(Salesforce is shown.)

SpagoBI サーバーに関するホストLDAP レポート

以下のステップに従って、SpagoBI サーバーでリアルタイムLDAP に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のLDAP JDBC データソースに置き換えられるプレースホルダパラメータを作成します。

  1. 未実行の場合、SpagoBI Studio で[Report Design]パースペクティブで開きます。
  2. [Data Explorer]ビューで[Report Parameters]フォルダを右クリックし、[New Parameter]をクリックします。url パラメータを追加し、それに空の値を割り当てます。このパラメータはSpagoBI サーバー上のJDBC データソースのプレースホルダです。
  3. LDAP のデータソースを右クリックし、[Edit]をクリックします。
  4. [Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。

    JavaScript構文に以下のように入力することもできます。

    params["url"].value Placeholder values in the report for the JDBC data source on the server.

続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。

  1. SpagoBI サーバーで、[Documents Development]->[Create Document]->[Generic Document]と進みます。[Document Details]ページが表示されます。
  2. 以下の情報を入力し、ドキュメントを作成します。
    • Label:ドキュメントに独自の識別子を入力します。
    • Name:ドキュメントのわかりやすい名前を入力します。
    • Type:メニューから[Report]を選択します。
    • Engine:[BIRT Report Engine]を選択します。
    • Data Source:SpagoBI サーバーのCreate a JDBC Data Source for LDAP で作成したLDAP Data Source を選択します。
  3. [Show Document Templates]セクションで、ドキュメントを格納したいフォルダを選択します。
  4. [Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。

    Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。

  5. [Save]ボタンをクリックします。
The document using the report as a template.(Salesforce is shown.)

サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。

The chart running on the SpagoBI Server.(Salesforce is shown.)

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。