使用 Active Directory 角色範例

Download sample

本範例會示範如何在工作流程中使用 Active Directory 角色。

以下是高階的案例:

  1. 名為 PurchaseOrderWorkflow 的工作流程會具現化 (Instantiated)。

  2. 可以初始化 PurchaseOrderWorkflow 的員工會限制成由 ActiveDirectoryRole 物件指定的人員,而該物件是在 SetupRoles CodeActivity 活動中建立的。

  3. HandleExternalEventActivity 活動會使用定義於 IStartPurchaseOrder 介面中的 InitiatePurchaseOrder 事件來叫用採購單要求。只有在啟動者是已設定 ActiveDirectoryRole 的成員時,HandleExternalEventActivity 活動才會初始化採購單。啟動者 (員工) 身分識別會假設為執行此工作流程範例之人員的身分識別。

Note注意:

使用主機環境之網域中的 Active Directory 群組,針對 HandleExternalEventActivity 進行角色架構檢查。NT 網域中 Active Directory 的部署或是本機電腦上的 Active Directory 應用程式模型 (ADAM) 會支援 Active Directory 群組。因此,必須具有 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 <Solution file name>

  6. 執行 PurchaseOrderWorkflow\bin\debug 資料夾 (若是範例的 VB 版本,則是 PurchaseOrderWorkflow\bin 資料夾) 中的 .exe 檔,該資料夾位於範例來源資料夾的下方。

    如果角色檢查成功,範例的輸出便會與下列相似:

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

如需 Active Directory 的詳細資訊,請參閱:目錄和身分識別服務 (本頁面可能為英文)。

請參閱

參考

ActiveDirectoryRole
HandleExternalEventActivity
Roles

其他資源

Using Roles in Workflows

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.