我希望获得一个用户在ActiveDirectory中所属的所有组的列表,既在memberOf属性列表中明确列出,也通过嵌套组成员身份隐式列出。例如,如果我检查UserA并且UserA是GroupA和GroupB的一部分,如果GroupB是GroupC的成员,我还想列出GroupC。为了让您更深入地了解我的申请,我将在有限的基础上这样做。基本上,我偶尔需要进行一次安全检查,以列出这些额外的成员资格。我想区分这两者,但这应该不难。我的问题是我还没有找到使这个查询有效的有效方法。ActiveDirectory上的标准文本(ThisCodeProjectArticle)显示了一种执行此操作的方
我有这段代码可以列出目录中的所有文件。classGetTypesProfiler{staticListTest(){ListdataList=newList();stringfolder=@"DIRECTORY";Console.Write("------------------------------------------\n");varfiles=Directory.GetFiles(folder,"*.dll");Stopwatchsw;foreach(varfileinfiles){stringfileName=Path.GetFileName(file);varfilein
这可能吗?代码示例会很好。 最佳答案 实际上,问题是如何获取.NET3.5(System.DirectoryServices.AccountManagement.)UserPrincipal对象的两个属性,但未给定userPrincipalName。这里是如何用extensionmethod做到这一点的:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.DirectoryServices;usingSys
我有一组将要创建的测试帐户,但这些帐户将设置为要求在首次登录时更改密码。我想用C#编写一个程序来检查测试帐户并更改密码。 最佳答案 您可以使用UserPrincipal类'SetPassword方法,前提是您有足够的权限,一旦您找到了正确的UserPrincipal对象。使用FindByIdentity查找有问题的主要对象。using(varcontext=newPrincipalContext(ContextType.Domain)){using(varuser=UserPrincipal.FindByIdentity(conte
我在WindowsVistaUltimateSP1上使用以下代码来查询我们的事件目录服务器,以检查域中用户的用户名和密码。publicObjectIsAuthenticated(){StringdomainAndUsername=strDomain+"\\"+strUser;DirectoryEntryentry=newDirectoryEntry(_path,domainAndUsername,strPass);SearchResultresult;try{//BindtothenativeAdsObjecttoforceauthentication.DirectorySearche
我的项目有一个文件夹结构:项目,项目/数据项目/引擎项目/服务器项目/前端在服务器中(在Project/Server文件夹中运行)我指的是这样的文件夹:varrootFolder=Directory.GetCurrentDirectory();rootFolder=rootFolder.Substring(0,rootFolder.IndexOf(@"\Project\",StringComparison.Ordinal)+@"\Project\".Length);PathToData=Path.GetFullPath(Path.Combine(rootFolder,"Data"));
我正在开发一个使用Windows身份验证的C#和ASP.Net应用程序。即在Web.config中:我想从ActiveDirectory获取当前用户的详细信息(全名、电子邮件地址等)。我可以使用获取他们的Windows2000之前的用户登录名(例如:SOMEDOMAIN\someuser)stringusername=HttpContext.Current.Request.ServerVariables["AUTH_USER"];我已经为用户制定了LDAP查询,使用他们当前的登录名(不是他们的Windows2000之前的用户登录名):DirectorySearcheradSearch=
我正在编写以下方法以在C#中的事件目录中添加和删除用户。voidAddUserToGroup(stringuserId,stringgroupName);voidRemoveUserFromGroup(stringuserId,stringgroupName);如何最好地实现这些方法?这是来自CodeProject的一些代码。不过,我看不到在这些示例中指定AD服务器的位置?(它是否在使用LDAP协议(protocol)时由.NET框架隐式提供?)。这些例子值得效仿吗?publicvoidAddToGroup(stringuserDn,stringgroupDn){try{Directo
我想使用C#连接到我们的本地ActiveDirectory。我找到了thisgooddocumentation.但我真的不知道如何通过LDAP连接。有人可以解释一下如何使用所询问的参数吗?示例代码:staticDirectoryEntrycreateDirectoryEntry(){//createandreturnnewLDAPconnectionwithdesiredsettingsDirectoryEntryldapConnection=newDirectoryEntry("rizzo.leeds-art.ac.uk");ldapConnection.Path="LDAP://O
我正在调用一个接受Expression>的方法.作为我传递的表达式的一部分:this.Bottom==base.lineView.Top编译器给我一个错误anexpressiontreemaynotcontainabaseaccess所以我干脆改成了this.Bottom==this.lineView.Top因为该成员无论如何都受到了保护,现在可以使用了。但是这个错误真的让我很困惑:为什么这个base有问题吗?特别是如果使用this相反会工作但语法上是相同的结果(访问相同的变量)? 最佳答案 查看System.Linq.Expres