Web Service Connector ワークフロー ガイド (サンプルREST API)

この記事では、Web データ ソースを使用REST API Web サービス構成ツールについて説明するサンプル REST APIについて説明します。

前提条件

サンプルを使用するには、次の前提条件が必要です。

  • Web サービス構成ツールがインストールされています。
  • REST データ ソースサンプル サービスがデプロイされます。 からサンプルをダウンロードしてインストールします (こちらを参照)。

Note

JSON データには、配列を含む プロパティを持つ 1 つのオブジェクトが含まれている必要があります。

{

"EmployeeList":[

{"id":"1","employee_name":"Albano","employee_salary":"22213","employee_age":"37","profile_image":""},{"id":"2","employee_name":"Albano","employee_salary":"22213","employee_age":"37","profile_image":""}

]

}

Web サービス構成ツールで REST プロジェクトの検出を構成する

次の手順では、Web サービス構成ツールでデータ ソース用の新しいプロジェクトを作成する方法を示します。

  1. Web サービス構成ツールを開きます。 空の SOAP プロジェクトが開きます。

    Web サービス構成ツール

  2. [File New REST Project]選択します

    新しい REST プロジェクトを作成する

  3. 左側で[REST]を選択しProject追加] を選択します

    REST プロジェクトを選択する

  4. 次に表示されるページで、次の情報を指定します。

    • 新しい Web サービス名
    • アドレス (REST API URL パス)
    • 名前空間
    • セキュリティ モード (認証の種類)

    REST サービス

    次の画面は、これらの値の例を示しています。

    REST サービスの値の例

    [セキュリティ モード ] を [なし ] に 設定します。 [アドレス ] を 、Azure でホストされているサンプル JSON サーバーに設定します。

  5. [OK] を選択します。 Web サービス構成ツールに一覧表示されている REST プロジェクト。

    Web サービス構成ツールの REST プロジェクト

  6. 次の手順では、呼び出しREST APIを定義し、その呼び出しを Communication Foundation (WCF) Windows呼び出しに変換します。

    1. REST サービスを展開ProjectRESTSAMPLE サービスを選択します。

    2. [追加] を選択します。 次の 2 つの値を追加するように求めるメッセージが表示されます。

      REST サービスの値を入力する

      1. [名前] を 入力します。 この手順は、スクリーンショットの 3 としてラベル付けされています。
      2. [アドレス] を 入力します。 この手順は、スクリーンショットの 4 としてラベル付けされています。
      3. [OK] を選択します。 REST リソースが RESTSAMPLE サービスの説明に追加されます。
  7. [リソース ] ボックスで、追加した REST リソースを選択します。 次のメソッドを追加します。

    リソースに REST メソッドを追加する

  8. REST メソッドを選択します。 同じリソースに複数のメソッドを作成し、実行中に渡されるクエリを定義することができます。

  9. GETALL メソッドの場合、クエリは必要ありません。 パラメーター値は空白のままにします。 アプリケーションをエクスポートまたはインポートするREST API関数に応じて、サンプル要求 /または応答を定義する必要があります。 このサンプルに移動するときに、JSON の戻り値をコピーして貼り付けます。

  10. [保存] を選択します。 プロジェクトを に保存します C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\Extensions

Note

プロジェクトが保存されると、WsConfig ファイルが生成されます。 構成ファイルには、Web サービスの概要で前に定義した複数のファイルが含まれている。

Web サービス構成ツールでオブジェクトの種類を構成する

次の手順では、Web サービス構成ツールでデータ ソースのオブジェクトの種類を構成する方法を示します。

  1. 次の手順では、コネクタ スペース スキーマを定義します。 これは、オブジェクト型を作成し、そのオブジェクト型を定義することで実現されます。 左側の ウィンドウで [オブジェクトの種類 ] をクリックし、[追加] ボタンをクリック します。 これを行う画面が下に表示されます。 新しいオブジェクト型を追加し、名前を指定します。 [OK] をクリックします。

  2. オブジェクトの種類を追加すると、次の画面が提供されます。

  3. オブジェクトの種類に対応する右側のウィンドウを使用すると、選択したオブジェクトの種類の属性とそのプロパティを維持できます。 [追加] ボタンをクリックすると、属性を追加できる下の画面が表示されます。

  4. 必要なすべての属性を追加すると、次の画面が表示されます。

  5. オブジェクトの種類と属性は、一度作成されると、 で実行される操作に対応する空のワークフローを提供Microsoft Identity Manager (MIM)。

Web サービス構成ツールでワークフローを構成する

次の手順では、オブジェクトの種類のワークフローを構成します。 ワークフロー ファイルは、実行時に Web サービス コネクタによって使用される一連のアクティビティです。 ワークフローは、適切なワークフロー操作を実装MIMされます。 Web サービス構成ツールを使用すると、次の 4 つの異なるワークフローを作成できます。

  • インポート: 次の 2 種類のワークフローのデータ ソースからデータをインポートします。

    • 完全インポート: 構成できる完全なインポート。
    • 差分インポート: Web サービス構成ツールではサポートされていません。
  • エクスポート: 接続されたデータ ソースMIMからデータをエクスポートします。 操作では、次の 3 つのアクションがサポートされています。 これらのアクションは、要件に基づいて構成できます。

    • 追加
    • 削除
    • Replace
  • パスワード: ユーザーのパスワード管理 (オブジェクトの種類) を実行します。 この操作では、次の 2 つのアクションを使用できます。

    • パスワードの設定
    • パスワードの変更
  • テスト接続: データ ソース サーバーとの接続が正常に確立された場合に確認するワークフローを構成します。

