【问题标题】:Web application that prompts credentials off network and uses Windows credentials on the network提示断开网络凭据并在网络上使用 Windows 凭据的 Web 应用程序
【发布时间】:2014-04-17 15:32:20
【问题描述】:

我正在实现一个托管在 IIS 7.5 中的 C# MVC 4 应用程序来替换公司的 Intranet。要求是当用户在他们的个人工作站上使用他们的 Windows 凭据登录时,他们不会被提示登录(这不是可选的,客户对此很坚定,因为他们认为这就是 SharePoint 的工作方式。虽然我无法确认) ,但是当他们在移动设备上或在本地网络之外的个人计算机上时,他们将被提升为他们的凭据。此外,在关闭网络时,用户应该能够注销,并且应用程序应该在一段时间不活动后自动注销。所有有权访问该应用程序的用户都将拥有 AD 凭据。

我试图通过 Windows 身份验证获得一个可行的解决方案,但据我了解,Windows 身份验证不适合在本地网络之外使用。即使我可以使用此选项获得所需的身份验证结果,但如果没有大量的 kludge 和 JS 黑客攻击,也无法退出。

似乎默认情况下表单身份验证是答案,但有没有办法利用用户的 Windows 凭据并针对 Active Directory 进行身份验证而不提示用户在网络上登录?

【问题讨论】:

    标签: c# asp.net-mvc-4 authentication active-directory iis-7.5


    【解决方案1】:

    不幸的是,即使在我致电 Microsoft 之后,我也无法找到解决此问题的好方法。他们确实建议使用 Active Directory 联合服务。这不是我们的选择。

    还有一个很棒的blog post,它与我正在寻找的相反,但可能被操纵来工作。

    在与我的产品负责人合作后,我们确定了一个真正的表单身份验证模型。我能够安抚他们的方式是针对本地网络上的用户,我将表单身份验证令牌和 cookie 的超时设置为更长的持续时间并刷新持续时间,以便如果用户经常在应用程序上处于活动状态,他们可能永远不会提示登录。

    这可能不是最优雅的解决方案,但它使我们能够满足产品负责人设定的要求。如果有人有其他建议,我很乐意听取他们的意见。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多