 <p>All of Ryan's suggestions are good. Here are two more (variations on his point # 2).</p> <p>In the Global.asax, you can use the Application_BeginRequest to do something like this:</p> <pre><code>if (Request.UserHostAddress != "127.0.0.1" &amp;&amp; !Request.UserHostAddress.StartsWith("172.16") &amp;&amp; Request.Url.AbsolutePath.Contains("AdminFolderName")) { Response.Redirect("~/somenonproectedpageornoaccessmessagepage.aspx", true); } </code></pre> <p>or use a MasterPage for each aspx page in that folder and put the following in the Page_Load</p> <pre><code>if (Request.UserHostAddress != "127.0.0.1" &amp;&amp; !Request.UserHostAddress.StartsWith("172.16")) { Response.Redirect("http://www.kwiktrip.com", true); } </code></pre>