asp.net NET MVC 5设置安全和HTTPOnly标志

zaq34kh6  于 5个月前  发布在  .NET
关注(0)|答案(3)|浏览(96)

我需要将httponlysecure标志设置为我网站的所有cookie,以通过我客户的安全扫描。我认为web.config配置正确

<system.web>
   <httpCookies httpOnlyCookies="true" requireSSL="true" lockItem="true" />

字符串
它对我在应用程序中创建的所有cookie都有效,但对google analitycs的cookie无效(我知道我对此无能为力),我认为是asp.net的会话cookie(ai_userai_session)。


的数据
搜索这两个cookie没有结果。如何强制httponlysecure标志?
我不知道这是否相关,但我也有这个重写规则

<rewrite>      
  <rules>
    <rule name="HTTP to HTTPS redirect" stopProcessing="true">
      <match url="(.*)" />
      <conditions>
        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
      </conditions>
      <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
    </rule>
  </rules>
</rewrite>


我试着让它失效,但没有任何改变

tsm1rwdh

tsm1rwdh1#

我偶然发现“ai_session”和“ai_user”cookie现在与我的项目,我认为他们是从应用程序的见解。如果你进一步调查,请向社区报告。

daupos2t

daupos2t2#

HTTP only标志不能普遍应用,因为这将阻止XSRF-Token被利用并导致安全问题。一些cookie没有HTTPOnly标志,因为它们被前端用来促进对应用程序的访问(ai_session,ai_user,idsrv_session)。

ru9i0ody

ru9i0ody3#

要求SSL的正确方法是通过全局过滤器

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
     filters.Add(new HandleErrorAttribute());
     filters.Add(new System.Web.Mvc.AuthorizeAttribute());
     filters.Add(new System.Web.Mvc.RequireHttpsAttribute());
}

字符串

相关问题