【问题标题】:Change SameSite attribute for FedAuth cookie?更改 FedAuth cookie 的 SameSite 属性?
【发布时间】:2021-01-11 22:09:31
【问题描述】:

我很难更改 ASP.NET MVC 应用程序上的 SameSite 属性。这是场景: 我正在尝试在 iframe 中加载我的 ASP.NET 应用程序,并且由于 Google Chrome 80+ 中的更改,我需要为 cookie 设置 SameSite 属性,以便能够在 iframe 中使用身份验证 cookie。我点击了这个链接SameSite Cookie

并应用了更改,但由于某种原因,这不会更改 FedAuth 和 FedAuth cookie 的 SameSite 属性。 以下是创建会话 cookie 的代码:

SessionAuthenticationModule session = FederatedAuthentication.SessionAuthenticationModule;
SessionSecurityToken sToken = session.CreateSessionSecurityToken(principal, null, DateTime.UtcNow, DateTime.UtcNow.AddHours(24), isPersistant);
            session.AuthenticateSessionSecurityToken(sToken, true);
session.WriteSessionTokenToCookie(sToken);

web.config

<httpRuntime requestValidationMode="2.0" maxRequestLength="28672" targetFramework="4.7.2" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

<compilation debug="true" targetFramework="4.7.2">
<httpCookies httpOnlyCookies="true" sameSite="None" requireSSL="true"/>
<authentication mode="Forms">
   <forms  requireSSL="true" cookieSameSite="None"/>
</authentication>
<sessionState cookieSameSite="None" /> 

<system.identityModel.services>
    <federationConfiguration>
      <cookieHandler mode="Default" requireSsl="true" persistentSessionLifetime="0.06:00:00" path="/"/>
</federationConfiguration>

你有什么建议吗?

【问题讨论】:

    标签: asp.net-mvc google-chrome cookies iframe samesite


    【解决方案1】:

    我对使用 wsfed 还是很陌生,但将其添加到我的 Global.asax.cs 似乎对我有用:

    void WSFederationAuthenticationModule_SignedIn(object sender, EventArgs e)
    {
      foreach (string key in Response.Cookies.AllKeys)
      {
        if (key.StartsWith("FedAuth"))
        {
          var cookie = Response.Cookies[key];
    
          cookie.SameSite = SameSiteMode.None;
          cookie.Secure = true;
        }
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      • 2020-04-17
      • 2022-11-07
      • 2020-07-04
      • 2020-07-13
      • 2020-12-13
      • 1970-01-01
      相关资源
      最近更新 更多