Power Automate の自動タスクで CData API Server およびAlloyDB ADO.NET Provider を使う

加藤龍彦
加藤龍彦
デジタルマーケティング
コンタクト先へのE メール送信、SNS へのポスト、CRM やERP の同期などを自動化します。



Power Automate (旧Microsoft Flow) は、オンプレやクラウドの複数のシステムからのデータを含むタスクを自動化することができます。CData API Server を使用すると、ユーザーはPower Automate のAlloyDB トリガーに基づくアクションのネイティブな作成が可能になります。API Server は、Power Automate などのSaaS アプリケーションを、OData やSwagger などのデータアクセス標準を通じてAlloyDB とシームレスに統合できます。この記事では、Power Automate のウィザードとAlloyDB API Server を使い、検索条件に一致するエンティティであるトリガーを作成し、結果に基づいて電子メールを送信する方法を示します。

API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなAlloyDB OpenAPI サービスを作成していきましょう。

AlloyDB への接続

Power Automate からAlloyDB のデータを操作するには、まずAlloyDB への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「AlloyDB」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、AlloyDB への接続設定を行っていきましょう! 接続設定
  5. AlloyDB 接続プロパティの取得・設定方法

    AlloyDB に接続するには、次の接続プロパティが必要です。

    • Server:AlloyDB データベースをホスティングしているサーバーのホスト名またはIP アドレス。
    • Port(オプション):AlloyDB データベースをホスティングしているサーバーのポート。このプロパティはデフォルトで5432に設定されます。
    • User:AlloyDB サーバーに認証する際に使われるユーザー。
    • Password:AlloyDB サーバーに認証する際に使われるパスワード。
    • Database(オプション):AlloyDB サーバーに接続する場合のデータベース。設定されていない場合は、ユーザーのデフォルトデータベースが使用されます。

    AlloyDB への認証

    標準認証

    標準認証(事前に提供されたユーザーとパスワードの組み合わせを使用)は、デフォルトの認証形式です。

    標準認証で接続する場合は、これ以上のアクションは必要ありません。

    pg_hba.conf 認証スキーム

    CData 製品がサポートしている他の認証方法では、AlloyDB サーバー上のpg_hba.conf ファイルで有効化する必要があります。

    AlloyDB サーバーでの認証の設定については、こちらを参照してください。

    MD5

    pg_hba.conf ファイルのauth-methodmd5 に設定すると、MD5 パスワード検証を使用して認証できます。

    SASL

    CData 製品は、SASL(特にSCRAM-SHA-256)でパスワードを検証することで認証できます。

    この認証方法を使用するには、pg_hba.conf ファイルのauth-methodscram-sha-256 に設定します。

    Kerberos

    Kerberos 認証は、CData 製品が接続を試行している際にAlloyDB サーバーで開始されます。この認証方法を有効化するには、AlloyDB サーバーでKerberos を設定します。AlloyDB サーバーでのKerberos 認証の設定を完了したら、CData 製品からKerberos 認証を行う方法については、ヘルプドキュメントの「Kerberos の使用」セクションを参照してください。

  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

AlloyDB 接続プロパティの取得・設定方法

AlloyDB に接続するには、次の接続プロパティが必要です。

  • Server:AlloyDB データベースをホスティングしているサーバーのホスト名またはIP アドレス。
  • Port(オプション):AlloyDB データベースをホスティングしているサーバーのポート。このプロパティはデフォルトで5432に設定されます。
  • User:AlloyDB サーバーに認証する際に使われるユーザー。
  • Password:AlloyDB サーバーに認証する際に使われるパスワード。
  • Database(オプション):AlloyDB サーバーに接続する場合のデータベース。設定されていない場合は、ユーザーのデフォルトデータベースが使用されます。

AlloyDB への認証

標準認証

標準認証(事前に提供されたユーザーとパスワードの組み合わせを使用)は、デフォルトの認証形式です。

標準認証で接続する場合は、これ以上のアクションは必要ありません。

pg_hba.conf 認証スキーム

CData 製品がサポートしている他の認証方法では、AlloyDB サーバー上のpg_hba.conf ファイルで有効化する必要があります。

AlloyDB サーバーでの認証の設定については、こちらを参照してください。

MD5

pg_hba.conf ファイルのauth-methodmd5 に設定すると、MD5 パスワード検証を使用して認証できます。

SASL

CData 製品は、SASL(特にSCRAM-SHA-256)でパスワードを検証することで認証できます。

この認証方法を使用するには、pg_hba.conf ファイルのauth-methodscram-sha-256 に設定します。

Kerberos

Kerberos 認証は、CData 製品が接続を試行している際にAlloyDB サーバーで開始されます。この認証方法を有効化するには、AlloyDB サーバーでKerberos を設定します。AlloyDB サーバーでのKerberos 認証の設定を完了したら、CData 製品からKerberos 認証を行う方法については、ヘルプドキュメントの「Kerberos の使用」セクションを参照してください。

API Server のユーザー設定

次に、API Server 経由でAlloyDB にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

