加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – Umbraco 7自定义cookie

发布时间:2020-12-15 19:49:13 所属栏目:asp.Net 来源:网络整理
导读:我在Umbraco旁边经营着一个MVC网站. MVC站点处理自己的身份验证,完全独立于Umbraco,以及ASP.NET Forms身份验证.它设置一个cookie并在内部使用它来跟踪事物. 在大多数情况下一切正常,但如果我使用上述cookie集登录到我的MVC站点,我尝试使用正确的Umbraco凭据
我在Umbraco旁边经营着一个MVC网站. MVC站点处理自己的身份验证,完全独立于Umbraco,以及ASP.NET Forms身份验证.它设置一个cookie并在内部使用它来跟踪事物.

在大多数情况下一切正常,但如果我使用上述cookie集登录到我的MVC站点,我尝试使用正确的Umbraco凭据登录到Umbraco管理部分,它会对我进行身份验证并将我重定向到管理部分但是WebAPI调用开始失败.第一个是调用:/ umbraco / backoffice / UmbracoApi / UpdateCheck / GetCheck,它返回一个417 Missing token null HTTP错误响应.

如果我删除我的自定义cookie并刷新页面一切正常.

我不明白我的饼干如何干扰Umbraco的.它不使用ASP.NET Forms身份验证或任何东西.

解决方法

发生此错误是因为您的请求未发送所需的角度CSRF标头cookie.我不确定为什么会出现这种情况,但如果它是您的自定义cookie的错误,它似乎很奇怪.也许您可以告诉我们有关您的问题的更多信息:Cookie名称/值,重现步骤,Umbraco的特定版本,托管环境等….

关于发生了什么的一些信息,返回此错误的代码在这里:

https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/WebApi/Filters/AngularAntiForgeryHelper.cs#L94

这是设置CSRF cookie的地方:

https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/WebApi/Filters/SetAngularAntiForgeryTokensAttribute.cs

此属性应用于两个操作,一个用于登录,另一个用于检索当前用户数据:

> https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/Editors/AuthenticationController.cs#L103
> https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/Editors/AuthenticationController.cs#L84

这是在JS中设置标头的地方:

https://github.com/umbraco/Umbraco-CMS/blob/5b9a98ad6ae9e63322c26f7b162204e34f7fcb54/src/Umbraco.Web.UI.Client/src/init.js#L11

根据您的托管环境/设置,有一些奇怪的报告显示某些防火墙剥离/更改数据,例如:

http://our.umbraco.org/forum/umbraco-7/using-umbraco-7/47340-Umbraco-7-plus-ISA-Server-2006

希望根据上面的信息,您可能能够确定问题的开始位置.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读