草庐IT

directoryentry

全部标签

c# - 通过 .NET 连接到 Active Directory

我有一个带有ActiveDirectory的虚拟机,我想使用.NET连接到它,我已经连接到运行OpenLDAP的ubuntu机器,但是当连接到AD时它工作不顺利。我尝试连接的代码如下:vardirectoryEntry=newDirectoryEntry("LDAP://192.168.1.1",@"EXAMPLE\Administrator","Abc1234");try{vartest=directoryEntry.NativeObject;}catch(Exceptione){System.Diagnostics.Debug.WriteLine(e.Message);}观察本地窗

c# - 获取 'memberof' 为一组的用户

我有一个有效的解决方案,但我很确定有一种资源密集度较低的方法,因为当前的解决方案涉及执行查询以获取组成员,然后进行查询以获取每个用户的信息。这是我的代码:DirectoryEntryroot=newDirectoryEntry("LDAP://server:port");DirectorySearchersearcher=newDirectorySearcher(root);searcher.Filter="(&(ObjectClass=Group)(CN=foo-group))";varmembers=(IEnumerable)searcher.FindOne().GetDirect

c# - 通过电子邮件地址在 ActiveDirectory 中查找用户

如何通过电子邮件地址查询ActiveDirectory用户?给定的用户可以有多个电子邮件地址,例如john.smite@acme.com和jsmith@acme.com。对于给定的电子邮件,我怎样才能取回A/D用户?我正在用C#编程。 最佳答案 您可以使用以下代码搜索您的广告:DirectoryEntryadEntry=null;privatevoidSetADInfoAndCredentials(){adEntry=newDirectoryEntry("LDAP://"+ad_textBox.Text);adEntry.Usern

c# - 如何在 C# 中查找 IIS 站点 ID?

我正在为我的网络服务编写一个安装程序类。在许多情况下,当我使用WMI时(例如创建虚拟目录时),我必须知道siteId才能为站点提供正确的metabasePath,例如:metabasePathisoftheform"IIS://///Root[/]"forexample"IIS://localhost/W3SVC/1/Root"如何根据站点名称(例如“默认网站”)在C#中以编程方式查找它? 最佳答案 这是通过名称获取它的方法。您可以根据需要进行修改。publicintGetWebSiteId(stringserverName,str

c# - 通过 .net 获取 Active Directory 组中的用户名

下面的代码让我获得了组中的用户,但它被返回了“CN=johnson\,Tom,OU=Users,OU=Main,DC=company,DC=com”我只想返回名字和姓氏。我怎样才能做到这一点?DirectoryEntryou=newDirectoryEntry();DirectorySearchersrc=newDirectorySearcher();src.Filter=("(&(objectClass=group)(CN=Gname))");SearchResultres=src.FindOne();if(res!=null){DirectoryEntrydeGroup=newDi

c# - 如何从 AD DirectoryEntry 获取 DOMAIN\USER?

如何从ActiveDirectoryDirectoryEntry(SchemaClassName="user")对象获取Windows用户和域?用户名在sAMAccountName属性中,但我可以在哪里查找域名?(我不能假设一个固定的域名,因为用户来自不同的子域。) 最佳答案 这假定results是从DirectorySearcher获得的SearchResultCollection,但您应该能够直接从DirectoryEntry获得objectsid。SearchResultresult=results[0];varpropert

c# - 一旦我在 Active Directory 中获得用户组,如何获得组的 SID?

我正在使用DirectorySearcher获取ActiveDirectory中的用户组。我的问题是,一旦我使用“memberOf”获得用户组,如何获得与每个组关联的SID?我在.NETFramework2.0环境中工作。DirectoryEntryentry=newDirectoryEntry(string.Format("LDAP://{0}",sUserDomain));DirectorySearchermySearcher=newDirectorySearcher(entry);mySearcher.Filter=string.Format("(&(objectClass=us

c# - DirectoryEntry IIS 访问权限

我有一个控制台应用程序,它列出了IIS中的网站绑定(bind)using(vardirectoryEntry=newDirectoryEntry("IIS://localhost/w3svc/"+GetWebSiteId())){varbindings=directoryEntry.Properties["ServerBindings"];}我通过进程从ASP.NET调用这个控制台应用程序varprocess=newProcess{StartInfo=newProcessStartInfo{FileName="c:/app.exe",Arguments="check",UseShell

c# - DirectoryEntry.Invoke ("groups",null) 未检索所有组?

我创建了一个WCFWeb服务来从ActiveDirectory返回用户和组信息。它适用于大多数组和用户。我使用directoryEntry.Invoke("groups",null)返回指定用户所属的组。这将返回MOST组。奇怪的是我可以找到任何组并枚举其成员,即使它是我在其成员之一上使用调用查询时丢失的组之一。大多数表现出这种行为的组都启用了Exchange。大多数有问题的用户帐户都是针对联合域中的用户,他们使用我查询的域中的Exchange服务器。我不是要查询联合域中的对象。到目前为止我的理论:某些安全限制不允许通过invoke()枚举所有组,即使我可以查询缺失的组并枚举其成员。i

c# - 如何使用 C# 删除 Windows 用户帐户

如何使用C#删除windows用户帐户? 最佳答案 ClauseThomsen很接近,您需要向DirectoryEntry.Remove方法传递一个DirectoryEntry参数而不是字符串,例如:DirectoryEntrylocalDirectory=newDirectoryEntry("WinNT://"+Environment.MachineName.ToString());DirectoryEntriesusers=localDirectory.Children;DirectoryEntryuser=users.Find