次の方法で共有


Active Directory ロールの使用のサンプル

Download sample

このサンプルは、ワークフローで Active Directory ロールを使用する方法を示します。

大まかなシナリオは次のとおりです。

  1. PurchaseOrderWorkflow という名前のワークフローがインスタンス化されます。

  2. PurchaseOrderWorkflow を開始できる社員は、SetupRoles CodeActivity アクティビティ内に作成された ActiveDirectoryRole オブジェクトに指定されている従業員だけです。

  3. HandleExternalEventActivity アクティビティは、IStartPurchaseOrder インターフェイスに定義されている InitiatePurchaseOrder イベントを使用して、発注書の要求を呼び出します。HandleExternalEventActivity アクティビティは、イニシエータが構成済み ActiveDirectoryRole のメンバである場合にのみ発注書を開始できます。イニシエータ (社員) ID は、ワークフロー サンプルを実行しているユーザーの ID であるとします。

Noteメモ :

HandleExternalEventActivity に対するロール ベースのチェックは、ホスト環境のドメイン内にある Active Directory グループを使用して行われます。Active Directory グループをサポートするには、NT ドメインに Active Directory を展開するか、ローカル コンピュータに Active Directory Application Mode (ADAM) を展開する必要があります。そのため、このサンプルを意図したとおりに動作させるには、AD または ADAM を展開する必要があります。

サンプルを設定、ビルド、および実行するには

  1. [サンプルのダウンロード] をクリックしてサンプルをダウンロードします。

    サンプル プロジェクトがローカル コンピュータのハード ディスクにダウンロードされます。

  2. ActiveDirectoryRoles.sln を開いて、次のように PurchaseOrderWorkflow.cs ファイルを変更します。

    • 次のパラメータを変更して、ログインしているユーザーを確認するための実際の Active Directory グループを反映させます。

      C#:
      ActiveDirectoryRole poInitiatorsRole = ActiveDirectoryRoleFactory.CreateFromAlias("ADGroup");
      Visual Basic:
      Dim poInitiatorsRole As ActiveDirectoryRole = ActiveDirectoryRoleFactory.CreateFromAlias("ADGroup")
      
    Noteメモ :

    ログインしているユーザーがこの Active Directory グループのメンバであるようにしてください。

  3. [スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft Windows SDK] をポイントし、[CMD シェル] をクリックします。

  4. サンプルのソース ディレクトリに移動します。

  5. コマンド プロンプトで、「MSBUILD <ソリューション ファイル名>」と入力します。

  6. PurchaseOrderWorkflow\bin\debug フォルダ (このサンプルの VB バージョンでは PurchaseOrderWorkflow\bin フォルダ) にある .exe ファイルを実行します (このサンプルでは、ソース フォルダの下にあります)。

    ロールのチェックが成功すると、サンプルからの出力は次のようになります。

    Purchase Order initiated by: <DOMAIN>\<username>
    PO Initiated successfully
    Workflow has completed.
    

Active Directory の詳細については「ディレクトリおよび ID サービス」を参照してください。

関連項目

参照

ActiveDirectoryRole
HandleExternalEventActivity
Roles

その他の技術情報

Using Roles in Workflows

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.