jama64
jama64

Reputation: 93

ASP.Net Web service. How to reject request?

I have asmx web service and I would like to reject all requests coming from all ip addresses except one I know.

I used Application_BeginRequest but after I confirm that the ip is not the ip I know, I would like to know what I need to replace the comment in the code bellow.

Thanks

protected void Application_BeginRequest(object sender, EventArgs e)
{
     var  address = "916.222.18.0";
     var ip = Context.Request.ServerVariables["REMOTE_ADDR"];

     if (ip != address)
     {
         // reject request
     }
}

Upvotes: 1

Views: 3024

Answers (2)

John Sheehan
John Sheehan

Reputation: 78104

 if (ip != address)
 {
     Context.Response.StatusCode = 401; // Unauthorized
     Context.Response.End();
     // or
     throw new HttpNotFoundException();
 }

Upvotes: 1

kbrimington
kbrimington

Reputation: 25652

Try this:

Context.Response.StatusCode = (int)HttpStatusCode.Forbidden;
Context.Response.End();

Or you can simply redirect to another page that does not have client restrictions:

Context.Response.Redirect("Head-Fake.aspx");

Upvotes: 4

Related Questions