Microsoft AzureのWebアプリケーションを取得してフィルタリングし、GISTを作成
このシナリオは、パイプラインでコネクターを簡単にセットアップして使用できるようにすることを目的としています。お使いの環境とユースケースに適応させてください。
始める前に
- Microsoft Azureアプリケーションを作成して登録済みであること。
- OAuth 2.0クライアント認証の許可フローアクセスを設定済みであること。
- GitHub gist APIを利用できるよう、パーソナルアクセストークン(PAT)を作成済みであること。
手順
- [Connections] (接続) > [Add connection] (接続を追加)をクリックします。
-
開いたパネルで、作成する接続のタイプを選択します。
例
Azure OAuth Client credentials -
[Engine] (エンジン)リストでエンジンを選択します。
情報メモ注:
- データの高度処理の場合は、Cloud Engine for DesignではなくRemote Engine Gen2を使用することをお勧めします。
- Talend Management Consoleから作成されたRemote Engine Gen2がないか、存在していても稼働中ではないステータスの場合は、リストで接続の[Connection type] (接続タイプ)を選択することも、新しい接続を保存することもできません。
- 使用可能な接続タイプのリストは、選択したエンジンによって異なります。
-
作成する接続のタイプを選択します。
ここでは、[HTTP Client] (HTTPクライアント)を選択します。
-
HTTP Clientプロパティでの説明にあるとおり、呼び出すサーバーの接続プロパティとURLアドレスを入力し、接続をチェックして[Validate] (認証)をクリックします。この例では、Microsoft Azureアプリをリスト表示するhttps://graph.microsoft.com/v1.0/サービスが呼び出されます。
- [Base URL] (ベースURL): https://graph.microsoft.com/v1.0/
- [Authentication type] (認証タイプ): OAuth 2.0を選択します。
- [Flow] (フロー): [Client credentials] (クライアント認証情報)を選択します。
- [Authentication mode] (認証モード): FORMを選択します。
- [Token endpoint] (トークンエンドポイント): https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/tokenと入力します。
- [Client ID] (クライアントID)と[Client secret] (クライアントシークレット): Azure WebアプリケーションIDとクライアントシークレットを入力します。
- [Additional parameters] (追加パラメーター): scope属性としてhttps://graph.microsoft.com/.defaultと入力します。
- [Add dataset] (データセットを追加)をクリックすると、接続が検証され、該当するデータセットが作成されます。
-
[Add a new dataset] (新しいデータセットを追加)パネルで、データセットに名前を付けます。
例
Azure apps -
必要なプロパティを入力してサービスを呼び出し、[View sample] (サンプルを表示)をクリックしてデータセットサンプルのプレビューを表示します。
- [Type] (タイプ): サービスを1回だけ呼び出す場合は[Batch] (バッチ)を選択します。
- [HTTP method] (HTTPメソッド): GETを選択します。
- [Path] (パス): Applicationsと入力し、最終URLがhttps://graph.microsoft.com/v1.0/Applicationsとなるようにします。
- [Parameters] (パラメーター)オプションを無効にします。
-
[Query parameters] (クエリーパラメーター)オプションを有効にして次のパラメーターを追加します。
("$select", "appId,displayName,createdDateTime,publisherDomain")
そして
("$filter", "createdDateTime ge 2022-12-01T00:00:00.000Z")
- [Request headers] (リクエストヘッダー)オプションと[Request body] (リクエストボディ)オプションを無効にします。
- [Response body format] (レスポンスボディ形式): JSONを選択します。
- [Extract Sub-part of the JSON] (JSONのサブ部分を抽出): .valueと入力し、このJSONフィールドからレコードを取得します。
- [Returned content] (返されたコンテンツ): Bodyを選択します。
- [Validate] (検証)をクリックしてデータセットを保存します。
- [Connections] (接続) > [Add connection] (接続を追加)をクリックします。
-
開いたパネルで、作成する接続のタイプを選択します。
例
Git PAT - [Engine] (エンジン)リストでエンジンを選択します。
-
HTTP Clientプロパティでの説明にあるとおり、呼び出すサーバーの接続プロパティとURLアドレスを入力し、接続をチェックして[Add dataset] (データセットを追加)をクリックします。この例では、https://api.github.comサービスが呼び出されます。
- ベースURL: https://api.github.com
- [Authentication type] (認証タイプ): [Bearer token] (Bearerトークン)を選択します。
- [Bearer Access token] (Bearerアクセストークン): 前に作成したパーソナルアクセストークンを入力します。
- [Add dataset] (データセットを追加)をクリックすると、接続が検証され、該当するデータセットが作成されます。
-
[Add a new dataset] (新しいデータセットを追加)パネルで、データセットに名前を付けます。
例
GIST CREATE -
必要なプロパティを入力してサービスを呼び出し、[View sample] (サンプルを表示)をクリックしてデータセットサンプルのプレビューを表示します。
- [HTTP method] (HTTPメソッド): POSTを選択します。
- [Path] (パス): gistsと入力し、最終的なURLがhttps://api.github.com/gistsとなるようにします。
- [Parameters] (パラメーター)オプションと[Query parameters] (クエリーパラメーター)オプションを無効にします。
-
[Request headers] (リクエストヘッダー)オプションを有効にし、[Main] (メイン)クエリーに次の行を追加します:
("Accept", "application/vnd.github+json")
および
("X-GitHub-Api-Version", "2022-11-28")
-
[Request body] (リクエストボディ)オプションを有効にしてJSONを選択し、次の行を貼り付けます。
{ "description":"Azure application {.input.displayName}", "public":false, "files":{ "AzureApp_{.input.appId}.xml":{"content":"<?xml version=\"1.0\"?>\n<application>\n <id>{.input.appId}</id>\n <name>{.input.displayName}</name>\n <createdDate>{.input.createdDateTime}</createdDate>\n <domain>{.input.publisherDomain}</domain>\n</application>" } } }
- [Answer body format] (回答ボディの形式): TEXTを選択します。
- [Returned content] (返されたコンテンツ): Bodyを選択します。
- [Validate] (検証)をクリックしてデータセットを保存します。
- [Pipelines] (パイプライン)ページで[Add pipeline] (パイプラインを追加)をクリックします。新しいパイプラインが開きます。
-
パイプラインに意味のある名前を付けます。
例
Retrieve Azure apps & filter them on creation date -
[ADD SOURCE] (ソースを追加)をクリックし、パネルが開いたら、Azure appsというソースデータセットを選択します。
取得されたMicrosoft Azureアプリのサンプルが表示されます。
- [ADD DESTINATION] (デスティネーションを追加)項目をクリックし、開いたパネルで、デスティネーションデータセットであるGIST CREATEを選択します。
- Talend Cloud Pipeline Designerの上部ツールバーで[Run] (実行)ボタンをクリックするとパネルが開き、実行プロファイルを選択できるようになります。
- リストで実行プロファイルを選択し(詳細は実行プロファイルをご覧ください)、[Run] (実行)をクリックしてパイプラインを実行します。
タスクの結果
パイプラインは実行中となり、Microsoft Graphサービスから起動されたAzureアプリはフィルタリングされてGitHub GISTに送信されます。ここで各アプリケーションのコンテンツが作成されます。