JDBC データソースでPingOne との間にInformatica マッピングを作成

標準のJDBC 接続プロセスを使用して、Informatica でPingOne のデータオブジェクトを作成します。JAR をコピーし、接続してください。

加藤龍彦
デジタルマーケティング

最終更新日:2022-01-06

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

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

Informatica は、データを転送・変換するための強力で立派な手段を提供します。CData JDBC Driver for PingOne を利用することで、Informatica の強力なデータ転送および操作機能とシームレスに統合される、業界で実証済みの標準に基づくドライバーにアクセスできます。このチュートリアルでは、Informatica PowerCenter でPingOne を転送および参照する方法を示します。

ドライバーをデプロイ

ドライバーをInformatica PowerCenter サーバーに展開するために、インストールディレクトリのlib サブフォルダにあるCData JAR および.lic ファイルを次のフォルダにコピーします。Informatica-installation-directory\services\shared\jars\thirdparty.

Developer ツールでPingOne を使用するには、インストールディレクトリのlib サブフォルダにあるCData JAR および.lic ファイルを次のフォルダにコピーする必要があります。

  • Informatica-installation-directory\client\externaljdbcjars
  • Informatica-installation-directory\externaljdbcjars

JDBC 接続の作成

以下のステップに従って、Informatica Developer に接続します。

  1. [Connection Explorer]ペインで[domain]を右クリックし、[Create a Connection]をクリックします。
  2. 表示される[New Database Connection]ウィザードで、接続の名前とId を入力し、[Type]メニューで[JDBC]を選択します。
  3. [JDBC Driver Class Name]のプロパティで次のコードを入力します。 cdata.jdbc.pingone.PingOneDriver
  4. [Connection String]プロパティでは、PingOne の接続プロパティを使用してJDBC URLを入力します。

    PingOne に接続するには以下のプロパティを設定します。

    • Region:自身のPingOne 組織のデータがホスティングされている地域。
    • AuthScheme:PingOne に接続する際に使用する認証の種類。
    • WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。

    WorkerAppEnvironmentId の設定

    WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。

    はじめに、このプロパティの値を見つけます。

    1. 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
    2. OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
    3. 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
    4. リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
    5. Environment ID フィールドの値をコピーします。 以下の例に似たものになるはずです:
      WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'

    次に、WorkerAppEnvironmentIdEnvironment ID フィールドの値に設定します。

    AuthorizationServerURL の設定

    AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。

    OAuth でのPingOne への認証

    PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。

    • ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
    • ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
    • 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。

    OAuth(認可コードグラント)

    AuthSchemeOAuth に設定します。

    デスクトップアプリケーション

    OAuth アクセストークンの取得およびリフレッシュ

    以下を設定して、接続してください。

    • InitiateOAuthGETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
    • OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
    • OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
    • CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333

    接続すると、本製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。

    1. ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
    2. OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。

    ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。

    Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。

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

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

    java -jar cdata.jdbc.pingone.jar

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

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

    以下は一般的な接続文字列です。

    jdbc:pingone:AuthScheme=OAuth;WorkerAppEnvironmentId=eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e;Region=NA;OAuthClientId=client_id;OAuthClientSecret=client_secret;InitiateOAuth=GETANDREFRESH

PingOne テーブルを参照

ドライバーJAR をクラスパスに追加してJDBC 接続を作成すると、Informatica のPingOne エンティティにアクセスできるようになります。以下のステップに従ってPingOne に接続し、PingOne テーブルを参照します。

  1. リポジトリに接続します。
  2. [Connection Explorer]で、[connection]を右クリックし、[Connect]をクリックします。
  3. [Show Default Schema Only]オプションをクリアします。 The driver models PingOne entities as relational tables.(Salesforce is shown.)

以下より、[Data Viewer]でPingOne テーブルを参照できるようになります。テーブルの[node]を右クリックし、[Open]をクリックします。[Data Viewer]で[Run]をクリックします。

Table data and metadata in the Data Viewer.(Salesforce is shown.)

PingOne のデータオブジェクトの作成

以下のステップに従って、プロジェクトにPingOne テーブルを追加します。

  1. PingOne でテーブルを選択し、右クリックして[Add to Project]をクリックします。
  2. 表示されるダイアログでリソースごとにデータオブジェクトを作成するオプションを選択します。
  3. [Select Location]ダイアログで、プロジェクトを選択します。

    マッピングの作成

    以下のステップに従って、マッピングにPingOne ソースを追加します。

    1. [Object Explorer]でプロジェクトを右クリックし、[New]->[Mapping]と進みます。
    2. PingOne 接続のノードを展開し、テーブルのデータオブジェクトをエディターにドラッグします。.
    3. 表示されるダイアログで、[Read]オプションを選択します。
    The source PingOne table in the mapping.(Salesforce is shown.)

    以下のステップに従って、PingOne カラムをフラットファイルにマッピングします。

    1. [Object Explorer]でプロジェクトを右クリックし、[New]->[Data Object]と進みます。
    2. [Flat File Data Object]->[Create as Empty]->[Fixed Width]と選択していきます。
    3. PingOne オブジェクトのプロパティで必要な行を選択して右クリックし、[copy]をクリックします。行をフラットファイルのプロパティにペーストします。
    4. フラットファイルのデータオブジェクトをマッピングにドラッグします。
    5. 表示されるダイアログで、[Write]オプションを選択します。
    6. クリックしてドラッグすることで、列を接続します。

    PingOne を転送するために、ワークスペースで右クリックし、[Run Mapping]をクリックします。

    The completed mapping.(Salesforce is shown.)

関連コンテンツ

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

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