【问题标题】:Integrated Authentication on Webserver - Security?Web 服务器上的集成身份验证 - 安全性?
【发布时间】:2009-09-16 17:39:11
【问题描述】:

我们有自己的网络服务器来托管我们的网站,该服务器在我们的网络之外向公众开放。

我有一个请求,在我们的职业页面上创建我们的“内部发布”链接,以根据我们网络的 Active Directory 列表对用户进行身份验证。

我目前已对其进行了设置,因此链接会点击网站目录结构内的页面,并且该页面的文件夹设置为“集成 Windows 身份验证”。此页面的匿名访问已关闭。如果用户经过身份验证(即:登录到我们的网络或提供适当的凭据),它会将它们传递到托管我们的招聘信息的外部职业网站。如果他们未能通过身份验证,则会显示自定义 401 错误页面。

这工作正常,但它有一个问题。使用 IE,人们不能只输入他们的用户名。他们(当然)也需要输入域名。不幸的是,默认的“域”设置为我们网站的 URL (www.xyz.com/username)。我希望它自动选择我们内部域的名称(aaa/用户名),但不确定如何执行此操作。

另一种选择是使用 LDAP 和一些 ASP 脚本来验证用户身份。我已经有了这段代码,但不确定这样做的安全后果。基本上,该页面将设置为匿名身份验证,如果用户没有登录到我们的网络,则会使用标准文本框提示他们输入用户名/密码。然后将其传递给对我们的 Active Directory 执行 LDAP 查找的 ASP 脚本。这种方法有安全问题吗?

你会选择哪种方法?

谢谢。

编辑:似乎我无法使用用户名/密码组合通过 LDAP 向 ActiveD 进行身份验证。所以忘记那个选项。

我现在的问题是,如何更改 IWA 使用的默认“域”?这有可能吗? IE 似乎默认为“www.xyz.com\username”(我的网站)而不是“aaa\username”(我的域名)。当然,www.xyz.com\username 会失败,因为那不是我们的 ActiveD 所在的位置……这可能吗?我想让我们的员工尽可能简单。

【问题讨论】:

  • 网络服务器在域 AAA 上?在另一个域上?根本不在域上,而是在 DMZ 中?
  • 网络服务器位于域 AAA 上,但也可以从我们的网络外部访问。当用户从外部点击经过身份验证的页面时,它默认为 xyz.com 域(我们的 url)而不是 AAA。奇怪的是,Chrome 对用户只需输入没有域的用户名就没有问题。

标签: authentication asp-classic


【解决方案1】:

您无法使用在 LDAP 中查找用户的脚本对用户进行身份验证。您需要知道用户就是它声称的那个人,唯一的方法是让 NTLM/Kerberos 对用户进行身份验证(即建立用户知道存储在 AD 中的秘密的证据,密码)。

【讨论】:

【解决方案2】:

对于在内部网络上运行的 IE 浏览器,该网站的 URL 被视为位于本地 Intranet 区域中的一组站点。默认情况下,当遇到 NTLM/Kerberos 挑战时,站点会考虑向本地 Intranet 发送当前登录的用户凭据。因此,您的内部用户甚至不应该看到网络登录框。

【讨论】:

    【解决方案3】:

    我讨厌挖掘一个旧线程,但如果我理解这个问题,答案有点误导。 Remus 提到的线程是关于通过 LDAP 使用用户名only 进行身份验证。正如他指出的那样,这是不可能的。但看起来 Kolten 的想法是通过 LDAP 使用用户名和密码进行身份验证。那是a standard practice called binding

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-18
      • 1970-01-01
      • 2016-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-18
      相关资源
      最近更新 更多