`
csstome
  • 浏览: 1486307 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Asp.Net应用程序中为什么要MachineKey?如何生成MachineKey?

 
阅读更多

如果你的Asp.Net程序执行时碰到这种错误:“验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。”那么说明你没有让你的应用程序使用统一的machineKey,那么machineKey的作用是什么呢?按照MSDN的标准说法:“对密钥进行配置,以便将其用于对 Forms 身份验证 Cookie 数据和视图状态数据进行加密和解密,并将其用于对进程外会话状态标识进行验证。”也就是说Asp.Net的很多加密,都是依赖于machineKey里面的值,例如Forms 身份验证 Cookie、ViewState的加密。默认情况下,Asp.Net的配置是自己动态生成,如果单台服务器当然没问题,但是如果多台服务器负载均衡,machineKey还采用动态生成的方式,每台服务器上的machinekey值不一致,就导致加密出来的结果也不一致,不能共享验证和ViewState,所以对于多台服务器负载均衡的情况,一定要在每台站点配置相同的machineKey。

machineKey生成的算法:

matchineKey配置:




分享到:
评论

相关推荐

    machineKey生成器

    解决asp.net报错:“验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。”

    web.config machineKey 生成的算法

    當你想使用自己的web.config machineKey 時..生成一個吧??

    ASP.NET Forms验证 实现子域名(SubDomain)共享登陆下的缺陷

    1.把Asp.net的认证模式改为Forms认证模式,domain 要等于你的应用程序对应的域名,例如: .test.cn &lt;forms name=".ASPNETFORM" domain=".test.cn" loginUrl="/login.aspx" defaultUrl="/default.aspx" ...

    machineKey生成器1

    解决asp.net报错:“验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。”.dotnet4

    生成MachineKey工具用于解决验证试图状态MAC失败

    生成MachineKey,解决验证试图状态MAC失败问题

    asp.net 虚拟主机时常出现MAC验证失败错误之解决方法

    出现错误: “/”应用程序中的服务器错误。 ——————————————————————————– 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 &lt;machineKey&gt; 配置指定了相同的 ...

    ASP.NET Cookie是怎么生成的(推荐)

    如果需要在.NET Core中使用ASP.NET Cookie,本文将提到的内容也将是一些必经之路。 抽丝剥茧,一步一步分析 首先用户通过AccountController-&gt;Login进行登录: // // POST: /Account/Login public async Task...

    asp.net 二级域名间SessIon共享

    本程序实现如何在SiteA 实现共享 SiteB 中Session...(注意一点的就是)两个站点如果要实现Session共享 相同密钥是必须要配置的 &lt;machineKey decryptionKey="" validationKey="" validation="SHA1" decryption="Auto"/&gt;

    验证视图状态 MAC 失败的解决办法

    “/”应用程序中的服务器错误。 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 &lt;machineKey&gt; 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。 说明: 执行当前 Web...

    OWIN实现OAuth 2.0 之客户端模式(Client Credential)

    把自己的理解加上吧。...(1)增加machineKey配置,这个可以理解为token的秘钥。 (2)在认证服务中添加自定义的认证。 3、认证服务和资源服务需要启动或者直接建立成站点启动,才可以被客户端访问到。

    webapiDemo

    我们这里提一句machineKey能够被ASP.NET的识别,会影响项目中的加密解密。所以认证服务器生成token的时候会受到machineKey影响,所以资源服务器也要加上一样的machineKey。如果我们不加上machineKey,那么不同的...

    .net core 1.0 实现单点登录负载多服务器

     .net core 出来有一时间了,这段时间也一直在做技术准备,目前想做一个单点登录(SSO)系统,在这之前用.net时我用习惯了machineKey ,也顺手在.net core 中尝试了一上,结果发现不好使了,也不起作用,于是开始了...

    注册用控件ongard

    这里就是用上一步生成的修饰符对机器码做进一步的运算 生成一个最终的机器码 仍然保存在MachineKey中 MachineKey : CKey; 这里是一个random机器码 MachineModifier : ABS CreateMachineID [midUser midSystem ...

    动易标准版SiteFactory.Standard_3.5版

    采用ASP.NET 2.0 进行分层开发的内容管理系统,具有灵活的产品架构、严密的安全性、无限的扩展性和伸缩性,能够高效构建起各种信息资讯类网站、企业内部知识网站、企业信息/产品展示门户网站、军区内网等多种网站...

    sitefactory3.5专业版

    ●增强身份验证票的校验并通过随机machineKey来加强身份验证安全 ●使用NPOI组件改进数据导出功能以支持原生Excel格式 ●增加可绑定内容信息的投票系统 ●增加转向链接功能 ●增加问卷调查可自定义模板标签功能 ●...

    RPA高级认证_第一部分选择题

    B:在MachineKey中,粘贴MachineKey 最后一步:在本机机器人连接成功的状态下,点击发布,即可将本地流程发布到Orchestrator上。 发布成功之后会弹出下面的框 目前本地机器人流程还是空的 发布之后,...

    动易 SmartSchool 3.5版

    伴随动易核心技术升级,应用组件经过优化后的动易 SmartSchool 学校网站管理系统正式发布并升级至 3.5 版本,这是动易根据各大中小学学校门户的信息化应用需求而专门开发的学校门户网站建设解决方案!  在教育信息...

    SmartSchool.Professional_3.5.0.0 学校网站

    伴随动易核心技术升级,应用组件经过优化后的动易 SmartSchool 学校网站管理系统正式发布并升级至 3.5 版本,这是动易根据各大中小学学校门户的信息化应用需求而专门开发的学校门户网站建设解决方案!  在教育...

    FORM 验证AD 并实现SSO

    使用基於 active directory 用戶登錄的FORM 驗證,並且能過配置machineKey 實現SSO 單點登錄

Global site tag (gtag.js) - Google Analytics