草庐IT

directory-walk

全部标签

c# - 列出所有 Active Directory 组

以下代码列出了一些(但不是全部)ActiveDirectory组。为什么?我正在尝试列出所有安全组、分发组、计算机组等。我是否指定了错误的objectClass?privatestaticvoidListGroups(){DirectoryEntryobjADAM=default(DirectoryEntry);DirectoryEntryobjGroupEntry=default(DirectoryEntry);DirectorySearcherobjSearchADAM=default(DirectorySearcher);SearchResultCollectionobjSear

c# - 使用 C# 从 ASP.Net MVC 访问 Active Directory

我需要访问ActiveDirectory以获取有关客户所属组的信息。我的项目是一个使用C#的ASP.NetMVC应用程序。我以前从未针对ActiveDirectory进行过编程,需要一些建议,了解最好的入门方式是什么,使用什么安全模型来访问信息,也许还能给我一些好的教程。 最佳答案 由于您使用的是MVC,因此您可以访问新的System.DirectoryServices.AccountManagement.NET3.5中的命名空间。这些类应该优于DirectoryServices本身中的旧类,因为它们更易于使用。有几个陷阱在3.5中

c# - 使用 C# 检查 Active Directory 中是否存在 UserID

我们如何检查USERID是否存在于ActiveDirectory中。我有LDAP字符串和UserID,我可以找到该UserID是否存在于ActiveDirectory中。我将其用于ASP.NETWeb应用程序(.NET3.5) 最佳答案 您可以按照以下方式执行某些操作(将域替换为您要进行身份验证的域或完全删除该参数):publicboolDoesUserExist(stringuserName){using(vardomainContext=newPrincipalContext(ContextType.Domain,"DOMAIN

c# - 在 asp.net 核心项目中获取 Azure Active Directory 组

我使用VisualStudio2015创建了一个新项目,并使用针对AzureActiveDirectory的工作和学校帐户启用了身份验证。下面是生成的配置函数的样子:app.UseStaticFiles();app.UseCookieAuthentication();app.UseOpenIdConnectAuthentication(newOpenIdConnectOptions{ClientId=Configuration["Authentication:AzureAd:ClientId"],ClientSecret=Configuration["Authentication:Az

c# - Directory.Exists 不适用于网络路径

我有一行代码检查目录是否存在,然后获取其中的文件列表。System.IO.Directory.Exists(@"\\Server\Folder\");我在测试它(从visualstudio运行)时工作,但是当我部署网站时,它总是返回false。我对另一台服务器(假设是Server2)上的另一个文件夹进行了相同的验证,并且工作正常。然后我认为这是一个访问问题,但是共享文件夹和网络对每个人都有所有访问权限......还有其他原因导致它不起作用吗? 最佳答案 当您在VisualStudio中运行代码时,它会在您的用户权限下运行。当您在II

c# - 尝试以编程方式删除文件夹时出现 "Directory is not empty"错误

在我的应用中,我构建了一个系统,用户可以在其中创建图片库。照片以category_name/gallery_name/{pictures}格式保存在磁盘上的文件夹中。每张上传的照片都存储在上面给出的相关目录结构下。虽然尝试删除类别以及从数据库中删除时,我也想从系统中删除相关文件夹。当我第一次收到错误消息“目录不为空”时,我searchedandfound这个解决方案:publicstaticvoidDeleteDirectory(stringtarget_dir){string[]files=Directory.GetFiles(target_dir);string[]dirs=Dir

c# - 使用 C# 查找递归组成员身份 (Active Directory)

我希望获得一个用户在ActiveDirectory中所属的所有组的列表,既在memberOf属性列表中明确列出,也通过嵌套组成员身份隐式列出。例如,如果我检查UserA并且UserA是GroupA和GroupB的一部分,如果GroupB是GroupC的成员,我还想列出GroupC。为了让您更深入地了解我的申请,我将在有限的基础上这样做。基本上,我偶尔需要进行一次安全检查,以列出这些额外的成员资格。我想区分这两者,但这应该不难。我的问题是我还没有找到使这个查询有效的有效方法。ActiveDirectory上的标准文本(ThisCodeProjectArticle)显示了一种执行此操作的方

c# - 在 C# 中对 Directory.GetFiles 的结果进行排序

我有这段代码可以列出目录中的所有文件。classGetTypesProfiler{staticListTest(){ListdataList=newList();stringfolder=@"DIRECTORY";Console.Write("------------------------------------------\n");varfiles=Directory.GetFiles(folder,"*.dll");Stopwatchsw;foreach(varfileinfiles){stringfileName=Path.GetFileName(file);varfilein

c# - 给定 UserPrincipal 对象,如何从 Active Directory 获取 "Company"和 "Department"?

这可能吗?代码示例会很好。 最佳答案 实际上,问题是如何获取.NET3.5(System.DirectoryServices.AccountManagement.)UserPrincipal对象的两个属性,但未给定userPrincipalName。这里是如何用extensionmethod做到这一点的:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.DirectoryServices;usingSys

c# - 如何以编程方式更改 Active Directory 密码

我有一组将要创建的测试帐户,但这些帐户将设置为要求在首次登录时更改密码。我想用C#编写一个程序来检查测试帐户并更改密码。 最佳答案 您可以使用UserPrincipal类'SetPassword方法,前提是您有足够的权限,一旦您找到了正确的UserPrincipal对象。使用FindByIdentity查找有问题的主要对象。using(varcontext=newPrincipalContext(ContextType.Domain)){using(varuser=UserPrincipal.FindByIdentity(conte