Asp.Net 登录控制与非受信任 AD 域的初始连接速度非常慢

标签 asp.net active-directory

当对与 Web 服务器所属域不同的域进行身份验证时,ASP.NET 登录控制与 AD 的初始连接非常慢。 IIS 服务器以及与 Visual Studio 的内置 Web 服务器一起使用时出现问题。

第一次尝试使用该控件连接另一个域时大约需要 30 秒。 Web 服务器的域和其他域之间不存在信任关系(尝试连接到多个不同的域)。后续连接会快速执行,直到连接超时。

使用Systernals Process Monitor进行故障排除,在延迟之前有两个OpenQuery操作到“C:\WINDOWS\asembly\GAC_MSIL\System.DirectoryServices\2.0.0.0_b03f5f7f11d50a3a\Netapi32.dll,结果名称未找到”和30 秒延迟后,TCP 发送和 TCP 接收表明与 AD 服务器的通信开始。

我们尝试过的事情:

  • 在 web.config 中模拟网络服务器的管理员;
  • 向 NetworkService 和 ASPNET 授予 CryptoKey 权限;
  • 通过 IP 而不是 DNS 名称指定;
  • 使用域和 OU 指定名称和 LDAP 服务器的多种变体;
  • 本地主机条目;
  • 使用 netstat -an 查找被阻止的端口 (SYN_SENT)。
  • Nslookup 可以正确解析所有涉及的域和系统。
  • TraceRt 显示正确的路线

非常感谢任何想法或提示。

最佳答案

我们最终修复了它

connectionProtection="无"

关闭安全端口上的所有连接尝试并仅使用 389。

在 connetionProtection 更改后,我们还必须指定连接用户名,例如“ad/bob”,而不仅仅是“bob”。

谢谢

埃里克-

关于Asp.Net 登录控制与非受信任 AD 域的初始连接速度非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/946550/

相关文章:

asp.net - GridView 和存储过程?

c# - 如何在 C# 中将 JSON 数据保存到 SQL Server 数据库?

javascript - 如何在下拉菜单中将复选标记显示为文本?

asp.net - 是否可以在asp :Label ASP. NET Control中模拟HTML标签<Label/>?

sql-server - 使用用户身份验证的 SQL 数据库与 Active Directory 的连接字符串

c# - 检索信息后生成pdf文件

c# - 如何解决 "The server does not support the control. The control is critical."Active Directory 错误

c# - 保存到 Active Directory - 拒绝域管理员访问

batch-file - 如何检查当前登录的用户是否在特定组中?

java - 使用访问策略向用户配置 Active Directory 帐户时出错