Microsoft BHOLD 套件概念指南

Microsoft Identity Manager 2016 (MIM) 可讓組織管理使用者身分識別及其相關認證的整個生命週期。 它可以設定成同步處理身分識別、集中管理憑證和密碼,以及跨異質系統佈建使用者。 使用 MIM,IT 組織可以定義與自動化從建立到淘汰的身分識別管理程序。

Microsoft BHOLD 套件藉由新增以角色為基礎的存取控制,來擴充這些 MIM 功能。 BHOLD 能讓組織定義使用者角色,以及控制對敏感性資料和應用程式的存取。 存取是以適合這些角色的內容為基礎。 BHOLD 套件包括在組織內簡化角色關聯性模型化的服務和工具。 BHOLD 會對應這些角色和權限,確認角色定義和相關權限已正確套用至使用者。 這些功能與 MIM 完全整合,為一般使用者與 IT 工作人員提供順暢的體驗。

本指南可協助您了解 BHOLD 套件如何搭配 MIM,並涵蓋下列主題:

  • 角色型存取控制
  • 證明
  • 報告
  • 存取管理連接器

針對新的部署,不建議使用 BHOLD。 Azure AD 現在提供存取權檢閱 (取代 BHOLD 證明活動功能),以及權利管理 (取代存取權指派功能)。

角色型存取控制

控制使用者存取資料和應用程式的最常見方法,是透過判別存取控制 (DAC)。 在最常見的實作中,每個重要的物件都有一個已識別的擁有者。 擁有者能夠根據個別身分識別或群組成員資格,授與或拒絕他人存取物件。 在實務上,DAC 通常會導致過多的安全性群組,有些反映組織結構、有些代表功能群組 (例如工作類型或專案指派),還有些則是因許多暫時原因連結的使用者和裝置的權宜集合。 隨著組織成長,管理這些群組的成員資格越來越困難。 例如,如果員工從某個專案調至另一個專案,就必須手動更新用來控制專案資產存取的群組。 在這種情況下,很容易發生錯誤,這些錯誤會妨礙專案安全性或生產力。

MIM 包含的功能,提供對群組與通訊群組清單成員資格的自動化控制,有利於減輕這個問題。 不過,這未解決彼此以結構化方式相關的增生群組內在複雜度。

大幅減少此激增的一種方式是部署角色型存取控制 (RBAC)。 RBAC 不會取代 DAC。 RBAC 提供分類使用者和 IT 資源的架構,建置在 DAC 上。 這可讓您根據該分類,明確其適當的關聯性及存取權限。 例如,指派給使用者指定使用者職稱和專案指派的屬性,使用者可被授與使用者作業和資料所需工具的存取權,而使用者需要有這些資料才能投稿特定專案。 當使用者擔任不同的作業和不同的專案指派時,變更指定使用者職稱和專案的屬性,會自動封鎖存取僅使用者前一個職位所需要的資源。

因為角色可以階層方式包含在角色中 (例如,銷售經理和銷售人員的角色可以包含在更廣義的銷售角色中),所以可以輕鬆地將適當的權限指派給特定的角色,卻仍然為共用更廣義角色的所有人提供適當的權限。 例如,在醫院中,所有醫護人員都有權檢視病歷,但只有醫師 (醫療角色的子角色) 有權輸入病患的處方。 同樣地,屬於文書角色的使用者也可能被拒絕存取病歷,但計費人員 (文書角色的子角色) 除外,因為他們有權存取病患病歷中醫院收費服務這部分的記錄。

RBAC 的另一個優點是能夠定義和強制執行責任劃分 (SoD)。 這可讓組織定義授權的角色組合,不應掌握在相同的使用者手中,以便特定使用者不會被指派,例如請款兼授權付款的角色。 RBAC 提供自動強制執行這類原則的能力,而非必須逐一評估每位使用者的原則有效實作。

BHOLD 角色模型物件

使用 BHOLD 套件,您可以在組織內指定並組織角色、對應使用者和角色,以及將適當的權限對應至角色。 這個結構稱為角色模型,包含和連接五種類型的物件:

  • 組織單位
  • 使用者
  • 角色
  • 權限
  • 應用程式

