我有一個應用程序使用http調用本地webservices。雖然由ASP.NET保護的整個應用程序形成授權,但我希望特定的文件夾僅適用於本地通話。如何使用ASP.NET窗體身份驗證防止非本地訪問
我該怎麼做?
謝謝!
我有一個應用程序使用http調用本地webservices。雖然由ASP.NET保護的整個應用程序形成授權,但我希望特定的文件夾僅適用於本地通話。如何使用ASP.NET窗體身份驗證防止非本地訪問
我該怎麼做?
謝謝!
Ryan的所有建議都很好。這裏還有兩點(他的點#2的變化)。
在Global.asax,可以使用的Application_BeginRequest做這樣的事情:
if (Request.UserHostAddress != "127.0.0.1" && !Request.UserHostAddress.StartsWith("172.16") && Request.Url.AbsolutePath.Contains("AdminFolderName"))
{
Response.Redirect("~/somenonproectedpageornoaccessmessagepage.aspx", true);
}
或該文件夾中使用一個母版爲每個aspx頁面,並把下面在Page_Load
if (Request.UserHostAddress != "127.0.0.1" && !Request.UserHostAddress.StartsWith("172.16"))
{
Response.Redirect("http://www.kwiktrip.com", true);
}
在你的web.config,你可以這樣做:
<location path="~/blog/add">
<system.web>
<authorization>
<allow users="admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
這不起作用。也許我應該爲此設置一個名爲admin的用戶? – 2009-07-28 10:44:23
我不認爲這有什麼天然的表單認證,將做到這一點。 你將不得不;
希望有幫助,有點模糊,但一個起點。
謝謝!我用你的第二個選項。 – 2009-07-29 06:29:30