日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ASP.NET machineKey的作用和使用方法

ASP.NET machineKey的作用

如果你的Asp.Net程序執(zhí)行時碰到這種錯誤:“驗證視圖狀態(tài) MAC 失敗。如果此應用程序由網(wǎng)絡場或群集承載,請確保 配置指定了相同的 validationKey 和驗證算法。不能在群集中使用 AutoGenerate?!蹦敲凑f明你沒有讓你的應用程序使用統(tǒng)一的machineKey,那么machineKey的作用是什么呢?按照MSDN的標準說法:“對密鑰進行配置,以便將其用于對 Forms 身份驗證 Cookie 數(shù)據(jù)和視圖狀態(tài)數(shù)據(jù)進行加密和解密,并將其用于對進程外會話狀態(tài)標識進行驗證。”也就是說Asp.Net的很多加密,都是依賴于machineKey里面的值,例如Forms 身份驗證 Cookie、ViewState的加密。默認情況下,Asp.Net的配置是自己動態(tài)生成,如果單臺服務器當然沒問題,但是如果多臺服務器負載均衡,machineKey還采用動態(tài)生成的方式,每臺服務器上的machinekey值不一致,就導致加密出來的結果也不一致,不能共享驗證和ViewState,所以對于多臺服務器負載均衡的情況,一定要在每臺站點配置相同的machineKey。

ASP.NET machineKey生成的算法:

 
 
 
  1. validationKey = CreateKey(20);  
  2.  
  3. decryptionKey = CreateKey(24);  
  4.  
  5.       protected string CreateKey(int len)  
  6.  
  7.       {  
  8.  
  9.              byte[] bytes = new byte[len];  
  10.  
  11.              new RNGCryptoServiceProvider().GetBytes(bytes);  
  12.  
  13.                StringBuilder sb = new StringBuilder();  
  14.  
  15.                for(int i = 0; i < bytes.Length; i++)  
  16.  
  17.                {      
  18.  
  19.                     sb.Append(string.Format("{0:X2}",bytes[i]));  
  20.  
  21.                }  
  22.  
  23.                return sb.ToString();  
  24.  
  25.       }  
  26.  

附參考的ASP.NET machineKey配置:

 
 
 
  1.  version="1.0"?> 
  2.  
  3.  
  4.  
  5.     
  6.  
  7.       validationKey="3FF1E929BC0534950B0920A7B59FA698BD02DFE8" decryptionKey="280450BB36319B474C996B506A95AEDF9B51211B1D2B7A77" decryption="3DES" validation="SHA1"/> 
  8.  
  9.        
  10.  
  11.  
  12.  

【編輯推薦】

  1. .NET框架解決DLL Hell問題:問題描述
  2. ASP.NET MVC單元測試:HttpContext類的Path屬性解惑
  3. 自定義的ControllerFactory:接口實現(xiàn),支持Area
  4. ASP.NET Routing之“解析URL”功能詳解
  5. 為ASP.NET MVC應用添加自定義路由

文章名稱:ASP.NET machineKey的作用和使用方法
文章地址:http://m.5511xx.com/article/dpdshoe.html