Jump to content


Photo

Invoking a remote ASPX script that has IP restrictions.


  • Please log in to reply
5 replies to this topic

#1 Messito

Messito
  • New Members
  • Pip
  • Newbie
  • 4 posts

Posted 08 July 2006 - 02:42 PM

Hello,

Looks like a simple code, but I had problems doing it.

What's needed?
The php script should call a remote aspx service on another domain -> www.anotherdomain.com/service.aspx?p1=x&p2=y
This "service.aspx" will only execute if this request is sent from a specific IP. In other words, this service has IP restriction, for security matters.
The returned XML response notifies if the referring IP is authorised or not.

I've configured my site's IP as an authorised IP.

The problem
To invoke the service I've used a simple implode() statement:

$xmlAnswer = implode('', file($URL));

Where $URL is the URL of the service call -> http://www.anotherdo....aspx?p1=x&p2=y

I get an error response of Invalid IP.
Which I suppose means that the call for the remote service is invoked from the viewer IP (browser page), and not from the machine IP.

Any Ideas how to fix this?

Thanks in advance!  :)


#2 Daniel0

Daniel0
  • Staff Alumni
  • Advanced Member
  • 11,956 posts

Posted 08 July 2006 - 02:58 PM

Are you trying to restrict a script so it may only be run by certain IPs? If so, look at this snippet:

<?php
$allowed_ips = array('127.0.0.1','1.2.3.4','9.8.7.6');

if(!in_array($_SERVER['REMOTE_ADDR'],$allowed_ips))
{
	die("Your IP ({$_SERVER['REMOTE_ADDR']}) is not allowed to run this script.");
}

// do whatever here...
?>


#3 Messito

Messito
  • New Members
  • Pip
  • Newbie
  • 4 posts

Posted 08 July 2006 - 03:07 PM

Hi,

thanks for the quick reply.

Actually the service I'm calling to (which is a 3rd party) -> service.aspx , is the one which has IP restriction.

What I need to do, it to make sure that the call for this service (which is done by my php script) will originate from the machine ip
(my domain IP) , and not from the user IP.

The method I tried, using implode() - apparently doesn't work - so I'm wondering how it can be done.

#4 Daniel0

Daniel0
  • Staff Alumni
  • Advanced Member
  • 11,956 posts

Posted 08 July 2006 - 03:14 PM

Just do something similar in the ASP script (I don't know ASP so I can't give an example), just your machine/server IP in the array.

#5 Messito

Messito
  • New Members
  • Pip
  • Newbie
  • 4 posts

Posted 08 July 2006 - 09:51 PM

but this asp isn't mine - it's a 3rd party service I'm calling to execute an action for me.

My script is in PHP - I need it to call the aspx file, and that this call will originate from my server IP, not from the browser IP.

Any ideas..?

#6 Messito

Messito
  • New Members
  • Pip
  • Newbie
  • 4 posts

Posted 16 July 2006 - 10:20 AM

Pitching the post up...




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users