注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

冰魂's blog

关注网络技术.

 
 
 
 
 

日志

 
 

确保ASP.NET应用程序和Web Services安全之计算机密钥  

2011-08-17 00:59:27|  分类: [脚本编程] |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
<machineKey> 元素用于指定保护表单身份验证 Cookie 和页面级视图状态所使用的加密密钥、验证密钥和算法。以下代码示例显示了 Machine.config 中的默认设置:
  <machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="SHA1"/>
  在配置 <machineKey> 时应考虑以下建议:
  ? 对多个应用程序使用唯一的加密密钥
  ? 设置 validation="SHA1"
  ? 手动为 Web 场生成密钥
  对多个应用程序使用唯一的加密密钥
  如果在一个 Web 服务器上驻留多个应用程序,应该对计算机上的每个应用程序使用唯一的密钥,而不是对所有应用程序使用一个密钥。这样可以避免在驻留环境中,一个应用程序可以欺骗视图状态或加密的表单身份验证 Cookie。
  还应使用 IsolateApps 设置。这是 .NET Framework 1.1 中的新设置,用于指示 ASP.NET 自动生成加密密钥,并使每个应用程序的密钥是唯一的。
  设置 validation="SHA1"
  validation 属性指定页面级视图状态的完整性检查所使用的算法。可能的值为“SHA1”、“MD5”和“3DES”。
  如果在 <forms> 元素上使用了 protection="All",将对表单身份验证 Cookie 进行加密,同时还可以确保完整性。无论 validation 属性如何设置,表单身份验证均使用 TripleDES (3DES) 为 Cookie 加密。
  注意:表单身份验证 Cookie 加密与 validationkey 设置无关,该密钥基于 decryptionKey 属性。
  如果在 <machineKey> 上设置了 validation="SHA1",将使用 SHA1 算法检查页面级视图状态的完整性,同时假定 <pages> 元素配置为视图状态 MAC。有关详细信息,请参阅本模块前面的视图状态。
  也可以将 validation 属性设置为 MD5。应该使用 SHA1,因为此算法生成的哈希值比 MD5 要大,因此更安全。
  如果在 <machineKey> 上设置了 validation="3DES",将使用 3DES 算法为页面级视图状态加密(同时还检查完整性),即使 <pages> 元素配置为视图状态 MAC。
  手动为 Web 场生成密钥
  在 Web 场中,必须设置明确的密钥值,并在 Web 场中的所有计算机上使用相同的密钥值
  评论这张
 
阅读(74)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017