組織單位

組織單位 (OrgUnit) 是在 BHOLD 角色模型中組織使用者的主要方式。 每位使用者必須至少隸屬於一個 OrgUnit。 (事實上,從 BHOLD 的最新組織單位中移除使用者時,也會從 BHOLD 資料庫中刪除使用者的資料記錄。)

重要

BHOLD 角色模型中的組織單位不應與 Active Directory Domain Services (AD DS) 中的組織單位混淆。 通常,BHOLD 的組織單位結構是以您的組織和商務原則為基礎,不是網路基礎結構需求。

雖然並非必要,但在大多數的情況下,組織單位是以 BHOLD 結構代表實際組織的階層式結構,類似下面的結構:

範例組織結構圖

在此範例中,角色模型就是整個公司的 organizationalganizatinal 單位 (由總裁代表,因為總裁不屬於 mororganizationalganizatinal 單元),或 BHOLD 根組織單位 (永遠存在) 可用於此用途。 代表公司各部門的 OrgUnit 由副總裁率領,會放在公司組織單位中。 接著,對應至行銷和銷售主管的組織單位,會新增到行銷和銷售組織單位,而代表區域銷售經理的組織單位會放在東部地區銷售經理組織單位中。 不管理其他使用者的銷售夥伴,會成為東部地區銷售經理組織單位的成員。 請注意,使用者可以成為任何層級的組織單位成員。 例如,行政助理不是管理人員,但直接向副總裁匯報,就是副總裁組織單位的成員。

除了代表組織結構,組織單位也可以根據功能準則,例如專案或特製化,用來群組使用者及其他組織單位。 下圖顯示如何使用組織單位,根據客戶類型來分組銷售夥伴:

範例專案組織

在此範例中,每名銷售夥伴都會屬於兩個組織單位:一個代表夥伴在組織管理結構中的位置,一個代表夥伴的客層 (零售商或公司)。 每個組織單元都可以獲指派不同的角色,而這些角色也可以獲指派不同的權限,存取組織的 IT 資源。 此外,角色可以繼承自父組織單位,簡化將角色傳播給使用者的程序。 另一方面,特定的角色可以防止繼承,確保特定角色只與適當的組織單位建立關聯。

您可以使用 BHOLD Core web 入口網站,在 BHOLD Suite 中建立 Orgunit。

使用者

如前所述,每位使用者都必須至少隸屬於一個組織單位 (OrgUnit)。 因為組織單位是建立使用者與角色關聯性的主要機制,所以在大部分的組織中,指定的使用者從屬於多個 OrgUnit 是為了更容易建立角色與該使用者的關聯性。 但在某些情況下,可能需要建立角色與使用者所屬之 OrgUnit 以外的使用者間的關聯性。 因此,使用者可以直接獲指派角色,以及從使用者所屬之 OrgUnit 取得角色。

當使用者在組織中不活躍時 (例如病假),可以暫止使用者,這樣會撤銷所有的使用者權限,但不從角色模型中移除使用者。 返回工作崗位時,就可以重新啟動使用者,這會還原所有授與使用者角色的權限。

您可以透過 BHOLD Core web 入口網站,或透過使用存取管理連接器與 FIM 同步處理服務,在 BHOLD 中個別建立使用者的物件,以將使用者資訊從這類來源匯入為 Active Directory Domain Services 或人力資源應用程式。

不使用 FIM 同步處理服務,也可以直接在 BHOLD 中建立使用者。 在預先生產或測試環境中建立角色模型時,這非常有用。 您也可以將角色指派給外部使用者 (例如轉包商的員工),讓他們獲得 IT 資源存取權,但不新增到員工資料庫,而且這些使用者將無法使用 BHOLD 自助功能。

角色

如前所述,在角色型存取控制 (RBAC) 模型下,權限與角色而不是與個別使用者建立關聯。 這樣可以透過變更使用者的角色,而不是個別授與或拒絕使用者權限,提供每位使用者執行職責所需的權限。 如此一來,權限指派即不再需要 IT 部門參與,改為企業管理的執行業務。 角色可以彙總權限以存取不同的系統,直接或透過使用子角色,進一步減少 IT 人員對管理使用者權限的介入。

