Unqork でPingOne に接続されたアプリケーションを作成

杉本和也
杉本和也
リードエンジニア
CData Connect AI を使ってUnqork にPingOne のデータを渡し、カスタムの業務アプリを作成。

概要

CData Connect AI を使えば、Unqork からPingOne のデータを取得できます。そのデータを使って、カスタムの業務アプリケーションをドラッグドロップ操作で作成できます。この記事ではそのための手順を説明します。

Unqork はあらゆる操作を視覚的に実行できるノーコードの開発プラットフォームで、大企業の複雑なカスタムソフトウェア作成を支援します。CData Connect AI はPingOne をREST エンドポイントとして公開するので、Unqork 側で簡単なHTTP リクエストを使ってクエリできます。この方法で、PingOne のデータを使ったカスタムアプリケーションを作成できます。

この記事を読んでわかること

本記事では、次の点について説明します。

  • CData Connect AI のユーザーを追加する方法。
  • Connect AI ユーザー用のパーソナルアクセストークンを追加する方法。
  • Connect AI からPingOne に接続する方法。
  • Connect AI にPingOne OData エンドポイントを追加する方法。
  • Connect AI 経由でPingOne をUnqork サービスとして登録する方法。
  • PingOne のデータを表示するための簡単なUnqork アプリケーションを作成する方法。

CData Connect AI を構成する

Unqork からPingOne のデータを扱うには、以下の手順が必要です。

  • CData Connect AI からPingOne に接続。
  • CData Connect AI で新しいコネクションにユーザーアクセス権限を追加。
  • PingOne のデータのOData エンドポイントを作成。

(オプション)新しいConnect AI ユーザーを追加

必要な際には、Connect AI 経由でPingOne に接続するユーザーを作成してください。

  1. Users ページに移動して、 Invite Users をクリックします。
  2. 新しいユーザーのE メールアドレスを入力して、 Send to invite the user をクリックします。 新しいユーザーを招待
  3. Users ページからユーザーを確認、変更できます。 Connect AI ユーザー

パーソナルアクセストークンを追加する

