.net core 共享 .Net Forms Authentication cookie
Posted xyyie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net core 共享 .Net Forms Authentication cookie相关的知识,希望对你有一定的参考价值。
Asp.net 项目迁移到 asp.net core 项目后需要 兼容以前老的项目的登录方式。 Forms Authentication cookie 登录。
从网上搜集到关于这个问题的解决思路都没有完美解决。
帖子如下:
坎坷路:ASP.NET Core 1.0 Identity 身份验证(中集)
通过这两篇得到解决问题的方案:
1、曲线救国的方式 通过老的项目提供解析cookie服务达到统一验证。
2、统一升级为最新的加密授权方式。(改造比较大)
3、是否asp.net core 下有对应移植过来的解密类库。
通过 google 搜索到一下类库,经过测试验证可用。但是还是有条件的。
https://github.com/synercoder/FormsAuthentication
synercoder/FormsAuthentication 类库 实现了asp.net core 中 identity 兼容 cookie 的方式
重写
TicketDataFormat
TicketDataFormat = new FormsAuthenticationDataFormat
https://github.com/dazinator/AspNetCore.LegacyAuthCookieCompat
AspNetCore.LegacyAuthCookieCompat 类库可以解密加密 web.config 中
<machineKey validation="SHA1" validationKey="XXXXX" decryption="AES" decryptionKey="XXXXX" /> 配置的类容.
相关参考:
https://devblogs.microsoft.com/aspnet/cryptographic-improvements-in-asp-net-4-5-pt-2/
https://www.cnblogs.com/selimsong/p/7771875.html
https://support.microsoft.com/zh-cn/help/2425938/how-to-configure-legacy-encryption-mode-in-asp-net
https://docs.microsoft.com/zh-cn/previous-versions/w8h3skw9(v=vs.110)
以上是关于.net core 共享 .Net Forms Authentication cookie的主要内容,如果未能解决你的问题,请参考以下文章
在 ASP.Net 5 / Core 中启用跨域资源共享 (CORS)
IIS 在 ASP.NET Core 和 ASP.NET 应用程序之间共享 cookie