請務必注意,角色是 RBAC 模型本身的一項功能,角色一般不會佈建到目標應用程式。 這樣可讓 RBAC 和現有的應用程式一起使用,這些應用程式的設計不是使用角色或變更角色定義,以符合變更商務模型需求但不必修改應用程式本身。 如果目標應用程式旨在使用角色,則您可以將特定應用程式角色視為權限,在 BHOLD 角色模型中建立角色與對應應用程式角色的關聯。

在 BHOLD 中,主要是透過兩種機制將角色指派給使用者:

  • 將角色指派給使用者為成員的組織單位 (組織單位)
  • 直接將角色指派給使用者

選擇性指派給父組織單位的角色,可由其成員組織單位繼承。 當組織單位指派或繼承角色時,它可以指定為有效或建議的角色。 如果它是有效的角色,則該組織單位中的所有使用者都會被指派該角色。 如果是建議的角色,則必須為每位使用者或成員組織單位啟動,才會對該使用者或組織單位成員生效。 如此可能將與組織單位建立關聯角色的子集指派給使用者,而不是自動將所有組織單位的角色指派給所有成員。 此外,角色可以指定開始和結束日期,並可限制組織單位內角色有效的使用者百分比。

下圖說明如何在 BHOLD 中為個別使用者指派角色:

角色指派

在此圖中,角色 A 指派給組織單位作為可繼承的角色,並由其成員組織單位及這些組織單位中的所有使用者繼承。 角色 B 指派為組織單位的建議角色。 必須先啟動,才可以將角色權限授與組織單位的使用者。 角色 C 是有效的角色,因此它的權限可立即套用到組織單位中的所有使用者。 角色 D 直接連結到使用者,因此它的權限可立即套用至該使用者。

此外,使用者也可以根據使用者的屬性啟動角色。 如需詳細資訊,請參閱<以屬性為基礎的授權>。

權限

對應到從目標應用程式匯入授權的 BHOLD 權限。 也就是當 BHOLD 設定使用應用程式時,它會接收 BHOLD 可以連結至角色的授權清單。 例如,當 Active Directory Domain Services (AD DS) 新增至 BHOLD 作為應用程式時,它會接收作為 BHOLD 權限,連結至 BHOLD 角色的安全性群組清單。

應用程式特定的權限。 BHOLD 提供單一的統一權限檢視,讓權限與角色建立關聯,但不需要角色管理員了解權限的實作詳細資料。 在實務上,不同的系統可能會以不同的方式強制執行權限。 從 FIM 同步處理服務到應用程式,應用程式特定連接器決定如何向該應用程式提供使用者的權限變更。

應用程式

BHOLD 實作將角色型存取控制 (RBAC) 套用至外部應用程式的方法。 也就是使用應用程式的使用者和權限佈建 BHOLD 時,BHOLD 可以指派角色給使用者,然後連結至角色的權限,建立這些權限與使用者的關聯。 應用程式的背景處理程序,可以根據 BHOLD 的角色/權限對應,將正確的權限對應至其使用者。

開發 BHOLD 套件角色模型

為了協助您開發角色模型,BHOLD 套件會提供模型產生器,這是容易使用的完整工具。

使用模型產生器之前,您必須先建立一系列定義模型產生器所用物件的檔案,以建構角色模型。 如需如何建立這些檔案的資訊,請參閱<Microsoft BHOLD 套件技術參考>。

使用 BHOLD 模型產生器的第一個步驟,是匯入這些檔案,將基本建置區塊載入模型產生器。 成功載入檔案之後,您即可以指定模型產生器用來建立數個角色類別的準則:

  • 根據使用者所屬 OrgUnit (組織單位) 指派給使用者的成員資格角色
  • 根據 BHOLD 資料庫中的使用者屬性指派給使用者的屬性角色
  • 連結到組織單位但必須為特定使用者啟動的建議角色
  • 將匯入檔案未指定擁有者的組織單位和角色的控制授與使用者的擁有權角色

