.Net Core Cookie跨站点共享 会话保持
2024-08-22 18:17:30
这里使用简单粗暴的方式,只为做个记录。
关键配置:
services.AddDataProtection()
.SetApplicationName("appname")
.DisableAutomaticKeyGeneration()
.PersistKeysToFileSystem("keypath");
注意:
appname:所有站点的ApplicationName值要保持一致
keypath:所有站点的密钥需要相同,这里指的是密钥存放的路径
做到以上两点一致,即可实现Cookie共享,当然,CookieName一样也是必须的。
DisableAutomaticKeyGeneration() 该方法表示不自动创建密钥,采用只读模式,然后指定密钥的路径。如果不使用该方法,系统在启动时会进行检测,如果没有便会自动创建,那么多站点下,每个站点都创建一个密钥,导致密钥不同,解密结果肯定不一样,那Cookie就无法跨站点,所以使用只读取模式,因此在启动和部署应该之前,要先生成密钥。至于如何生成密钥,此文中已提到,看你能否领悟 - -。
我们使用的大概原理就是:使用相同的密钥对Cookie进行加解密,任何一个站点当然能都能识别。
深入的学习,请看文章中给出的文献参考链接,比如修改加密方式,指定密钥时效等。
参考文献:https://docs.microsoft.com/zh-cn/aspnet/core/security/data-protection/configuration/overview
http://www.cnblogs.com/dudu/p/6495951.html
文章出处:http://www.cnblogs.com/anech/p/6873604.html
最新文章
- datagridview 单元格格式转换注意
- windows平台编译bgfx
- Oracle存储过程 输出参数赋值异常:“Oracle.DataAccess.Types.OracleString”的类型初始值设定项引发异常。
- 各个JSON技术的比较
- Http相应代码及获取方法
- V - 不容易系列之(4)――考新郎(第二季水)
- js封装好的模仿qq消息弹窗代码
- CentOS6.5自带Python2.6.6升级至Python2.7
- repeat帮定删除按钮事件,并且生成去人删除提示
- ERROR CL .exe……错误
- [51nod1671]货物运输
- PAT1078 Hashing 坑爹
- 安装xlwt和xlrd
- elasticsearch 5.0以上不支持consistency 和 quorum
- django model设计与实际数据库表的对比
- vue页面传参和接参
- Windows登录类型及安全日志解析
- ";上市时间:&;nbsp;2014&;#24180;&;#31179;&;#20908;&;#23395;"; unicode十进制编码转中文
- LoadRunner 检查点函数总结
- SP1487 PT07J - Query on a tree III (主席树)