Note

これらのワークフローは、プロジェクト用に構成するか、Microsoft ダウンロード センター から既定のプロジェクト をダウンロードできます

ワークフロー デザイナー

このワークフロー デザイナー作業領域を開き、要件に従ってワークフローを構成します。 構成ツールは、すべてのオブジェクトの種類 (新しい /existing) に対して、ツールでサポートされているワークフローのノードを提供します。

ワークフロー デザイナー

次ワークフロー デザイナーは、次の UI 要素で構成されます。

  • 左側のウィンドウのノード: どのワークフローを設計する必要があるのか選択するのに役立ちます。

  • 中央ワークフロー デザイナー:ここでは、ワークフローを構成するためのアクティビティを削除できます。 エクスポート、インポートMIM、パスワード管理など、さまざまな操作を実行するには、.NET Workflow Framework 4 の標準ワークフロー アクティビティとカスタム ワークフロー アクティビティを使用できます。 Web サービス構成ツールでは、標準およびカスタムのワークフロー アクティビティを使用します。 標準アクティビティの詳細については、「アクティビティ デザイナーの 使用」を参照してください

    • 中央のワークフロー デザイナーアクティビティの横に感嘆符が付く赤い円は、操作が削除され、正しく完全に定義されていない状態を示します。 赤い円の上にマウス ポインターを合わせると、正確なエラーが確認されます。 アクティビティが正しく定義された後、赤い円は黄色の情報マークに変わります。

    • 中央のワークフロー デザイナーアクティビティの横にある黄色の三角形の情報マークは、アクティビティが定義されているが、アクティビティを完了するために実行できるその他の情報が表示されます。 黄色の三角形にカーソルを合わせると、詳細が表示されます。

  • ツールボックス: ワークフローを設計するために、システムアクティビティとカスタム アクティビティ、定義済みのステートメントを含むすべてのツールをパッケージします。 詳細については、「ツールボックス」をご覧ください。

  • ツールボックスセクション: ツールボックスには、次のセクションとカテゴリがあります。

    • 説明: ツールボックスのヘッダー。 1 つのタブがツールボックスと、選択したワークフロー アクティビティのプロパティにアクセスします。

    • ワークフローのインポート: インポート ワークフローを構成するカスタム アクティビティ。

    • エクスポート ワークフロー: エクスポート ワークフローを構成するカスタム アクティビティ。

    • 共通: 任意のワークフローを構成するカスタム アクティビティ。

    • デバッグ: ワークフロー 4 で定義されたデバッグ用のシステム ワークフロー アクティビティ。 これらのアクティビティにより、ワークフローの問題の追跡が可能です。

    • ステートメント: ワークフロー 4 で定義されたシステム ワークフロー アクティビティ。 詳細については、「アクティビティ デザイナーの 使用」を参照してください

  • プロパティ: [プロパティ] タブには、デザイナー領域にドロップされ、選択された特定のワークフロー アクティビティのプロパティが表示されます。 左側の図は、Assign アクティビティのプロパティ を示 しています。 アクティビティごとに、プロパティが異なり、カスタム ワークフローの構成中に使用されます。 このタブを使用すると、中央ワークフロー デザイナーにドロップされた選択したツールの属性を定義できます。 詳細については、「 プロパティで定義されているインターフェイスのプライベート C++ 固有の実装です。

  • タスク バー:タスク バーには、変数、引数、インポート の 3つの要素が含まれています。 これらの要素は、ワークフロー アクティビティと共に使用されます。 詳細については、「.NET 4 での Windows Workflow Foundation (WF) の開発者向け概要」を参照してください

Web サービス構成ツールで完全インポート ワークフローを構成する

次の手順では、Web サービス構成ツールを使用して、REST APIの完全なインポート ワークフローを構成する方法を示します。

警告