重要

上傳檔案時,請只在測試環境中選取 [Retain Existing Model] (保留現有的模型) 核取方塊。 在實際執行環境中,您必須使用模型產生器建立初始角色模型。 您無法使用它在 BHOLD 資料庫中修改現有的角色模型。

當模型產生器在角色模型中建立這些角色之後,您即可以 XML 檔案形式將角色模型匯出至 BHOLD 資料庫。

進階的 BHOLD 功能

前面各節描述 BHOLD 中角色型存取控制 (RBAC) 的基本功能。 本節概述 BHOLD 的其他功能,可為您組織實作 RBAC 提供加強的安全性和彈性。 本節提供下列 BHOLD 功能的概觀:

  • 基數
  • 責任劃分
  • 具有可調適性內容的權限
  • 以屬性為基礎的授權
  • 彈性的屬性類型

基數

「基數」指的是商務規則實作,旨在限制兩個實體可以彼此相關的次數。 在 BHOLD 的案例中,角色、權限和使用者都可以建立基數規則。

您可以設定角色以限制:

  • 可以啟動建議角色的使用者數目上限
  • 可以連結至角色的子角色數目上限
  • 可以連結至角色的權限數目上限

您可以設定權限以限制:

  • 可以連結至權限的角色數目上限
  • 可以授與權限的使用者數目上限

您可以設定使用者以限制:

  • 可以連結至使用者的角色數目上限
  • 可以透過角色指派指派給使用者的權限數目上限

責任劃分

責任劃分 (SoD) 是商務原則,追求防止一人獨大,隻手遮天的情況。 例如,員工應該不能請款,同時授權付款。 SoD 原則可讓組織實作系統檢查和平衡,將員工錯誤或不法風險降到最低。

BHOLD 讓您定義不相容的權限,以實作 SoD。 定義這些權限後,BHOLD 會強制執行 SoD,其方法是防止建立連結到不相容權限的角色,無論是直接連結或透過繼承;以及防止使用者被指派結合後會授與不相容權限的多個角色,無論是直接指派或透過繼承。 (選擇性) 可以覆寫衝突。

具有可調適性內容的權限

透過建立可根據物件屬性自動修改的權限,您可以減少必須管理的權限總數。 具有可調適性內容的權限 (CAP) 可讓您將公式定義為權限屬性,修改與權限建立關聯之應用程式套用權限的方式。 例如,您可以建立公式,根據使用者屬於包含全職或約聘人員的組織單位 (組織單位),變更檔案資料夾的存取權限 (透過與資料夾存取控制清單建立關聯的安全性群組)。 如果使用者從某個組織單位調到另一個組織單位,就會自動套用新權限並停用舊權限。

CAP 公式可以查詢已套用至應用程式、權限、組織單位和使用者的屬性值。

以屬性為基礎的授權

連結到組織單位 (組織單位) 的角色是否針對組織單位的特定使用者啟動的一種控制方式,是使用以屬性為基礎的授權 (ABA)。 使用 ABA,只會在符合以特定使用者屬性為基礎的規則時,才能自動啟動角色。 例如,只有在使用者的職稱符合 ABA 規則的職稱時,您才可以將角色連結到變成作用中使用者的組織單位。 這樣就不需要手動啟動使用者的建議角色。 相反地,組織單位中屬性值符合角色 ABA 規則的所有使用者都可以啟動角色。 規則可以結合,以便只在使用者屬性符合針對角色指定的所有 ABA 規則時,才啟動角色。

請務必注意,ABA 規則測試的結果會受基數設定所限制。 例如,如果規則的基數設定指定一個角色最多只能指派兩位使用者,且若一個角色有四位使用者就會啟動 ABA 規則,則只有通過 ABA 測試的前兩位使用者會啟動角色。

彈性的屬性類型

