1

我继承了现有的 .net Web 应用程序。它是一个外部网站,供外部用户和内部用户使用。要登录/验证内部用户,它使用 LDAP 验证。外部用户转到不同的数据库。

我的 IT 部门想要改变内部用户的登录方式。他们不想让外部服务器能够使用 LDAP 访问 AD。从外部服务器访问 AD 是否有更安全的方法?还是根本不推荐?

另外,登录的设计是否有缺陷?内部和外部用户是否应该以相同的方式登录?登录用户的最佳实践是什么?

4

1 回答 1

2

您可以为此使用 ADFS(Active Directory 联合服务)。

这将要求您在网络内安装 ADFS 服务器(以便它可以联系 AD)。

ADFS 服务器包含一个基于 Web 的 STS(安全令牌服务),以允许网页使用 AD 帐户登录。

基本上简而言之,它将按以下方式工作:

  1. 您的用户导航到外部 Web 应用程序
  2. Web 应用程序会将用户重定向到 ADFS STS 服务器。
  3. ADFS STS 服务器将验证您的凭据(通过使用集成安全性或基于 Web 的登录框)
  4. 如果 ADFS STS 服务器对凭据感到满意,它将使用登录令牌作为额外信息将用户重定向回外部 Web 应用程序。此令牌包含有关用户的信息(可以配置)。它由 ADFS 服务器签名(以确保信息是真实的),并且可以选择加密。
  5. 外部 Web 应用程序提取令牌并测试签名。如果一切正确,Web 应用程序将授予用户应具有的权限。

有关在 ASP.NET 应用程序中进行设置的信息,您可以参考以下网址:http: //blogs.msdn.com/b/alextch/archive/2011/06/27/building-a-test-claims-意识到-asp-net-application-and-integrating-it-with-adfs-2-0-security-token-service-sts.aspx

于 2012-12-06T21:24:38.967 回答