在授權管理員中,授權原則的收件者以下列不同類型的群組為代表:

  • Windows 使用者和群組。這些群組包括使用者、電腦以及安全性主體的內建群組。Windows 使用者和群組可在整個 Windows 中使用,而不是只在授權管理員中使用。

  • 應用程式群組。這些群組包括基本應用程式群組以及輕量目錄存取通訊協定 (LDAP) 查詢群組。應用程式群組乃專用於授權管理員角色為主的管理。

重要

應用程式群組是一群使用者、電腦或其他安全性主體。應用程式群組不是一群應用程式。

  • LDAP 查詢群組。這些群組中的成員資格可視 LDAP 查詢的需要而動態進行計算。LDAP 查詢群組是一種應用程式群組。

  • 基本應用程式群組。這些群組是以 LDAP 查詢群組、Windows 使用者和群組,以及其他基本應用程式群組來定義。基本應用程式群組是一種應用程式群組。

  • 商務規則應用程式群組。這些群組是由以 VBScript 或 Jscript 撰寫的指令碼所定義,並會在執行階段根據您定義的準則而產生動態決定的群組成員資格。

Windows 使用者和群組

如需 Active Directory 網域服務 (AD DS) 中之群組的相關資訊,請參閱使用授權管理員針對多層式應用程式進行以角色為基礎的存取控制 (可能為英文網頁) (https://go.microsoft.com/fwlink/?LinkId=64287)。如需未儲存在 AD DS 中之安全性主體的相關資訊,請參閱安全性主體技術參照 (可能為英文網頁) (https://go.microsoft.com/fwlink/?LinkId=129213)。

應用程式群組

建立新的應用程式群組時,需要決定要成為 LDAP 查詢群組還是基本應用群組。就以授權管理員角色型應用程式而言,任何透過 Windows 使用者和群組的授權,也可於應用程式群組完成。

循環成員資格定義是不被允許的,且會造成「無法新增 <群組名稱>。發生了下列問題:已偵測到迴圈。」的錯誤訊息。

LDAP 查詢群組

在 [授權管理員] 中,您可以使用 LDAP 查詢在 AD DS、Active Directory 輕量型目錄服務 (AD LDS) 以及其他 LDAP 相容目錄中尋找物件。

您可以使用 LDAP 查詢來指定 LDAP 查詢群組,只要在應用程式群組的 [內容] 對話方塊中,[查詢] 索引標籤所提供的空間輸入所需的 LDAP 查詢即可。

[授權管理員] 支援兩種 LDAP 查詢類型,可用來定義 LDAP 查詢群組:授權管理員版本 1 查詢及 LDAP URL 查詢。

  • 授權管理員版本 1 LDAP 查詢

    版本 1 LDAP 查詢會針對 RFC 2255 中所描述的 LDAP URL 查詢語法提供有限支援。這些查詢受限於只能查詢目前用戶端內容中所指定之使用者物件的屬性清單。

    例如,下列查詢可找到 Andy 之外的其他人:

    (&(objectCategory=person)(objectClass=user)(!cn=andy))

    這個查詢會評估用戶端是否為 northwindtraders.com 中別名為 StatusReports 的成員:

    (memberOf=CN=StatusReports,OU=Distribution Lists,DC=nwtraders,DC=com)

    [授權管理員] 會繼續支援版本 1 查詢,讓使用舊版 [授權管理員] 所開發的解決方案可以較輕鬆地進行升級。

  • LDAP URL 查詢

    為了移除可搜尋物件與屬性的限制,授權管理員支援以 RFC 2255 為依據的 LDAP URL 查詢語法。這允許您建立 LDAP 查詢群組,使用目前使用者物件以外的目錄物件當作搜尋的根。

    LDAP URL 是以通訊協定首碼 "ldap" 起始,並遵循此格式:

附註

辨別名稱也稱為 DN。

ldap://<伺服器:通訊埠>/<baseObjectDN>?<屬性>?<查詢範圍>?<篩選器>

明確地說,可以支援下列文法:

       ldapurl    = scheme "://" [hostport] ["/"
                    [dn ["?" [attributes] ["?" [scope]
                    ["?" [filter]]]]]]
       scheme     = "ldap"
       attributes = attrdesc *("," attrdesc)
       scope      = "base" / "one" / "sub"
       dn         = distinguishedName
       hostport   = hostport
       attrdesc   = AttributeDescription
       filter     = filter

例如,下列查詢會從 LDAP 伺服器傳回其公司屬性設定為 "FabCo" 的使用者,該伺服器是在主機名稱為 "fabserver" 的連接埠 389 上執行:

ldap://fabserver:389/OU=Customers,DC=FABCO-PN,DC=com?*?sub?(&(company=FabCo)(objectClass=user)(objectCategory=user))

使用 LDAP URL 查詢時,您可以使用特殊預留位置值 %AZ_CLIENT_DN%。這個預留位置會取代為進行存取檢查之用戶端的辨別名稱 (DN)。這可讓您建構查詢,以根據物件與進行查詢之用戶端的辨別名稱之間的關係,從目錄傳回物件。

在此範例中,LDAP 查詢會測試使用者是否為 "Customers" OU 的成員:

ldap://server:<port>/OU=Customers,DC=FABCO-PN,DC=com?(objectclass=*)?sub?(&(objectClass=user)(objectCategory=user) (distinguishedName= %AZ_CLIENT_DN% ))

在此範例中,LDAP 查詢會測試使用者是否為名為 "SomeManager" 之經理的直接下屬,其中 SomeManager 的 "searchattribute" 等於特定值 "searchvalue":

ldap://server:port/Cn=SomeManager,OU=Users,DC=FABCO-PN,DC=com?(objectclass=*)?base?(&(searchattribute= searchvalue) (directreports = %AZ_CLIENT_DN%))

如需 LDAP URL 查詢語法的相關資訊,請參閱文章 RFC 2255 (可能為英文網頁) (https://go.microsoft.com/fwlink/?linkid=65973)。

重要

如果 LDAP 查詢是以 "ldap" 開頭,便會被視為 LDAP URL 查詢。如果是以其他首碼開頭,則會被視為版本 1 查詢。

基本應用程式群組

基本應用程式群組是授權管理員特有的。

若要定義基本應用程式群組成員資格,您需要:

  1. 定義誰是成員。

  2. 定義誰不是成員。

此兩個步驟都以同樣方式執行:

  • 首先,您要指定零個或多個 Windows 使用者和群組、先前定義的基本應用程式群組,或 LDAP 查詢群組。

  • 其次,基本應用程式群組的成員資格,是以移除群組內任何非成員的方式來計算。[授權管理員] 在執行階段會自動執行此動作。

重要

基本應用程式群組中的非成員資格會優先於成員資格。

商務規則應用程式群組

商務規則應用程式群組為授權管理員所特有。

若要定義商務規則應用程式群組成員資格,您必須以 VBScript 或 Jscript 撰寫指令碼。指令碼原始碼會從商務規則應用程式群組的 [內容] 頁上的文字檔載入。


目錄