AlloyDB 用のAPI エンドポイントの作成

ユーザーを作成したら、AlloyDB のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OpenAPI のエンドポイントを取得

以上でAlloyDB への接続を設定してユーザーを作成し、API Server でAlloyDB データのAPI を追加しました。これで、OpenAPI 形式のAlloyDB データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

AlloyDB 接続プロパティの取得・設定方法

AlloyDB に接続するには、次の接続プロパティが必要です。

  • Server:AlloyDB データベースをホスティングしているサーバーのホスト名またはIP アドレス。
  • Port(オプション):AlloyDB データベースをホスティングしているサーバーのポート。このプロパティはデフォルトで5432に設定されます。
  • User:AlloyDB サーバーに認証する際に使われるユーザー。
  • Password:AlloyDB サーバーに認証する際に使われるパスワード。
  • Database(オプション):AlloyDB サーバーに接続する場合のデータベース。設定されていない場合は、ユーザーのデフォルトデータベースが使用されます。

AlloyDB への認証

標準認証

標準認証(事前に提供されたユーザーとパスワードの組み合わせを使用)は、デフォルトの認証形式です。

標準認証で接続する場合は、これ以上のアクションは必要ありません。

pg_hba.conf 認証スキーム

CData 製品がサポートしている他の認証方法では、AlloyDB サーバー上のpg_hba.conf ファイルで有効化する必要があります。

AlloyDB サーバーでの認証の設定については、こちらを参照してください。

MD5

pg_hba.conf ファイルのauth-methodmd5 に設定すると、MD5 パスワード検証を使用して認証できます。

SASL

CData 製品は、SASL(特にSCRAM-SHA-256)でパスワードを検証することで認証できます。

この認証方法を使用するには、pg_hba.conf ファイルのauth-methodscram-sha-256 に設定します。

Kerberos

Kerberos 認証は、CData 製品が接続を試行している際にAlloyDB サーバーで開始されます。この認証方法を有効化するには、AlloyDB サーバーでKerberos を設定します。AlloyDB サーバーでのKerberos 認証の設定を完了したら、CData 製品からKerberos 認証を行う方法については、ヘルプドキュメントの「Kerberos の使用」セクションを参照してください。

また、CORS を有効にし、[Settings]->[Server]ページで次のセクションを定義する必要があります。[*]なしですべてのドメインを許可するオプションを選択することもできます。

  1. Access-Control-Allow-Origin:[*]の値に設定するか、接続を許可するドメインを指定します。
  2. Access-Control-Allow-Methods:値を[GET,PUT,POST,OPTIONS]に設定します。
  3. Access-Control-Allow-Headers:[x-ms-client-request-id, authorization, content-type]に設定します。

簡単にするために、API ユーザーの認証トークンをURL で渡すことができます。データディレクトリにあるsettings.cfg ファイルの[Application]セクションに設定を追加する必要があります。Windows でこれは、アプリケーションルートのapp_data サブフォルダにあたります。Java エディションでは、データディレクトリの場所はオペレーティングシステムによって異なります。

  1. Windows:C:\ProgramData\CData
  2. Unix or Mac OS X: ~/cdata
[Application]
AllowAuthtokenInURL = true

AlloyDB のデータをPower Automate に追加する

組み込みのHTTP + Swagger コネクタを使用し、ウィザードを使用してAlloyDB プロセスフローを設計できます。

  1. [Power Automate]で、[My Flows]->[Create from Blank]をクリックします。
  2. [Recurrence]アクションを選択し、電子メールを送信する時間間隔を選択します。この記事では、[1日]にします。
  3. Swagger を検索してHTTP + Swagger アクションを追加します。
  4. Swagger メタデータドキュメントのURL を入力します。
    https://MySite:MyPort/api.rsc/@MyAuthtoken/$oas
  5. [Return Orders]操作を選択します。
  6. AlloyDB を取得するためのOData クエリを作成します。この記事では、$filter ボックスで次のOData フィルタ形式を定義します。

    ShipCountry eq 'USA'

    サポートされているOData のフィルタリングと例の詳細については、API Server のヘルプドキュメントを参照してください。

The wizard to build the OData query.(Salesforce is shown.)

アクションをトリガー

これで、プロセスフローでOrders エンティティを操作できます。以下のステップに従って、自動メールを送信します。

  1. メール送信アクションであるSMTP を追加します。
  2. SMTP サーバーのアドレスと資格情報を入力し、接続に名前を付けます。サーバーでサポートされている場合には、必ず暗号化を有効にしてください。
  3. メッセージのヘッダーと本文を入力します。これらのボックスにAlloyDB カラムを追加できます。 An email to be populated with results from an OData query.(Salesforce is shown.)

おわりに

この記事では、CData API Server を使用して、Power Automate からAlloyDB データにアクセスする方法を説明しました。これにより、ビジネスプロセスを自動化し、効率を向上させることができます。API Server の設定やユーザー管理、OpenAPI エンドポイントの作成など、さまざまなステップを経て、最終的にPower Automate でのデータ操作が可能になります。

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

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