RunMyProcess からConnect Server 経由でPingOne のデータと連携

CData Connect Server を使用してPingOne のOData API を作成し、Akorbi Digital 社のRunMyProcess からPingOne のデータと連携。

桑島義行
テクニカルディレクター

最終更新日:2021-06-11

こんにちは!テクニカルディレクターの桑島です。

Akorbi Digital RunMyProcess を使えば、予算申請や契約管理など複雑なビジネスプロセスをノーコードでアプリ化できます。CData Connect Server はPingOne の仮想データベースを作成して、PingOne のOData API(RunMyProcess でネイティブに使用可能)を生成するために使用します。RunMyProcess をCData Connect Server と連携することで、対応するすべてのSaaS、Big Data、およびNoSQL ソースへ接続でき、PingOne のデータに素早くアクセスできます。

この記事では、二つのステップでPingOne のデータへの接続方法を説明します。

  1. Connect Server からPingOne への接続
  2. RunMyProcess からConnect Server に接続してPingOne のデータを取得

Connect Server を構成してPingOne に接続

RunMyProcess からPingOne に接続するには、Connect Server インスタンス内でPingOne への接続を設定します。

Connect Server ユーザーの追加

RunMyProcess からPingOne に接続するConnect Server のユーザーを作成します。

  1. 「Users」->「 Add」の順にクリックします。
  2. ユーザーを設定します。 新規ユーザーの作成
  3. 「Save Changes」をクリックして新しいユーザーのAuthtoken をメモします。 Connect Server ユーザー

Connect Server からPingOne に接続

CData Connect Server は、簡単なポイントアンドクリックインターフェースを使用してAPI を生成します。

  1. Connect Server を開き、「Databases」をクリックします。 データベースの作成
  2. 「Available Data Sources」から「PingOne」を選択します。
  3. 必要な認証プロパティを入力し、PingOne に接続します。

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

    接続の設定(画像はSalesforce)
  4. Test Database」をクリックします。
  5. 「Permission」->「 Add」の順にクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー)を追加します。

Connect Server にPingOne OData エンドポイントを追加

PingOne に接続したら、使用するテーブルのOData エンドポイントを作成します。

  1. 「OData」->「Tables」->「Add Tables」の順にクリックします。
  2. PingOne のデータベースを選択します。
  3. 使用するテーブルを選択し、「Next」をクリックします。 Selecting a Table (Salesforce is shown)
  4. (オプション)リソースを編集して特定のフィールドなどを選択します。
  5. 設定を保存します。

(オプション)Cross-Origin Resource Sharing (CORS) を構成

Ajax などのアプリケーションから複数のドメインにアクセスして接続すると、クロスサイトスクリプティングの制限に違反する恐れがあります。その場合には、[OData]->[Settings]でCORS 設定を構成します。

  • Enable cross-origin resource sharing (CORS):ON
  • Allow all domains without '*':ON
  • Access-Control-Allow-Methods:GET, PUT, POST, OPTIONS
  • Access-Control-Allow-Headers:Authorization

設定への変更を保存します。

Configuring CORS settings

RunMyProcess DigitalSuite Studio からPingOne のデータにアクセス

PingOne への接続とOData エンドポイントがあれば、RunMyProcess からPingOne のデータにアクセスできます。

Provider の作成

  1. RunMyProcess にログインして、「DigitalSuite Studio」を開きます。
  2. 「Resources」をクリックしてリソースページを表示したら、「CONNECTORS」タブを選択すると次のような画面が表示されます。 リソースのConnectors タブ
  3. 「+」(New Provider)ボタンをクリックすると新規プロバイダー作成用の画面が表示されるので、リソースを使用するプロジェクトを選択して、「Confirm」ボタンをクリックします。 新規プロバイダーの作成
  4. プロバイダーの設定画面が表示されるので、次の情報を入力します。
    • URL:CData Connect の「Endpoints」ページにある、次のOData エンドポイントを指定します。https://www.cdatacloud.net/myconnectinstance/api.rsc/
    • Authentication Schema:「Login/Password」を指定します。
    • Login:設定したConnect Server のユーザー名を指定します。
    • Password:上記のユーザー用のAuthtoken に設定します。
    Selecting a connector
  5. 「ACCEPTANCE」、「TEST」タブにも同じ情報を入力します。Note:その際、右上の「Copy this configuration」ボタンをクリックすることで設定をコピーでき、コピー先のタブで「Paste previously copied configuration」ボタンをクリックすることで既存の設定を反映できます。
  6. 完了したら、「Save」をクリックして保存します。

Connector を作成してPingOne のデータを取得

  1. 次に「CONNECTORS」タブから、作成したプロバイダーの右端のボタンをクリックして、メニューから「Add connector」を選択します。
  2. 次のような画面が表示されるので、「Connector URL」にConnect Server で設定したテーブルのOData エンドポイントを指定します。例:odataendpoint/ コネクタの設定画面
  3. 入力したら右上の「Save」ボタンをクリックしたあと、「Launch」ボタンをクリックしてコネクタのテスト実行用の画面を開き、右上の「Launch test」ボタンをクリックして実行します。次のように、指定したテーブルの情報がJSON で返ってくれば成功です。 実行テスト画面

詳細と無料トライアル

これで、RunMyProcess からPingOne のデータに接続できました。PingOne や、その他250以上のデータソースのOData フィードを作成する方法は、Connect Server ページ を参照してください。無料トライアルにサインアップして、RunMyProcess からPingOne のデータに連携してアプリを作成しましょう。

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

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