我打算在共享主機帳戶上發佈一個asp.net預編譯的網站,但我不希望我的代碼被複制並能夠在另一個域上運行。我需要檢查域名,如果不是example.com或www.example.com重定向到錯誤頁面或顯示錯誤作爲響應。如何保護asp.net應用程序只在指定的域上運行?
編輯:這是基於給定答案
void Application_BeginRequest(object sender, EventArgs e)
{
string[] safeDomains = new string[] { "localhost",
"example.com", "www.example.com" };
if (!((IList)safeDomains).Contains(Request.ServerVariables["SERVER_NAME"]))
{
Response.Write("Domain not allowed!");
Response.End();
}
}
,您是否擔心有人把你的源/裝配並運行它在自己的網站或其他東西?如果您無法保護代碼/程序集免受某些其他服務器上的攻擊和使用,那麼您就無能爲力了。 – 2011-03-10 00:51:27
@Alexei Levenkov我只是擔心容易複製和使用我的大會其他人可以訪問服務的文件。 – 2011-03-10 00:57:02