c# - 如何在未使用 c# 加入 Microsoft Active Directory 中的域时对 ldap 进行身份验证

标签 c# .net .net-2.0 ldap

由于某些原因,当计算机未加入域时,ldap 和目录服务无法工作。来自 .net 的错误消息是域不可用。有人知道需要做什么吗?

基本...

 domainAndUsername = domain + @"\" + username;
 entry = new DirectoryEntry(_path, domainAndUsername, pwd);
 entry.AuthenticationType = FindAuthTypeMicrosoft(authType);

...尝试向上面的代码提供 testdomain.com 时,在本地登录到机器时似乎不起作用。

尽管我可以毫无问题地 ping testdomain.com。有什么不同或问题?

最佳答案

这段代码过去对我有用(尽管我承认我现在无法测试它):

DirectoryEntry entry = new DirectoryEntry("LDAP://server-name/DC=domainContext,DC=com");
entry.Username = @"DOMAIN\account";
entry.Password = "...";
DirectorySearcher searcher = new DirectorySearcher(entry);
searcher.Filter = "(&(objectClass=user)(sn=Jones))";
SearchResultCollection results = searcher.FindAll();

最困难的部分(无论如何对我来说)是找出“连接字符串”的细节。我一般靠ADSI EditAD Explorer帮助我找出正确的值是什么。 Softerra LDAP Browser - 免费版本有点旧,v2.6,隐藏在他们的下载部分。

关于c# - 如何在未使用 c# 加入 Microsoft Active Directory 中的域时对 ldap 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/853349/

相关文章:

c# - 目前不支持方法 'Microsoft.EntityFrameworkCore.RelationalQueryableExtensions.FromSql'

c# - 在 if 条件中声明变量以在 C# 中进一步测试

.net - 从 .Net v4.0 程序集链接到 .Net v2.0 程序集似乎也链接(和别名)mscorlib v2.0。为什么?

c# - 在 Nuget 包中包含 .exe 文件是不好的做法吗?

c# - 如何在 C# 中的单个 SQL 查询中更新水果列表的 crate ID

c# - 谁能告诉我为什么这个 SQL 查询不起作用

c# - 访问属性

c# - 检索所有命名空间类型

c# - Entity Framework 的 SQL Server 默认连接超时是多少?

c# - 具有反应性扩展的分区序列