このサンプルでは、ワークフローのみを作成します。 API でカスタム ロジックを使用するなどのワークフローの変更が必要になる場合があります。

  1. 構成する完全インポート ワークフローを選択します。 引数 とインポート に定義され、アクティビティに固有です。 詳細については、次の画面を参照してください。

    完全インポート ワークフロー引数

    [インポートされた名前空間]

    呼び出しの再構成後、変更する属性の名前を変更するか、API の戻り構造を参照する変数と古い名前空間を参照するオブジェクト型に名前空間を追加する必要があります。 右側のウィンドウのツールボックスには、構成に必要なすべてのカスタム ワークフロー固有のアクティビティが保持されます。 ロジックに使用する変数に値を割り当てる。 中央ワークフロー デザイナーの一番下のセクションに移動し、変数を宣言します。 変数は次の手順で宣言します。

  2. シーケンス アクティビティを追加します。 Sequence アクティビティデザイナーを [ツールボックス] からドラッグし、その上の [シーケンス] Windows ワークフロー デザイナーします。 次の画面を参照してください。 Sequence アクティビティ には、順番に実行される子アクティビティの順序付けされたコレクションが含まれている。

    シーケンス アクティビティ

  3. 変数を追加するには、 [変数の作成 ] を探します。 [名前] に「wsResponse」と入力し、[変数の種類] ドロップダウンを選択し、[型の参照] を選択します ダイアログが表示されます。 [生成されたGETALL 応答] を選択します。 [スコープ] と [既定値] はオフのままにします。 または、[プロパティ] ビューを使用してこれらの値 を設定 します。

    既定の応答

  4. 既に追加されている Sequence アクティビティ 内のツールボックスから、もう 1 つのシーケンス アクティビティ デザイナーをドラッグします。

  5. [共通] の下に表示される WebServiceCallActivityドラッグします。 このアクティビティは、探索後に使用できる Web サービス操作を呼び出す場合に使用されます。 これはカスタム アクティビティであり、さまざまな操作シナリオで一般的です。

    サービス名操作

    Web サービス操作を使用するには、次のプロパティを設定します。

    • サービス名: Web サービスの名前を入力します。

    • エンドポイント名: 選択したサービスのエンドポイント名を指定します。

    • 操作名: サービスのそれぞれの操作を指定します。

    • 引数: [引数 ] を選択します。 次のダイアログで、次の図に示すように、引数の値を割り当てる必要があります。

      引数の割り当て

      重要

      このダイアログを使用して、引数の名前、方向、または型を変更しない。 これらの値が変更された場合、アクティビティは無効になります。 引数の 値のみを 設定します。 この図に示すように、値 wsResponse が 設定されています。

  6. WebServiceCallActivity の下に ForEachアクティビティを追加します。 このアクティビティは、オブジェクト型のすべての属性 (アンカーと非アンカーの両方) を反復処理するために使用されます。 このアクティビティをオブジェクト サーフェスにドラッグワークフロー デザイナー、オブジェクトのすべての属性名が自動的に列挙されます。 次の画面に従って、必要な値を設定します。

    Web サービス呼び出しアクティビティ

  7. 場合によっては、WsConfig ファイル内にあるgenerated.dllを開く必要があります。 この WsConfig ファイルをコピーし、拡張子を使用して名前.zipします。 好みの .NET リフレgenerated.dllを使用して、アプリケーションを開いて抽出します。

    config ファイル

  8. EmployeeList のパブリック名前空間を 特定します

    従業員リスト コード

    次に、この戻り値を ワークフロー ForEach に追加します

    ForEach ワークフローに従業員リストを追加する

  9. ForEach 本文内で CreateCSEntryChangeScopeアクティビティをドラッグ します。 このアクティビティは、ターゲット データ ソースからデータを取得しながら、各レコードのワークフロー ドメインに CSEntryChange オブジェクトのインスタンスを作成するために使用されます。 このアクティビティをドラッグすると、次の画面が表示されます。 CreateAnchorAttribute アクティビティは自動的に継承されます。 DN 値 を優先 ドメイン名に更新します。

    CS エントリ変更スコープ アクティビティを作成する

    Note

    アンカー値とオブジェクト名は、公開されている Web サービスによって異なります。 図は例を示しています。

  10. CreateAttributeChange アクティビティをCreateAnchorAttribute アクティビティの下にドラッグします。 ドラッグするアクティビティの数は、アンカー以外の属性の数と同じ数です。 参照については、次の図を参照してください。

    アンカーの作成

    Note

    このアクティビティを使用するには、ドロップダウンからそれぞれのフィールドを選択して割り当て、値を割り当てる必要があります。 複数値属性の場合は、CreateAttributeChangeActivityアクティビティ内に複数のCreateValueChangeActivityアクティビティを削除します。

  11. このプロジェクトを の場所に保存します %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions 。 次に、「Web サービス MA の構成」の説明 に従って管理エージェントを構成します

    REST プロジェクトを保存する

    既定のプロジェクトは、ターゲット システム上の場所に %FIM_INSTALL_DIR\2010\Synchronization Service\Extensions ダウンロードして保存する必要があります。 その後、Web サービス コネクタ ウィザードにプロジェクトが表示されます。

    実行可能ファイルを実行するときに、インストールの場所を指定するように求めるメッセージが表示されます。 保存場所を入力します。

    重要

    プロジェクト ファイルは、任意の場所 (Executor の適切なアクセス特権を持つ) から保存および開くことができる。 フォルダーに保存されているプロジェクト ファイルのみを、同期 UI からアクセスする Web サービス コネクタ Synchronization Service\Extension ウィザードMIM選択できます。

    Web サービス構成ツールを実行しているユーザーには、次の特権が必要です。

    • Synchronization Service Extension フォルダーへのフル コントロール。
    • 拡張フォルダー パスが格納されている HKLM\System\CurrentControlSet\Services\FIMSynchronizationService\Parameters レジストリ キーへの読み取りアクセス。

次のステップ