【问题标题】:Using Windows Integrated Auth & Anonymous after jakarta redirect on IIS7在 IIS 7 上进行 jakarta 重定向后使用 Windows 集成身份验证和匿名
【发布时间】:2010-06-07 10:55:35
【问题描述】:

我有一个我们购买的应用程序需要集成,它使用 jakarta 连接从 IIS 访问该应用程序。

所以,基本操作是:

  1. 用户转到网址
  2. 被重定向到应用程序
  3. SSO 已启用,因此重定向回来 到 IIS 以获取域 凭据
  4. 返回应用程序
  5. 如果用户名为空,则显示登录 页面,否则让用户进入。

这是对所有步骤的简化,但基本思想在这里。

我的困难是我需要同时启用 Windows 集成身份验证和匿名,因为某些用户没有凭据,并且需要提示输入用户名/密码。

我已经看过:IIS Windows Authentication before Anonymous,但用户无法点击链接来决定。应用程序返回 IIS 查找 login.aspx,然后我想从那里获取他们的域凭据或将空字符串传回应用程序以表示没有凭据。

这似乎是不可能的,虽然好像是匿名的,它不会发出 401 请求,因此不会传递凭据。

如果我不能仅使用 ASP.NET 页面来实现这一点,是否可以使用 ISAPI 过滤器或模块来完成?

更新:

我找到了一个可能的解决方案,但我需要弄清楚如何让它工作,因为我的登录页面在 JBoss 服务器上。

http://mvolo.com/blogs/serverside/archive/2008/02/11/IIS-7.0-Two_2D00_Level-Authentication-with-Forms-Authentication-and-Windows-Authentication.aspx

【问题讨论】:

    标签: asp.net iis-7 windows-authentication


    【解决方案1】:

    将 IIS 中的身份验证保持为匿名。

    加载主页时,检查当前登录的用户名的活动目录(如果存在)

    为当前用户提供额外的功能,或者提供更少的选项。

    参考 --> Active Directory Cheking

    【讨论】:

    • 如何在不让 IIS 返回浏览器获取数据(401 请求)的情况下获取用户名?我正在查看 Request.ServerVariables["AUTH_USER"] 和 ServerVariables["LOGON_USER"] 如果启用了匿名,它们基本上都是空的。
    • 这是一个内网网页应用吗?
    • 这是一个供内部和外部使用的应用程序。对于内部使用,我想使用集成身份验证,而对于外部使用,他们需要登录。理想情况下,每个人都可以访问一个网页,而无需编写 ActiveX 控件或 IE/Firefox/Safari 插件。 :)
    • 我接受了您的回答,因为我最终选择了 AUTH_USER,因为如果浏览器位于本地、受信任的 Intranet 中,那么我可以获得凭据。
    猜你喜欢
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    • 2019-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-06
    相关资源
    最近更新 更多