精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

詳解ASP.NET中Membership表和阻止DOS攻擊

開發(fā) 后端
本文將講述如何在ASP.NET中建立Membership表和阻止DOS攻擊,希望能加快大家的訪問速度。

無需關閉站點的情況下如何查詢ASP.NET 2.0 Membership表

這種查詢會爽快的運行在你的開發(fā)環(huán)境中:

Select * from aspnet_users where UserName = 'blabla'

或者在無需任何問題的情況下獲得一些用戶的 profile :

Select * from aspnet_profile where userID = '…...'

甚至你可以像這樣在aspnet_membership表中輕松的更新用戶的郵件地址:

Update aspnet_membership
SET Email = 'newemailaddress@somewhere.com'
Where Email = '…'

但是當在你的產品服務器上有一個巨大的數(shù)據庫時,運行這些腳本都會搞垮你的服務器。理由就是,雖然這些查詢看起來明顯是你經常使用的語句,但是這些語句沒有任何索引。因此,上面所有在"Table Scan"中的結果(很糟糕的查詢方式)都會響應數(shù)百萬行記錄。

這里的現(xiàn)象對我們而言意味著什么。我們使用了這些字段諸如UserName, Email, UserID, IsAnonymous等。關于Pageflakes的很多市場報表。這些報表中的一些僅僅市場部可以使用,其他人都不可以使用它。現(xiàn)在,站點運行得很好,但是市場部一天當中會使用它很多次而且用戶常常打電話告訴我們網站太慢了,”用戶報告網站性能十分地慢!”,一些頁面甚至還發(fā)生超時等現(xiàn)象。

常常,當他們打電話個給我們的時候,我們就會告訴他們“稍等,馬上檢查”,然后我們開始對整個網站進行檢查。我們使用SQL profiler工具來查看到底那里出錯了。但是我們不能找到任何問題。Profiler顯示了查詢運行的摁件。CPU負載位于適當?shù)膮?shù)范圍內。站點運行得很好,很流暢。我們打電話給他們,“我們不能查到任何問題,到底怎么了?”。

因此,當我們試圖調查這個問題并且在我們沒有調查時,發(fā)現(xiàn)站點真的變得很慢的時候,為什么我們不能看到它變慢的任何問題?

市場部有時候每天需要很多次運行一些分析報表來查詢數(shù)據。無論什么時候他們執(zhí)行這些查詢,當這些字段都是不是索引時,它會使得服務器的IO吞吐量更高以及CPU的使用率增高:

我們使用了15000 RPM的SCSI驅動器,雖然很貴,但是運行速度很快。CPU是雙核Dual Xeon 64位的。盡管有這些強大的硬件支持,但是由于這個巨大的數(shù)據庫在執(zhí)行查詢時仍然把我們壓倒了。

但是當市場部給我們打電話時,這些問題從來沒發(fā)生過,并且我們沒有掛斷電話并試圖找出問題所在。因為當他們打電話給我們時,會跟我們交談,他們沒有運行使服務器垮掉的任何報表。讓他們停留在了站點上的其它地方,幾乎做了和用戶一樣的事情.

咱們看看如下索引:

表: aspnet_users
◆簇索引 = ApplicationID, LoweredUserName
◆非簇索引 = ApplicationID, LastActivityDate
◆主鍵 = UserID

表: aspnet_membership
◆簇索引 = ApplicationID, LoweredEmail
◆非簇索引= UserID

表: aspnet_Profile
◆簇索引 = UserID

大部分索引都有ApplicationID在其中。除非你放置ApplicationID='…'在WHERE從句中,此時它就不會使用任何索引。結果,所有的查詢會進行全表掃描。僅僅是把ApplicationID放在where從句中(從aspnet_Application表中找到你的ApplicationID)所有的查詢就會變得非常快。

不要在WHERE從句中使用Email或者UserName。他們不是索引的一部分,從而取代LoweredUserName和LoweredEmail字段。所有的查詢必須在WHERE從句中有ApplicationID。

我們的管理站點上包涵了很多這種報表并且每個報表都包涵了很多這種在表aspnet_users、 aspnet_membership 和aspnet_Profile上的查詢。結果,當市場部試圖產生報表時,它們會占用所有CPU、HDD的資源,最終導致站點變得非常慢甚至毫無響應。
確保你總是檢查了所有的WHERE和JOIN從句。否則當你的網站上線時會出現(xiàn)大問題。

