Share via


農作業データ プロバイダーとの統合

Azure Data Manager for Agriculture は、さまざまな農業機械データ ソースからエンドユーザーのデータを便利に同期するためのコネクターをサポートしています。 [農作業データ プロバイダーと統合するための前提条件としての oAuth フローの構成] では、ADMA データ資産を最新の状態に維持するために、初期データと増分データ同期を処理するアカウントごとの透過的な同意手順を設定します。

Note

手順 1 から 3 は、1 つのプロバイダーにつき 1 回限りの初期構成の一部です。 統合されると、すべてのエンド ユーザーが既存の oAuth ワークフローを使用できるようになり、ユーザー (PartyID) ごとに構成 API (ステップ 4) を呼び出してアクセス トークンを取得できるようになります。

プロバイダーのセットアップ

こちらのフロー例では、Climate FieldView を使用しています

手順 1: アプリの作成

アプリケーションがまだ Climate Fieldview に登録されていない場合は、FieldView ポータルにアクセスし、フォームを送信してください。 FieldView が要求を処理すると、FieldView 用の ADMA インスタンスごとに使用する client_idclient_secret が送信されます。

手順 2: プロバイダーの構成

oAuthProvider API を使用して、新しく作成されたアプリの適切な資格情報を使用して oAuth プロバイダー (例: FIELDVIEW) を作成または更新します。

API ドキュメント: oAuthProviders - 作成または更新

省略可能な手順: 操作が完了したら、oAuthProviders_Get を実行してアプリケーションが登録されているかどうかを確認できます。 これで、Azure Data Manager for Agriculture インスタンスに作成されたすべてのパーティは、FieldView をプロバイダーとして使用して農作業データを取得できるようになります。

手順 3: サービス エンドポイントの構成

ユーザー リダイレクト エンドポイント: このエンドポイントは、oAuth フローが完了した後にユーザーをリダイレクトさせる場所です。 このエンドポイントが生成され、oauth/tokens/:connect API で userRedirectLink として ADMA に提供されます。 Climate FieldView ポータルのアプリを使用して oAuth コールバック エンドポイントを登録します。

エンド ユーザー アカウントの設定

手順 4: パーティ (エンドユーザー) 統合

パーティ (エンドユーザー) がユーザー アクションが期待される Web ページ (例: [FieldView に接続] ボタン) にアクセスしたら、oauth/tokens/:connect API を以下の方法で呼び出し、oAuth プロバイダー (例: Climate FieldView) のサインイン URI を取得し、エンドユーザー oAuth フローを開始します。

API ドキュメント: oAuthTokens- OAuth 接続リンクを取得する.

oauth/tokens/:connect API APIが oauthAuthorizationLink を正常に返すと、エンドユーザーがこのリンクをクリックし、oAuth フローを完了します (例: Climate FieldView の場合、ユーザーは FieldView アクセス同意とサインイン ページが表示されます)。 サインインが完了すると、ADMA は、次の URI のクエリ パラメーターを使用して、ユーザーを顧客 (userRedirectLink) が指定したエンドポイントにリダイレクトします

  1. 状態 (成功/失敗)
  2. 状態 (顧客側でユーザーを一意に識別するための省略可能な文字列)
  3. メッセージ (省略可能な文字列)
  4. パラメーターの errorCode (成功/失敗に送信される省略可能な文字列)。

Note

API が 404を返した場合、oAuth フローが失敗し、ADMA がアクセス トークンを取得できなかったことを意味します。

手順 5: アクセス トークン情報の確認 (省略可能)

この手順は省略可能で、指定されたユーザーまたはユーザーの一覧について、必要な有効アクセス トークンが取得されているかどうかを確認するためだけのものです。 これは、oauth/tokens API を呼び出して 応答本文内のエントリ isValid: true をチェックすることで実現できます。

API ドキュメント: oAuthTokens - 一覧

この手順は、ユーザーの oAuth フローが正常に完了したことを示します。 これで、ユーザーは新しい FarmOperationsDataJob をトリガーして、Climate FieldView から農作業データのプルを開始する準備が整いました。