【问题标题】:How can the browser know the current AD user ASP.NET浏览器如何知道当前AD用户ASP.NET
【发布时间】:2012-10-02 13:25:01
【问题描述】:

浏览器是否可以在不显式登录的情况下知道当前登录的 AD 用户?我希望服务器中的代码以与浏览器中的用户相同的权限执行。这是可能的还是我必须要求用户明确登录?

上下文:ASP.NET,主要是 IE 7、IIS 7。

谢谢。

【问题讨论】:

  • 我认为这是不可能的。如果我没记错的话,IE 有一个设置,启用后会在服务器请求时将当前广告令牌传递给服务器

标签: asp.net active-directory


【解决方案1】:

如果你...

  • 在 IIS 中使用集成 Windows 身份验证
  • 在相关的web.config
  • 并且您的用户和 IIS 服务器在同一个域中

...那么就可以通过浏览器传递凭据。 IE(微软的创造)可以在没有提示的情况下做到这一点,其他浏览器可能仍然坚持要求用户在新会话开始时输入他们的凭据。

【讨论】:

【解决方案2】:

好的,这个问题有几个部分,所以我一次只讲一个:

首先,您想“不显式登录”进行身份验证。使用 Windows 集成身份验证 的 Internet Explorer 绝对可以做到这一点。请参阅这篇文章 (Internet Explorer May Prompt You for a Password),了解有关您的环境要求的更多详细信息。您需要使用 ASP.NET Windows 身份验证模式启用此功能。

其次,您希望服务器端代码以客户端本地登录用户的身份运行。这称为 Identity Impersonation,您应该阅读这篇 MSDN 文章以了解如何配置它:Using IIS Authentication with ASP.NET Impersonation

另见:MSDN Windows Authentication Provider

【讨论】:

  • 注意:我们的 Intranet 站点使用 Windows 集成身份验证,无缝身份验证适用于 Chrome 和 IE,但 Firefox 会提示输入密码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 1970-01-01
  • 2011-01-24
  • 2019-11-08
相关资源
最近更新 更多