3

我们有一个在客户站点上运行的 ASP.NET 应用程序,该应用程序使用 ActiveDirectory 通过 ActiveDirectoryMembershipProvider 进行用户登录。我们指向的他们的主域控制器今天早上出现故障,在恢复所有内容时,客户端想知道我们是否可以与两个域控制器建立冗余连接;即指定一个主要和一个备份AD 服务器。谷歌搜索被证明是徒劳的——有人知道这是否可以做到吗?

4

2 回答 2

2

如果 ActiveDirectory 不能处理多个域控制器,那么它就不是一个很好的技术。

您只需要确保在您的会员配置中指向“域”而不是“服务器”,然后将两个或更多控制器添加到您的域。

通常,如果您将域称为“LDAP://server/DC=domain,DC=com”,那么您应该能够删除“server”部分并简单地引用“LDAP://DC=domain,DC =com”

以下代码项目列出了您可以从 C# 在 Active Directory 中执行的操作:http: //www.codeproject.com/KB/system/everythingInAD.aspx#7

于 2008-09-10T15:46:52.197 回答
0

这是可以做到的,只是需要一些工作。

您将需要创建一个继承 ActiveDirectoryMemberhsipProvider 的类,并在您的提供者中使用它。这样您就可以维护大部分功能。然后设置一种方法来指定两个 connectionStringName 属性,一个用于主属性,一个用于辅助属性。由于您正在更改配置,因此您还需要创建代码以从配置中读取信息。然后只需覆盖您需要在主服务器关闭并切换到辅助服务器时捕获的方法。这将是最可重用的方式。

可能还有其他方法可以做到这一点,但它可能会很hacky并且不是很可重用。就像在每个请求之前测试连接,然后以这种方式设置连接字符串。

根据该类的MSDN 文档,这可能是唯一的方法。它们不提供内部功能。

于 2008-09-10T15:44:17.103 回答