OAuth 認証をサポートしないサービス、アプリケーション、プラットフォーム、フレームワークから接続する場合、パーソナルアクセストークン(Personal Access Token, PAT)を認証に使用できます。きめ細かくアクセスを管理するために、サービスごとに個別のPAT を作成するのがベストプラクティスです。

    1. User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
    2. PAT の名前を入力して Create をクリックします。 新しいPAT を作成
    3. パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。

    Connect AI からPingOne に接続する

    CData Connect AI は直感的なクリック操作ベースのインターフェースを使ってデータソースに接続します。
    1. Connect AI にログインし、 Add Connection をクリックします。 コネクションを追加
    2. Add Connection パネルから「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

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

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

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

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

      コネクションの設定(Salesforce の例)
    4. Create & Test をクリックします。
    5. Add PingOne Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。 権限の更新

    Connect AI にPingOne のOData エンドポイントを追加する

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

    1. OData ページに移動して、 Add をクリックそ新しいOData エンドポイントを作成します。
    2. PingOne のコネクション(例:PingOne1)を選択し、Next をクリックします。
    3. 使用するテーブルを選択し、Confirm をクリックします。 テーブルを選択(Salesforce の例)

    OData フィードのサンプルURL

    PingOne への接続を構成してユーザーを作成し、Connect AI でOData エンドポイントを作成すると、PingOne のデータのOData フィードにアクセスできるようになります。 以下は、テーブルにアクセスするためのURL とテーブルのリストです。テーブルへのアクセスについては、Connect AI のOData ページを参照してください。 URL はConnect AI のものが必要です:https://cloud.cdata.com/api/odata/service

    テーブル         URL
    エンティティ(テーブル)一覧 https://cloud.cdata.com/api/odata/service/
    メタデータ https://cloud.cdata.com/api/odata/service/$metadata
    [CData].[Administrators].Users https://cloud.cdata.com/api/odata/service/[CData].[Administrators].Users

    通常のOData フィードについては、返されるフィールドを制限したい場合は、クエリに$select パラメータと$filter、$orderby、$skip、$top といった他の一般的なOData URL パラメータを組み合わせて追加できます。 サポートされているOData クエリの詳細についてはヘルプドキュメントを参照してください。

    コネクションとOData エンドポイントを設定したら、Unqork からPingOne のデータに接続できます。

    PingOne のデータを使った簡単なアプリケーションを作成

    Connect AI でPingOne のREST API を設定したら、PingOne に接続したアプリケーションをUnqork で作成できます。以下がそのための基本的な手順です。

    • PingOne をUnqork サービスとしてConnect AI 経由で登録
    • Unqork 内にワークスペースを作成
    • module-type のアプリケーションを作成

    PingOne をUnqork サービスとしてConnect AI 経由で登録

    Connect AI に接続するには、ご利用の環境に外部サービスへの接続権限を付与する必要があります。Services Administration から付与を実行してください。

    1. Unqork Designer Platform の右上端にある、Settings ドロップダウンメニューをクリックします。
    2. Administration をクリックします。
    3. Integrations 以下の、Services Administration をクリックします。
    4. Service Title を入力します。例えば、Connect AI
    5. Service Name を入力します。例えば、cdataConnect
    6. Service protocol + host を入力します。これは参照したいAPI エンドポイントのことです。例えば、 https://cloud.cdata.com/api/odata/service
    7. Type of Authentications ドロップダウンメニューからBasic Auth を選択します。
    8. Connect AI のユーザーID(例:[email protected])をUser Name フィールドに入力します。
    9. Connect AI のユーザーのPAT をPassword フィールドに入力します。 Connect AI 用のサービスを追加
    10. Add Service をクリックします。

    Workspace を作成する

    Unqork では自身のワークスペースを作成することができ、それが自身やチームがアプリケーションを保存したり整理したりする仮想コンテナとなります。ワークスペースを作成したら、そこにアプリケーションを追加できます。

    ワークスペースを作成するには、以下の手順を実行します。

    1. Create Workspace をクリックします。
    2. 一意のWorkspace Name を入力します。
    3. Create をクリックします。

    作成したワークスペースタイルがWorkspaces タブ以下に表示されます。

    Module-Type のアプリケーションを作成する

    ワークスペースを追加したら、アプリケーションを作成できます。module-type もしくはworkflow-type のアプリケーションを選択できます。今回の例では、module-type のアプリケーションを作成します。

    1. 開いたワークスペースからApps に移動します。
    2. Create Workspace をクリックします。
    3. 一意のApp Name を入力します。
    4. Style ドロップダウンメニューからプレビュースタイルを選択します。スタイルはアプリケーションの外観を指定します。空白にした場合は、アプリケーションは環境のデフォルトスタイルを使用します。
    5. App Type ドロップダウンメニューからModule を選択します。
    6. App Entrypoint Module ドロップダウンメニューからNew Entrypoint Module を選択します。
    7. Create をクリックします。

    新しいアプリケーションのModules タブに移動します。次のように表示されます。

    新しいアプリケーションのModule タブ。

    モジュールに名前をつけるには、Module Editor でタイトルをクリックします。

    アプリケーションの作成を完了するには、次のコンポーネントが必要です。

    • Hidden コンポーネント:Plug-In で取得したデータを格納します。
    • Initializer コンポーネント:テーブルを表示する際にPlug-In を実行します。
    • Plug-In コンポーネント:Connect AI からPingOne のデータを取得してHidden コンポーネントに格納します。
    • ViewGrid コンポーネント:Hidden コンポーネントに格納したデータからHTML テーブルを作成します。

    Hidden コンポーネントを設定する

    Hidden コンポーネントはConnect AI から取得したPingOne のデータを格納します。

    1. Hidden コンポーネントをキャンバスにドラッグドロップします。
    2. Property IDCanvas Label Text を入力します。

      NOTE:Property ID はキャメルケース(camelCase のように)にする必要があります。例えば、hiddenComponent です。Hidden コンポーネントユーザーには表示されないので、Property ID をCanvas Label Text として使用してください。

    3. Save をクリックします。

    Plug-In コンポーネントを設定する

    次に、Connect AI にデータをリクエストするためのPlug-In コンポーネントを追加します。このコンポーネントは、Service Administration で設定したサービスに接続します。

    1. Plug-In コンポーネントを、キャンバスのHidden コンポーネントの下にドラッグドロップします。
    2. Property IDCanvas Label Text を入力します。

      NOTE:キャメルケース(camelCase のように)を使用する必要があります。Plug-In のProperty ID はplugin で始めるのがベストプラクティスです。例えば、pluginGetAWProducts

    3. Outputs テーブルを次のように設定します。
      • Hidden コンポーネントのProperty ID をProperty ID カラムに入力します。
      • valueMapping カラムに入力します。
    4. Service Type としてExternal を選択します。
    5. External Services ドロップダウンメニューから、Connect AI サービスを選択します。これは、Services Administration で設定した外部サービスです。
    6. Data Sources URL の最後にConnect AI リソースの特定のエンドポイントを追加します。例えば、AdventureWorks2012_Production_Product です。 Connect AI の特定のエンドポイントをハイライト

      NOTE:データソースのURL は、https://cloud.cdata.com/api/odata/service/AdventureWorks2012_Production_Product と類似の値となります。

    7. Save をクリックします。

    Initializer コンポーネントを設定する

    Initializer コンポーネントは、PingOne のデータを取得するPlug-In を実行するためのものです。

    1. Initializer コンポーネントを、キャンバスのPlug-In コンポーネントの上にドラッグドロップします。
    2. Property IDCanvas Label Text を入力します。

      NOTE:キャメルケース(camelCase のように)を使用する必要があります。Initializer のProperty Name はinit で始めるのがベストプラクティスです。例えば、initGetAWProducts です。

    3. Trigger Type としてNew Submission を設定します。
    4. Outputs テーブル内に次を入力します。
      • Plug-In のProperty ID をProperty ID カラムのフィールドに入力します。
      • Type カラムのフィールドにtrigger と入力します。
      • Value カラムのフィールドにGO と入力します。
    5. Save をクリックします。

    ViewGrid コンポーネントを設定する

    ViewGrid コンポーネントはHidden コンポーネントに格納されたデータを参照します。その後、ダッシュボード(またはテーブル)にPingOne のデータを表示します。

    1. ViewGrid コンポーネントを、キャンバスのPlug-In コンポーネントの下にドラッグドロップします。
    2. LabelProperty Name を入力します。

      NOTE:キャメルケース(camelCase のように)を使用する必要があります。ViewGrid のProperty Name はvg で始めるのがベストプラクティスです。例えば、vgAWProductView です。

    3. Inputs テーブルで、id をHidden コンポーネントのProperty ID に設定します。
    4. Display テーブルで次を設定します。
      • id カラム内に、表示したいフィールドのID を入力します。
      • handing カラムに、各フィールド用のタイトルを入力します。フィールドは、自身とユーザーに次のように表示されます。
      ViewGrid インプットと表示を設定
    5. Save をクリックします。
    6. Save ボタンでモジュールを保存します。

    上のコンポーネントを追加、設定したら、アプリケーションの自身とユーザーへの表示をプレビューできます。Module Editor で、Preview Module をクリックしてモジュールの前からの表示("Express View")を確認できます。

    Express View モジュールは次のように表示されます。

    Module のプレビュー

    詳細と無料トライアル

    Connect AI とUnqork を組み合わせれば、PingOne に接続できるアプリケーションを簡単に作成できます。Connect AI の無償トライアルを始めてUnqork からすぐにPingOne のデータにアクセスしましょう。

はじめる準備はできましたか?

CData Connect AI の詳細、または無料トライアルにお申し込みください:

無料トライアル