RPA ツールPower Automate Desktop からPingOne のデータに接続する方法(CSV ファイルの生成自動化)

ODBC Driver 経由でPower Automate Desktop からPingOne のデータを利用可能に

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

最終更新日:2023-09-07

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

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

Power Automate Desktop は、さまざまなファイルやサービスの処理を自動化できるMicrosoft のRPA サービスです。Power Automate Desktop をCData ODBC ドライバと組み合わせることで、ネイティブではサポートされていない多くのSaaS / クラウドDB のデータを扱えます。この記事ではCData ODBC Driver for PingOne を使って、Power Automate Desktop からPingOne のデータを使えるようにします。サンプルとしてPingOne のデータから特定のテーブルを選んで自動でCSV ファイルを生成します。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持った製品です。

  1. PingOne をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレデータソースに対応
  2. Power Automate Desktop をはじめとする多様な自動化ツールやノーコードアプリ、BI ツールにPingOne のデータを連携
  3. ノーコードでの手軽な接続設定

CData ODBC ドライバでは、1.データソースとしてPingOne の接続を設定、2.Power Automate 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとPingOne への接続設定

まずは、本記事右側のサイドバーからPingOne ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。「Microsoft ODBC データソースアドミニストレーター」を開いて設定を行うことも可能です。

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 メソッドについては、ヘルプドキュメントを参照してください。

Power Automate Desktop では、設定したPingOne のDSN 名のほかに、使用するテーブル名が必要です。テーブル名は、ODBC DSN 構成画面の「テーブル」タブで確認可能です。使うテーブルもしくはビューの名前をコピーして控えておくとよいでしょう。

Power Automate Desktop でPingOne のデータを利用するフローを作成

Power Automate Desktop でフローを作成していきます。Power Automate Desktop を立ち上げて、「新しいフロー」をクリックします。任意のフロー名を入力して、新規のフローを作成します。

以下の順番でフローを作成していきます。

SQL 接続の設定

Power Automate Desktop から、CData ODBC ドライバでPingOne に接続する場合にはデータベース接続のアクションを使います。まず最初に「SQL 接続を開く」アクションを配置して、先ほど設定したODBC DSN への接続設定を行います。

「SQL 接続を開く」の設定画面で、PingOne のDSN を「DSN= CData PingOne Source;」の形で指定します。

SQL ステートメントの実行

続いてデータを取得するクエリを実行するために「SQL ステートメントの実行」を配置します。設定画面に以下を設定します。

  • 接続の取得方法:SQL 接続変数
  • SQL 接続:%SQLConnection%
  • SQL ステートメント:SELECT * FROM [CData].[Administrators].Users
  • タイムアウト:任意

これでSQL でPingOne にクエリをすることができます。豊富なSQL の設定が可能です。

CSV ファイルの生成

この例では、取得したPingOne のデータをCSV ファイルとして保存します。では、CSVファイルの生成アクションを設定します。アクションから「CSV ファイルに書き込みます」を配置します。

取得したアプリのデータが格納されている「%QueryResult%」を書き込む変数に指定します。生成先のファイルパスを指定します。列名を含めたい場合には「Advanced」の「列名を含めます」にチェックを入れます。

SQL 接続を閉じる

最後に、接続したODBC 接続をクローズします。「SQL接続を閉じる」をフローに配置します。

閉じるコネクションを指定して保存します。

これで、PingOne のデータをCSV に保存するPower Automate フローが完成しました。実行ボタンを押してオートメーションを実行しましょう。

PingOne からPower Automate へのデータ連携には、ぜひCData ODBC ドライバをご利用ください

このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをPower Automate Desktop からコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。

日本のユーザー向けにCData ODBC ドライバは、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。

関連コンテンツ

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

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