Sql-Server

為什麼 xp_logininfo 顯示 AD 組的成員較少?

  • November 4, 2021

這個問題可能很愚蠢,但它已經讓我困惑了一段時間……

首先,我曾經xp_logininfo 'groupA', 'members'顯示GroupA, 結果的成員,member1並且member2被列出,但member3不是。

然後,我用xp_logininfo 'member3', 'all'顯示的權限路徑member3。結果,groupA被列為 的權限路徑member3。但是為什麼沒有在第一個語法中member3列為成員?groupA我在這裡錯過了什麼嗎?

正如評論中提到的,xp_logininfo @account_name, 'members'只會返回該組的下一級成員的列表。這在SQL Server Docs中有解釋。文件還說“如果 account_name 是域帳戶,則列表由域使用者組成”。因此,如果您請求有關域組的資訊,您只會返回域使用者,而不是任何嵌套組。

假設 GroupA 是域組,最可能的解釋是 member1 和 member2 是 GroupA 的直接成員,而 member3 是通過 GroupA 中的另一個域組的間接成員。

我們過去遇到過這個問題,這有點煩人!我們最終得到的解決方法是通過 ADSI 上的 openquery 進行 LDAP 查詢,有點像這樣。雖然這是更多的成本……

引用自:https://dba.stackexchange.com/questions/301654