BHOLD 的屬性系統有很高的擴充性。 您可以為使用者、組織單位 (組織單位) 和角色這類物件定義新的屬性類型。 屬性可以定義為具有整數、布林值 (是/否)、英數字元、日期、時間和電子郵件地址的值。 屬性可以指定為單一值或值清單。

證明

BHOLD 套件提供的工具,可讓您檢查個別使用者是否具有適當的權限可完成其業務工作。 系統管理員可以使用 BHOLD 證明模組提供的入口網站來設計及管理證明程式。

證明程序是透過活動執行,這些活動的負責人有機會和方法可以驗證其所負責的使用者有適當的 BHOLD 管理應用程式存取權以及這些應用程式的正確權限。 指定活動擁有者以監看活動,並確保該活動正正確執行。 建立的活動可以進行一次或定期進行。

一般來說,活動負責人會是管理員,證明使用者存取權屬於其負責的一或多個組織單位。 您可以根據使用者屬性,為活動中正在進行證明的使用者自動選取負責人,或將每位正在進行證明的使用者對應至活動負責人,列成檔案,定義活動負責人。

當活動開始時,BHOLD 會向活動負責人和擁有者傳送電子郵件通知訊息,接著定期傳送提醒幫助他們了解活動進度。 負責人會被導向至活動入口網站,在此會看看其所負責的使用者清單和指派給這些使用者的角色。 負責人接著可以確認他們是否負責每一位列出的使用者,可核准或拒絕每位所列使用者的存取權限。

活動擁有者也使用入口網站來監視進度的活動,活動內容會記錄在案讓活動擁有者可以分析活動過程中所採取的動作。

報告

BHOLD 報告模組讓您能夠透過不同的報表,檢視角色模型中的資訊。 BHOLD 報告模組提供大量的成套內建報告,以及可讓您建立基本和進階自訂報表的精靈。 當您執行報表時,您可以立即顯示結果,或將結果儲存在 Microsoft Excel (.xlsx) 檔案中。 若要使用 Microsoft Excel 2000、Microsoft Excel 2002 或 Microsoft Excel 2003 檢視這個檔案,您可以下載並安裝 Word、Excel 及 PowerPoint 檔案格式的 Microsoft Office 相容性套件。

BHOLD 報告模組大多用以產生以目前角色資訊為基礎的報告。 若要產生稽核變更報表以識別資訊,Forefront Identity Manager 2010 R2 的報告功能,適合 System Center Service Manager 資料倉儲中實作的 FIM 服務。 如需 FIM 報告的詳細資訊,請參閱 Forefront Identity Management 技術文件庫的 Forefront Identity Manager 2010 和 Forefront Identity Manager 2010 R2 文件。

內建報表涵蓋的類別包括下列各項:

  • 系統管理
  • 證明
  • 控制項
  • 向內的存取控制
  • 記錄
  • 模型
  • 統計資料
  • 工作流程

您可以建立報表,並將其新增至這些類別,或者您可以定義自己的類別,您放置自訂和內建的報表。

當您建置報表時,精靈會逐步引導您提供下列參數:

  • 身分識別資訊,包括名稱、描述、類別、使用方式與對象。
  • 報表中要顯示的欄位
  • 指定要分析哪些項目的查詢
  • 資料列的排序順序
  • 將報表分割成數個區段的欄位
  • 精簡報表中傳回項目的篩選器

在精靈的每個階段,您都可以預覽報表,因為到目前為止您已定義並儲存它,如果不需要指定其他參數的話。 您也可以回到前面的步驟,變更之前在精靈中指定的參數。

存取管理連接器

BHOLD 套件存取管理連接器模組支援初始和持續進行的資料同步處理到 BHOLD。 存取管理連接器適用於 FIM 同步處理服務,在 BHOLD 核心資料庫、MIM Metaverse,以及目標應用程式和身分識別存放區中移動資料。

舊版的 BHOLD 需要多個 MA 以控制 MIM 與中繼 BHOLD 資料庫資料表之間的資料流程。 在 BHOLD 套件 SP1 中,存取管理連接器可讓您在 MIM 中定義管理代理程式 (MA),直接在 BHOLD 與 MIM 之間提供資料傳輸。

下一步