Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL中C#web应用商店权限的Active Directory查询_C#_Asp.net_Security_Active Directory - Fatal编程技术网

SQL中C#web应用商店权限的Active Directory查询

SQL中C#web应用商店权限的Active Directory查询,c#,asp.net,security,active-directory,C#,Asp.net,Security,Active Directory,我们有一个定制的c#web应用程序,它存储有关物理文件夹结构的额外信息。公司共享中的每个文件夹或文件都有sql记录。我们使用web应用程序来搜索这些记录。我想根据sql记录存储物理路径的active directory权限 在c#(.NET3.5)中查询广告的首选方法是什么 我是否存储友好组/用户名或SID SID是唯一的吗 如果用户移动到另一个位置(不同的OU),SID是否会更改 这个想法是查询可以如下所示 SELECT CompanyDoc.Name, CompanyDoc.Path FR

我们有一个定制的c#web应用程序,它存储有关物理文件夹结构的额外信息。公司共享中的每个文件夹或文件都有sql记录。我们使用web应用程序来搜索这些记录。我想根据sql记录存储物理路径的active directory权限

  • 在c#(.NET3.5)中查询广告的首选方法是什么

  • 我是否存储友好组/用户名或SID

  • SID是唯一的吗

  • 如果用户移动到另一个位置(不同的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
    

    除了第一点,我不能回答你所有的观点。试试看,这是一种从C#与Active Directory对话的好方法,因为您已经在.NET 3.5中了。

    1)您无法查询AD以获取文件的权限。您必须查询文件系统以获取该信息。不过,您可以通过获取用户和角色

    2) 希德

    3) 是的,对你的广告用户来说是这样的。对于特殊的内置帐户,它们将跨系统共享

    4) 没有


    顺便说一下,你的应用程序的整个概念让我有些害怕。听起来您可能需要回到绘图板。

    有一篇优秀的MSDN杂志文章介绍了如何在.NET 3.5 Active Directory(“System.DirectoryServices.AccountManagement”命名空间)中查询和管理用户和组:

    这应该能帮助你开始


    马克

    问题太多了……试着把它们分开。。。