3.4 設定工作流程以自動啟動

在安裝提供模組時,如果使用者藉由申請資源而啟動提供申請,則工作流程會自動啟動。 此外,Identity Manager 使用者應用程式驅動程式會監聽 Identity Vault 中的事件,如果設定組態為執行此動作,則會啟動適當的提供工作流程以回應事件。 例如,您可以設定使用者應用程式驅動程式的組態,在將使用者新增至 Identity Vault 時,自動啟動提供工作流程。 您可以使用 Identity Manager 規則 (Policy) 和規則 (Rule) 來設定使用者應用程式驅動程式的組態,以自動啟動工作流程。

3.4.1 關於規則

您可以將過濾器和規則與使用者應用程式驅動程式搭配使用,使用方式與其他 Identity Manager 驅動程式搭配使用方式相同。 當 Identity Vault 中發生事件時,Identity Manager 會建立描述該事件的 XML 文件。 透過通道傳遞 XML 文件至已連接系統 (在此情況下,已連接系統是使用者應用程式)。 與驅動程式相關的過濾器和規則可讓您定義如何回應事件,以及如何在程序中將該 XML 文件轉換為已連接系統預期的格式。 Identity Manager 提供數種規則 (例如,「事件轉換」、「指令轉換」、「綱要映射」、「輸出轉換」),您可依指定順序套用,以轉換 XML 文件。 在本節中,提供根據 Identity Vault 中事件啟動工作流程的範例。 雖然任何規則都可用來觸發工作流程,但是此範例所示範的是最簡單且實用的方法。

當您建立使用者應用程式驅動程式時,會建立「事件轉換規則」以供驅動程式使用。 「事件轉換規則」負責建立將由其餘「訂閱者」通道規則處理的 XML 文件。

附註:請勿變更在建立使用者應用程式驅動程式時,所建立的「事件轉換」規則。 此規則的 DN 以 Manage.Modify.Subscriber 開頭。變更此規則可能會導致工作流程程序失敗。

還會建立空的「綱要映射規則」。 您可以使用此規則做為開始點,以根據 Identity Vault 中的事件觸發工作流程。

3.4.2 設定工作流程以根據 Identity Vaul 中的事件啟動

完成自動啟動工作流程的最簡單方法是使用「綱要映射規則編輯器」,且使用者應用程式驅動程式會提供空白規則讓您編輯。

使用「綱要映射規則編輯器」,將 Identity Vault 屬性 (包含 eDirectory trigger 屬性,在其變更時會啟動工作流程) 映射至目標工作流程的執行時期資料。 執行時期資料由工作流程定義範本決定 (如需工作流程定義範本的相關資訊,請參閱節 22.0, 設定提供申請定義的組態)。 工作流程需要有執行時期資料才能順利完成。 建立工作流程後,會在 Identity Vault 中建立一些全域屬性,這些屬性可用於自定使用者應用程式驅動程式的行為。 全域屬性是不屬於任何 Identity Vault 物件類別的屬性。 這些屬性稱為 <workflowName>_StartWorkflow、<workflowName>_recipient 和 <workflowName>_reason。 還有兩個始終存在的其他屬性,名為 AllWorkflows:reason 和 AllWorkflows:recipient。 _StartWorkflow 屬性可用於啟動工作流程。 _recipient 和 _reason 屬性可用於從 Identity Vault 接受工作流程所需的執行時期資料。

執行此程序之前,您應該瞭解要用做工作流程之觸發的 Identity Vault 屬性名稱。 您還需要瞭解要啟動的工作流程名稱。 所有工作流程都包含名為 <workflowName>_StartApprovalFlow 的特殊屬性。您可以設定工作流程組態,將所需的 eDirectory 屬性映射至工作流程的 <workflowName>_StartApprovalFlow 屬性,以根據 Identity Vault 中的事件自動啟動。