阻止決絕服務(DOS)攻擊

對黑客而言,Web服務是最容被襲擊的目標,因為甚至一個入門級的黑客都可以通過重復調用一個代價昂貴的Web服務來使服務器死掉。像Pageflakes這樣以Ajax技術構建的頁面并將其作為起始頁的站點將是DOS攻擊的最大目標,因為如果你僅僅是在無需保存cookie的情況下重復地訪問主頁,這樣每次點擊都會產生一個新的用戶、新的頁面配置、新的widgets等。第一次訪問是花費代價最昂貴的一次。

可是這也是最容易暴露并搞垮站點的一次機會。你可以自己試試這種方式,僅僅需要如下一段簡單的代碼即可:

for( int i = 0; i < 100000; i ++ )
{
 WebClient client = new WebClient();
 client.DownloadString("}


令你感到吃驚的是,你會注意到,在進行兩次調用之后,你不會得到一個有效的響應。這并不是說你已經成功地將服務器搞垮了。而是因為你的請求被決絕了。你可能會樂意你不再獲得任何服務了,因此你達到了決絕服務(你自己)的目的。我們很高興決絕了你的服務(DYOS)。

我提出的這種簡便技巧就是記住從某個特殊IP地址發(fā)來的請求。當請求的數(shù)量超過閥門值時,便決絕后續(xù)發(fā)來的請求。這個辦法是在ASP.NET緩存中記住調用者的IP并為每個IP維護一個計數(shù)的請求。當該計數(shù)值超過了預定義的限定值時,決絕一段時期后的發(fā)來的請求,比如10分鐘。10分鐘后,再次允許來自那個IP的請求。

我有一個名為ActionValidator的類,該類包涵了一些具體的活動諸如首次訪問、再次訪問、異步回傳、添加新的widget、添加新的頁面等等。檢查這種指定活動的計數(shù)值是否指向了一個IP閥門值。

public static class ActionValidator
{
 private const int DURATION = 10; // 10 min period

 public enum ActionTypeEnum
 {
 FirstVisit = 100, // The most expensive one, choose the value wisely.
 ReVisit = 1000,// Welcome to revisit as many times as user likes
 Postback = 5000,// Not must of a problem for us
 AddNewWidget = 100,
 AddNewPage = 100,
 }

該枚舉包涵了活動的類型以便用來在某個持續(xù)的時間――10分鐘檢查它們的閥門值。

使用 一個名為IsValid的static方法用來進行檢查。如果請求限制沒有通過,則返回true。如果請求需要被決絕,則返回false。一旦你獲得false,你就可以調用Request.End ()方法并阻止ASP.NET進行未來的處理。你可以切換顯示了“Congratulations! You have succeeded in Denial of Service Attack.”的頁面。

public static bool IsValid( ActionTypeEnum actionType )
{
 HttpContext context = HttpContext.Current;
 if( context.Request.Browser.Crawler ) return false;
 
 string key = actionType.ToString() + context.Request.UserHostAddress;
 var hit = (HitInfo)(context.Cache[key] ?? new HitInfo());
 
 if( hit.Hits > (int)actionType ) return false;
 else hit.Hits ++;

 if( hit.Hits == 1 )
context.Cache.Add(key, hit, null, DateTime.Now.AddMinutes(DURATION),
 System.Web.Caching.Cache.NoSlidingExpiration,
 System.Web.Caching.CacheItemPriority.Normal, null);
 return true;
}

內置的緩存鍵將活動類型和客戶端IP地址進行了合并。首先它檢查是否有針對活動的任何入口和存儲于緩存中的客戶端IP。如果沒有,開始計數(shù)并記住指定持續(xù)時間內緩存中的IP。緩存項中的絕對期滿日期確保緩存項在持續(xù)一段時間后能夠被清除并重新計算。當在緩存中已經存在一個入口時,獲得最后的點擊數(shù),并檢查是否超越了該限制。如果沒有超過,則增加計數(shù)器。

不需要通過Cache[url]=hit的方式存儲更新后的值到緩存中;因為點擊對象是一個引用對象,改變它意味著在緩存中它也要改變。事實上,如果你再次將它放入緩存中,緩存期滿計數(shù)器將重新開始并在指定持續(xù)時期后導致失敗邏輯重新計算。

用法十分簡單, default.Aspx頁面上的代碼如下:

protected override void OnInit(EventArgs e)
{
 base.OnInit(e);

 // Check if revisit is valid or not
 if( !base.IsPostBack )
 {
// Block cookie less visit attempts
if( Profile.IsFirstVisit )
{
 if( !ActionValidator.IsValid(ActionValidator.ActionTypeEnum.FirstVisit))
Response.End();
}
else
{
 if( !ActionValidator.IsValid(ActionValidator.ActionTypeEnum.ReVisit) )
Response.End();
}
 }
 else
 {
// Limit number of postbacks
if( !ActionValidator.IsValid(ActionValidator.ActionTypeEnum.Postback) )
Response.End();
 }
}

這里我對具體的場景如訪問、再次訪問、回發(fā)等進行檢查。

當然你可以通過放置一些Cisco的防火墻來阻止DOS攻擊。這樣你就可以避免主機提供商的整個網絡不會因為受到DOS或者DDOS攻擊的影響。這些所能保證的只是網絡級別的攻擊,諸如TCP SYN攻擊、奇怪的數(shù)據報文分組等。在沒有cookie或者試圖加載太多widgets的情況下, 他們沒有辦法能夠分析這些報文并找出一個特殊的IP來試圖多次加載站點。這些都被稱為應用程序級別的DOS攻擊,硬件不能對其進行阻止。這些必須在你自己的代碼中進行實現(xiàn)處理。

現(xiàn)在幾乎很少有站點采用這種預防措施來防止遭受這種應用程序級別的DOS攻擊。因此可以非常容易地編寫一些簡單的代碼從寬帶連接中通過持續(xù)點擊站點上這些耗費昂貴的頁面或者進行Web服務調用來使得服務器崩潰。我希望這對你來說只是一個小問題,并可以采用這種有效的方式幫助你阻止自己Web應用程序遭受DOS攻擊。

小結
 
你已經學到了很多技巧來應付在具有相同硬件配置的機器上使得ASP.NET的性能發(fā)揮到極致。你也學到了如何使用一些AJAX技術來使得你的站點加載更快更流暢。最后,你學到了如何防御站點因高點擊量所帶來的風險以及擴展靜態(tài)內容跨過內容傳輸網絡來抵御站點高峰期引起的阻塞。所有這些技術都可以使你的站點加載速度更快,運行得更流暢,以及以更低的成本獲得更高的負載量。

【編輯推薦】

  1. ASP.NET應用程序設計的10大技巧
  2. ASP.NET性能提升秘訣之管道與進程優(yōu)化
  3. 寫給ASP.NET程序員:網站中的安全問題
責任編輯:彭凡 來源: IT168
相關推薦

2009-08-05 13:58:26

ASP.NET Mem

2009-07-27 15:34:11

MembershipASP.NET

2009-07-22 17:48:47

2009-07-29 16:08:07

ASP和ASP.NET

2009-12-07 09:23:05

ASP.NET MVC

2009-08-27 17:20:30

ASP.NET登陸控件membership配

2009-07-23 13:19:51

2009-07-22 16:25:41

ASP.NET AJA

2009-07-24 10:14:22

ASP.NET開發(fā)

2009-08-05 11:14:33

ASP.NET ISA

2009-07-28 16:57:50

ASP.NET Ses

2009-08-13 11:44:25

ASP.NET中的多種

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程

2009-08-04 17:20:37

PostBack和ViASP.NET

2009-08-19 13:44:00

ASP.NET Lis

2009-07-28 13:39:44

加載ViewStateASP.NET

2009-08-04 10:43:59

ASP.NET控件開發(fā)

2009-08-04 18:10:35

ASP.NET動態(tài)編譯

2009-07-23 13:09:23

2009-07-27 14:46:16

XML和ASP.NET
點贊
收藏

51CTO技術棧公眾號

久久在线精品| 亚洲va久久| 亚洲一区在线观看免费观看电影高清 | 亚洲成av人片一区二区三区 | 亚洲精品无遮挡| 99国产精品视频免费观看一公开| 精品五月天久久| 91精品久久久久久久| 亚洲精品卡一卡二| 福利在线一区| 欧美人体做爰大胆视频| 九九热只有这里有精品| 精品无人乱码| 国产精品一区免费在线观看| 秋霞午夜一区二区| 欧美色图亚洲视频| 亚洲调教一区| 欧美大黄免费观看| 91香蕉视频污版| 五月婷婷视频在线观看| 国产日韩欧美制服另类| 高清国产在线一区| 中文字幕在线播放日韩| 一本久久综合| 欧美大片网站在线观看 | 久久影院资源站| 正在播放亚洲一区| 国产精品久久久久9999小说| av电影免费在线看| 亚洲免费色视频| 亚洲欧美日产图| 手机福利小视频在线播放| 国精产品一区一区三区mba视频 | 国产精品人人妻人人爽| 久久亚洲欧洲| 欧美性做爰毛片| 欧美日韩中文视频| 欧美三级视频| 欧美国产亚洲精品久久久8v| 亚洲aaa视频| 欧洲杯半决赛直播| 亚洲少妇中文在线| 日本xxx在线播放| 精品亚洲精品| 精品精品欲导航| 中文字幕乱码免费| 色老头视频在线观看| 国产欧美日产一区| 日本免费一区二区三区| 污视频网站免费观看| 国产91在线看| 动漫一区二区在线| 欧美一区二区三区激情| 成人综合激情网| 成人动漫在线视频| 国内老熟妇对白xxxxhd| 国产精品亚洲人在线观看| 91网站在线免费观看| 97超碰人人模人人人爽人人爱| 日本欧美一区二区在线观看| 国产精品久久77777| 在线视频精品免费| 日韩成人免费在线| 国产一区红桃视频| 国产熟女一区二区三区四区| 国产乱子伦视频一区二区三区| 91影院未满十八岁禁止入内| 亚洲高清在线观看视频| 成人中文字幕在线| 精品国产综合| 国产在线视频网站| 国产精品视频线看| 天天操天天干天天玩| 色网在线观看| 天天色综合成人网| 色一情一乱一伦一区二区三区日本| sese综合| 7777精品伊人久久久大香线蕉经典版下载| 国产3p在线播放| 一区二区三区在线免费看| 亚洲成人黄色在线| 91成年人网站| 外国成人免费视频| 久久久久一本一区二区青青蜜月| 日韩 欧美 中文| 日本伊人色综合网| 97免费高清电视剧观看| 色一情一乱一乱一区91av| 国产丝袜美腿一区二区三区| 中文字幕综合在线观看| 丁香花在线高清完整版视频| 色综合久久久久久久久| www.国产福利| 日韩影视高清在线观看| 中文字幕在线亚洲| 久久人人爽人人爽人人| 久久三级福利| 亚洲精品免费在线视频| 日韩欧美在线番号| 亚洲欧美激情插 | 亚洲成人三级在线| 一级黄色片网址| 欧美视频二区| 国产精品美腿一区在线看| www.久久成人| 欧美激情一区二区三区四区| 丁香婷婷综合激情| xxxxx.日韩| 亚洲国产精品久久| 乱老熟女一区二区三区| 国产日韩专区| 2020国产精品久久精品不卡| 国产一区二区三区福利| 亚洲妇熟xx妇色黄| 日韩成人精品视频在线观看| 加勒比久久高清| 久久在线精品视频| 五月婷婷激情五月| 成人18视频在线播放| 一本一本a久久| 成人免费无遮挡| 欧美mv日韩mv| 日韩三级在线观看视频| 日日骚欧美日韩| 国产亚洲精品美女久久久m| 亚乱亚乱亚洲乱妇| 欧美性高潮在线| 亚洲一区二区三区四区av| 欧美激情电影| 国产精品www网站| 欧美中文在线| 激情亚洲一区二区三区四区| 国产吃瓜黑料一区二区| 91精品国产福利在线观看麻豆| 国产成人a亚洲精品| 日韩一区二区三区不卡| 亚洲亚洲人成综合网络| ass极品水嫩小美女ass| 久久综合99| 国产免费亚洲高清| 永久av在线| 欧美色综合网站| 欧美午夜激情影院| 日韩国产欧美在线观看| 久久一区二区三区欧美亚洲| 僵尸再翻生在线观看| 欧美精品一区二区三区视频| 精品午夜福利在线观看| 懂色av中文一区二区三区| 久久福利一区二区| 国产一区二区av在线| 久热99视频在线观看| 91av久久久| 亚洲视频一区二区在线观看| 久久久久久综合网| 五月天久久777| 亚洲综合最新在线| 亚洲第一图区| 欧美成人国产一区二区| 免看一级a毛片一片成人不卡| 粉嫩在线一区二区三区视频| 91动漫在线看| 日韩精品欧美大片| 国产精品久久久久久久久久久不卡| 免费一级在线观看播放网址| 日韩欧美一区视频| 黄色片网站免费| 老司机免费视频一区二区三区| 亚洲资源视频| 国产精区一区二区| 国模精品视频一区二区| 日韩在线免费看| 欧美日韩一区二区三区四区 | 亚洲成人7777| 毛片网站免费观看| 青青草97国产精品免费观看| 国产麻豆电影在线观看| 成人香蕉社区| 国产精品久久久久久久av电影| 老司机精品视频在线观看6| 日韩午夜激情免费电影| 国产精品黄色网| 亚洲国产激情av| 中文字幕在线观看91| 亚洲在线成人| 中文精品一区二区三区| 成人av资源网址| 国产精品激情自拍| 日本天码aⅴ片在线电影网站| 日韩电影免费观看在线观看| 亚洲一级黄色大片| 午夜精品视频在线观看| 亚洲精品国产精品国自| 国产v综合v亚洲欧| 人妻无码视频一区二区三区| 最新国产精品| 欧美性大战久久久久| 精品孕妇一区二区三区| 日韩欧美二区三区| 无码日韩精品一区二区| 亚洲欧洲成人av每日更新| 欧美xxxxx精品| 精品一区二区三区久久| 欧美精品久久久久久久自慰| 欧洲福利电影| 久久影院理伦片| 2020国产精品极品色在线观看| 国产成人av在线播放| 97人澡人人添人人爽欧美| 中文字幕在线观看日韩| 五月天婷婷激情网| 日韩视频一区在线观看| 最近中文字幕在线观看| 精品久久久久久久久国产字幕| 激情无码人妻又粗又大| 97成人超碰视| 潘金莲一级淫片aaaaa| 免费成人在线影院| 91视频最新入口| 亚洲无线一线二线三线区别av| 亚洲精品一区二区三区av| 亚洲国产合集| 国产综合 伊人色| 日本一区二区三区播放| 国产精品一二三在线| 激情开心成人网| 91精品国产网站| 青青草原av在线| 草民午夜欧美限制a级福利片| 高清福利在线观看| 亚洲免费高清视频| 亚洲色图另类小说| 亚洲成人aaa| 亚洲精品久久久久久无码色欲四季| 欧美日韩国产不卡| 丁香社区五月天| 欧美性极品xxxx娇小| 青青草av在线播放| 亚洲高清视频的网址| 久久午夜无码鲁丝片| 亚洲欧美成aⅴ人在线观看| 日韩欧美在线视频播放| 国产精品黄色在线观看| 亚洲色图欧美色| 中文字幕av一区二区三区免费看| 成人免费看aa片| 久久久噜噜噜久噜久久综合| 丰满大乳奶做爰ⅹxx视频| 99riav久久精品riav| 日本三级日本三级日本三级极| 成人午夜视频在线观看| 香蕉视频污视频| 成人18视频日本| 大黑人交xxx极品hd| 久久久久亚洲综合| 69精品无码成人久久久久久| 日本一区二区三区在线观看| 懂色av粉嫩av浪潮av| 国产精品久久久久久久久图文区| 一本一本久久a久久| 中文字幕日韩一区| 97成人资源站| 性做久久久久久久免费看| 国产一级做a爱片久久毛片a| 黑人巨大精品欧美一区二区一视频| 久久久精品福利| 欧美色涩在线第一页| 国产伦精品一区二区三区四区 | 欧美色播在线播放| 日韩欧美在线观看免费| 欧美影院一区二区三区| 国产精品玖玖玖| 欧美v日韩v国产v| 亚洲色欧美另类| 日韩亚洲欧美中文高清在线| 人妖欧美1区| 日本伊人精品一区二区三区介绍| 91久久久久久白丝白浆欲热蜜臀| 国产综合视频在线观看| 91成人午夜| 麻豆久久久av免费| 999国产精品| 精品国偷自产一区二区三区| 久久国产精品久久w女人spa| 思思久久精品视频| 波多野结衣视频一区| 少妇视频在线播放| 亚洲综合网站在线观看| 亚洲自拍一区在线观看| 7799精品视频| 亚洲人成色777777老人头| 久久精品国产亚洲精品| 岛国av免费在线观看| 国产精品久久久久久久美男| 天堂va欧美ⅴa亚洲va一国产| 美国av一区二区三区| 久久久久午夜电影| 成人小视频在线看| 国产精品中文字幕日韩精品| 亚洲国产欧美视频| 亚洲精品一二三区| 黄色一级视频免费看| 精品国产一区二区三区忘忧草 | 国产精品白丝在线| 久久夜靖品2区| 91麻豆精品国产91久久久久久 | 1024av视频| 精品无人码麻豆乱码1区2区| avtt香蕉久久| 亚洲欧美乱综合| 真实新婚偷拍xxxxx| 亚洲免费激情| 日韩视频免费观看高清完整版 | 国精产品一区一区三区视频| 九色综合狠狠综合久久| 国产精品无码一区二区三区免费| 亚洲天堂久久久久久久| 久久精品五月天| 日韩av在线免费播放| 色在线视频网| 91久久久在线| 日韩在线第七页| 国产精品无码一本二本三本色| www.欧美日韩国产在线| 中文字幕av免费在线观看| 欧美日韩国产中文| 精华区一区二区三区| 欧美一级高清免费播放| 超碰成人免费| 欧美在线观看视频免费| 狠狠色综合色综合网络| 美女网站视频色| 欧美伊人久久久久久午夜久久久久| 性xxxx搡xxxxx搡欧美| 久久久久久久国产精品| 亚洲成人影音| 国产成人亚洲综合无码| 激情综合亚洲精品| 99热6这里只有精品| 欧美三级电影精品| 在线播放日本| 国产美女扒开尿口久久久| 成人激情开心网| 一区二区xxx| 中文字幕乱码日本亚洲一区二区| 欧美男人天堂网| 国产一区二区三区在线视频 | 一区免费在线| 熟妇高潮一区二区| 亚洲国产婷婷综合在线精品| www.成人免费视频| 欧美人与性动交| 都市激情亚洲| 欧美日本视频在线观看| 99re这里都是精品| 伦av综合一区| 国产亚洲精品综合一区91| 久久xxx视频| 国产成人精品免费看在线播放| 精品一区二区三区免费观看| 午夜爽爽爽男女免费观看| 欧美色图第一页| www国产在线观看 | 欧美挤奶吃奶水xxxxx| 337p粉嫩大胆噜噜噜鲁| 国产色综合一区| 国产一区二区麻豆| 久久91亚洲人成电影网站| 成人三级av在线| 那种视频在线观看| 中文字幕免费在线观看视频一区| 国产精品欧美激情在线| 久久久久久国产精品美女| 久久av免费看| 亚洲欧美日本一区二区| 亚洲线精品一区二区三区| 欧美xxx.com| 国产精品一区二区久久久| 欧美日韩18| 一卡二卡三卡四卡| 欧美日韩免费一区二区三区| 日本无删减在线| 青青草成人网| 国产一区二区美女诱惑| 亚洲 欧美 视频| 日韩在线中文字| 粉嫩av一区二区| 浓精h攵女乱爱av| 亚洲大片免费看| 伊人免费在线| 久精品国产欧美| 国产一区二区三区免费在线观看| 亚欧视频在线观看| 日韩在线视频观看| 色天下一区二区三区| 在线看免费毛片| 色香蕉成人二区免费| 中文字幕在线三区| 欧美一区二区三区在线免费观看| 国产乱色国产精品免费视频|