You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#/IIS会话在Iframe中仅某父站点可用,新站点失效

跨域嵌入会话失效问题排查

环境背景

客户拥有三个站点:

  • WordPress站点:site1.org
  • C#/IIS(.NET Framework 4.5)应用:app.org
  • 开发中新站点:newsite.org

app.org核心代码实现

自定义登录脚本(设置会话并跳转)

Session[UtilityFunction.Session.SessionConstants.USERNAME] = obj.UserName;
Session[UtilityFunction.Session.SessionConstants.USERID] = obj.UserProfileId;
Session[UtilityFunction.Session.SessionConstants.FIRSTNAME] = obj.FirstName;
return RedirectToAction("LoginAccountHome", "Home");

会话检查自定义属性

public class SessionTimeoutAttribute : ActionFilterAttribute
{
    /// <summary>
    /// Check if the session is available and redirect to login if session not available
    /// </summary>
    /// <param name="filterContext">Action Executing Context</param>
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        HttpContext ctx = HttpContext.Current;
        if (HttpContext.Current.Session[PLTMain.UtilityFunction.Session.SessionConstants.USERID] == null)
        {
            string redirectTo = "~/Account/Login";
            redirectTo = string.Format("~/Account/Login?returnUrl={0}", HttpUtility.UrlEncode(HttpContext.Current.Request.RawUrl));
            filterContext.Result = new RedirectResult(redirectTo);
            return;
        }

        base.OnActionExecuting(filterContext);
    }
}

当前嵌入情况

  • site1.org通过iframe嵌入app.org可正常设置会话:
<iframe id="iframe" class="login-page" src="https://app.org/main" style="width: 100%; border: none; height: 816px; display: inline-block;"></iframe>
  • newsite.org嵌入时,会话无法设置且跳转回登录页,本地HTML文件测试也存在相同问题。

已尝试操作

  • 浏览器测试:Firefox正常,Chrome/Edge失效,推测Chromium系浏览器安全限制更高。
  • 代码检查:未发现IP或Referer相关规则。
  • 修改web.config:添加CORS配置及sessionState的cookieSameSite="None"。
  • IIS站点配置:添加CORS响应头。

问题

  1. 这种情况是否存在重大安全隐患?
  2. 除已尝试的方法外,还有哪些解决方案?

内容的提问来源于stack exchange,提问作者Kris Campbell

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 11:33:26