2009-09-17 81 views
1

我們有一個定製的c#web應用程序,用於存儲有關物理文件夾結構的額外信息。公司共享中的每個文件夾或文件都有一個sql記錄。我們使用網絡應用程序來搜索這些記錄。我想存儲物理路徑對sql記錄的活動目錄權限。來自C#web應用程序的Active Directory查詢 - SQL中的存儲權限

  1. 在c#(.net 3.5)中查詢AD的首選方法是什麼?

  2. 我是否存儲友好的組/用戶名或SID?

  3. SID是唯一的嗎?

  4. 如果用戶移動到另一個位置(不同的OU),SID是否會更改?

的想法是,查詢可以是這樣的......

SELECT CompanyDoc.Name, CompanyDoc.Path 

FROM CompanyDoc 

INNER JOIN Permission ON CompanyDoc.ID = Permissions.CompanyDocID 

WHERE CompanyDoc.MetaData = @serach param 

AND Permission.SID IN (@userSidList) 

GROUP BY CompanyDoc.Name, CompanyDoc.Path 
+0

太多的問題....試着把它們分開...... – 2009-09-17 11:15:38

回答

2

1)您無法查詢AD以獲取該文件的權限。你必須爲此查詢文件系統。不過,您可以通過querying AD獲得用戶和角色。

2)SID。

3)是的,對於您的AD用戶而言。對於特殊的內置帳戶,它們將在系統間共享。

4)

號順便說一句,您的應用程序的整個概念那種讓我害怕。這聽起來像你可能需要回到繪圖板。

0

我不能回答你所有的點,但1點嘗試尋找LINQ To AD這是一個很好的方式,與C#中的Active Directory交談,因爲您已經在.NET 3.5中。

相關問題