asp.net – ActiveDirectoryMembershipProvider“无法联系指定的域或服务器.”

前端之家收集整理的这篇文章主要介绍了asp.net – ActiveDirectoryMembershipProvider“无法联系指定的域或服务器.”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个应用程序正在使用ActiveDirectoryMembershipProvider来授予对用户的访问权限.应用程序托管在非域计算机上,应用程序服务器和域控制器之间具有防火墙.

我们已将LDAP端口打开到内部网络的DC,但无论我们尝试什么,我们最后都会出现一个错误,指出“指定的域或服务器无法联系”.

有人有什么建议可以解决这个问题吗?我们已经尝试了我们可以想到的一切,只是没有得到任何地方.

我的连接字符串是:

<add name="ADConnectionString"
    connectionString="LDAP://10.5.3.7:389/DC=MyTestDomain,DC=local"/>

我的供应商是:

<add name="ActiveDirectoryMembershipProvider"
    type="System.Web.Security.ActiveDirectoryMembershipProvider"
    connectionStringName="ADConnectionString"
    attributeMapUsername="SAMAccountName"
    connectionProtection="None"
    connectionUsername="LdapUser"
    connectionPassword="LdapPassword"   />

解决方法

The application is hosted on a non-domain machine,with a firewall between the application server and the domain controller.

由于您可以使用LDAP工具直接查询,因此建议防火墙打开正确.但是,请注意,ActiveDirectoryMembershipProvider不使用纯旧的LDAP,它使用的是Microsoft技术.例如,如果设置connectionProtection =“Secure”,ADMP将尝试使用SSL和端口636,如果失败,它将使用Microsoft的内置IPSec签名(更多详细信息,请参阅this article).

无论如何,这让我想知道几件事情:

> AD域是否具有拒绝与非域/非配置计算机连接的IPSec“必需”策略? (可能不是,因为你连接了普通的LDAP,但值得研究.)>您是否已将域控制器的NetBIOS名称添加到lmhosts文件,并将其DNS名称添加到主机文件? (许多协议检查其目标的报告名称与您尝试连接的名称相匹配.)>许多人注意到在不同域之间使用ADMP的问题,解决方案需要创建单向信任.由于这听起来像您的客户端计算机不在域中,您不能拥有该信任 – 除非(a)它是具有单向信任的不同域的成员,或(b)它是相同的域,因此客户机 – 服务器信任是隐含的.

原文链接:https://www.f2er.com/aspnet/246593.html

猜你在找的asp.Net相关文章