c# - 具有一个登录应用程序的 asp.net 4.0 应用程序的单点登录 (SSO)

标签 c# .net asp.net single-sign-on

这个问题对你们大多数人来说可能很奇怪,但这是一个非常简单的问题。我有越来越少的 10 个应用程序需要 SSO 解决方案。我们使用 machinekey 成功地完成了所有事情,但现在需要创建一个中央登录应用程序(基本上包含登录表单和密码检索框),这是用户尝试进入其中一个应用程序而不先进行身份验证的登录页面。

问题是,如果我将绝对 loginurl 放在应用程序的 web.config 中(例如,我将 http://login.myapp.com/ 代替 ~/login.aspx ),我将成功重定向,但传递的 ReturnUrl 不是绝对的,而是相对的,并且所以我无法回到“调用”应用程序。

知道如何解决这个问题吗?

谢谢, 马可

最佳答案

在您的 web.config 中尝试设置 enableCrossAppRedirects属性为真;

<configuration>
    <system.web>
        <authentication mode="Forms">
            <forms .... enableCrossAppRedirects = "true" ....>
            </forms>
        </authentication>
    </system.web>
</configuration>

这确实让您可以重定向攻击,但是......

关于c# - 具有一个登录应用程序的 asp.net 4.0 应用程序的单点登录 (SSO),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7178276/

相关文章:

c# - 是否建议为 Xamarin 项目始终选择目标 AnyCPU?

c# - 如何连接到 RootDSE 和/或使用 System.DirectoryServices.Protocols 检索 highestCommittedUSN?

c# - 在 C# 中组合两个对象的最有效方法

c# - 为什么我不能在 C# 中捕获通用异常?

asp.net - IIS 上托管的 Owin 无法捕获带有点 "."的 URL

c# - 使用其他语言字符的 HttpUtility.HtmlEncode 问题

c# - Node.js 到 C# 转换

c# - 如何通过全局热键将我的表单设置为事件状态?

c# - 在 C# 中导航集合的通用列表

asp.net - ASP核心: How to set httpContext.用户?