為了增強系統的安全,很多資訊系統都提供了“IP限制”功能。功能雖然簡單,但是從業五年來從來沒有是實作過,是以就以博文的形式記錄下來。
實作應該很簡答,功能可以分解為如下這三個問題:
判斷目前請求是否應用IP限制,有些請求不用應用IP限制的。
目前客戶IP是否包含在限制清單中。
如何以AOP的形式應用IP限制

1和2可以抽象為一個接口
3可以用IHttpModule實作
this.Request.UserHostAddress的格式為“127.0.0.1”。
this.Request.Url.AbsolutePath的格式為“/Tests/GetIp.aspx”,
具體限制IP清單和排除位址清單的存儲可以自己酌情實作。
對應黑客知識,我并不了解,黑客是不是很容易模拟用戶端IP,有高手的話,請指點一二。
架構位址:http://happy.codeplex.com