若要設定工作流程以根據 Identity Vaul 中的事件啟動,請執行下列動作:

  1. 在 iManager 中,按一下 iManager 導覽網路樹中 Identity Manager 下的「Identity Manager 概觀」連結。

    描述: 描述: 圖例

    即會顯示「Identity Manager 概觀」頁面。 此頁面會提示您選取驅動程式集。

  2. 按一下「搜尋整個網路樹」;然後按一下「搜尋」。即會顯示「Identity Manager 概觀」頁面,其中有一個圖形表示目前選定驅動程式集中的驅動程式。

  3. 按一下使用者應用程式驅動程式的驅動程式大圖示:

    描述: 描述: 圖例

    即會顯示「Identity Manager 驅動程式概觀」:

    描述: 描述: 圖例

    頂端的水平箭頭代表「發行者」通道 (未在使用者應用程式驅動程式中使用),而底端的水平箭頭則代表「訂閱者」通道。 當滑鼠指標放在圖形中的物件上時,會顯示物件的描述:

    描述: 描述: 圖例
  4. 按一下「訂閱者」通道的「綱要映射規則」圖示。 即會顯示「綱要映射規則」對話方塊,且會將預設綱要映射規則的名稱反白:

    描述: 描述: 圖例
  5. 按一下「編輯」。即會顯示「Identity Manager 規則」對話方塊。 此對話方塊可用於將 Identity Vault 類別映射至應用程式類別。 此程序並未利用此功能。 而是將 eDirectory 屬性映射至全域使用者應用程式屬性。

    描述: 描述: 圖例
  6. 按一下「重新整理應用程式綱要」。即會顯示一則訊息,通知您必須停止驅動程式以讀取綱要,然後重新啟動。 重新整理綱要大約要需要 60 秒。 此步驟會讀取最新工作流程資訊集,以準備下列步驟,它會指定要從 Identity Vault 移至將啟動之工作流程的資訊。

  7. 按一下「確定」,以重新整理綱要。 完成綱要重新整理時會顯示訊息。

  8. 按一下「確定」,以關閉綱要重新整理訊息。 您會返回「Identity Manager 規則」對話方塊。

  9. 按一下「非類別特定的屬性」。即會顯示「Identity Manager 綱要映射規則編輯器」。

    描述: 描述: 圖例

    eDirectory 屬性」下拉式清單包含所有 eDirectory 屬性。

    應用程式屬性」下拉式清單包含所有使用中「工作流程」中的屬性。 清單中的屬性是以 AllWorkflows 開頭 (表示屬性可套用至所有工作流程),或以特定工作流程的名稱開頭。 如果您想要將相同的 eDirectory 屬性 (例如,manager) 映射至所有工作流程的 manager 屬性,則應將 manager 映射至 Allworkflows:manager。如果您想要將不同的 eDirectory 屬性 (例如,HRmanager) 用於特定工作流程,則應將 eDirectory 屬性映射至特定工作流程屬性 (例如,BusinessCardChange:manager)。

    已映射的屬性會並排顯示在「eDirectory 屬性」和「應用程式屬性」欄中。

    在下列步驟中,我們會將要用於啟動工作流程的 eDirectory 屬性,映射至該工作流程的 _StartWorkflow 屬性。 如果工作流程預期其他 eDirectory 屬性,則您也應映射那些屬性。 例如,如果 eDirectory Address 屬性是工作流程的觸發,則工作流程可能也需要 CityState 之類的屬性。此外,規則中也可能映射這些屬性。

  10. 在「應用程式屬性」清單中,選取要設定組態之「工作流程」的 _StartWorkflow 屬性。 下列範例顯示 BusinessCardChange 工作流程的 _StartWorkflow 屬性 (BusinessCardChange_StartWorkflow)。

    描述: 描述: 圖例
  11. 在「eDirectory 屬性」清單中,選取要在該屬性變更時用於啟動工作流程的 eDirectory 屬性。 在下列範例中,已選取 Telephone 屬性。 這表示每當員工的電話號碼變更時,BusinessCardChange 工作流程都會啟動。

    描述: 描述: 圖例
  12. 按一下「新增」,eDirectory 屬性就會映射至「應用程式」屬性。

    描述: 描述: 圖例
  13. 如果工作流程需要其他的 eDirectory 屬性,請重複步驟 10步驟 12,直到您已映射需要映射的所有屬性為止。

    當映射到應用程式 _StartApprovalFlow 屬性的 eDirectory 屬性中發生變更時,工作流程將會自動啟動。 不過,如果 eDirectory 屬性包含於「訂閱者」通道的「驅動程式過濾器」中,則 eDirectory 屬性將只會影響「綱要映射」規則。 在下列步驟中,會將 eDirectory 屬性新增至「訂閱者」通道的「驅動程式過濾器」。

  14. 按一下「確定」,以關閉「Identity Manager 綱要映射規則編輯器」。

  15. 按一下「確定」,以關閉「Identity Manager 規則」對話方塊。

  16. 按一下「關閉」,以關閉「綱要映射規則」對話方塊。

  17. 按一下「訂閱者」通道的「驅動程式過濾器」圖示。

    描述: 描述: 圖例

    即會顯示過濾器視窗:

    描述: 描述: 圖例

    事件過濾器會指定 Identity Manager 引擎針對其處理事件的物件類別和屬性。 左側的唯讀「過濾器」清單會顯示類別的屬性。 右側的「類別名稱」清單會顯示與目標物件相關聯的選項。

  18. 按一下要新增至過濾器之屬性所屬的類別名稱 (例如,「使用者」)。

  19. 按一下「新增屬性」。即會顯示屬性清單。

  20. 選取屬性,然後按一下「確定」。即會將屬性新增至「過濾器」清單。

    描述: 描述: 圖例
  21. 按一下屬性名稱。即會在右側面板上顯示屬性的同步化選項。

    描述: 描述: 圖例
  22. 在「訂閱」下,按一下「同步化」。

    描述: 描述: 圖例
  23. 指定過濾器的任何其他屬性。 如果您想要報告和同步化對屬性值進行的變更,請選取「同步化」做為屬性。 如果您不想報告和同步化對屬性值進行的變更,請選取「忽略」。

  24. 按一下「確定」。即會顯示一則訊息,詢問您是否要重新啟動驅動程式以讓變更生效。

  25. 按一下「確定」。您會返回「Identity Manager 驅動程式概觀」頁面。