Cómo autenticar usuarios en WebServices SOAP

Cómo autenticar usuarios en WebServices SOAP

Cómo hacer para...
Muchas organizaciones (Especialmente gubernamentales) optan por exponer sus servicios web mediante el protocolo SOAP. Para hacer uso de dichos servicios es necesario consumirlos. Existen algunas ocasiones en las que no basta con conocer la URL del servicio, también es necesario realizar algún tipo de autenticación para obtener el resultado buscado. Autenticación HTTP en WebServices SOAP El método más simple de autenticación es el propio de HTTP. Si este es el caso, basta con generar una URL del estilo http://usuario@password:dominio/web_service para poder acceder. El principal problema de este método es su poca seguridad, ya que las credenciales viajan en cada pedido, por lo tanto, es bastante poco frecuente su uso en servicios web. En aplicaciones web normales podrías llegar a encontrártelo (o incluso podrías querer implementarlo). API-Key en WebServices SOAP Una…
Leer más
Cómo exponer un WebService SOAP con PHP

Cómo exponer un WebService SOAP con PHP

Cómo hacer para...
¿Qué es un WebService? Ya en el artículo sobre cliente SOAP di una pequeña definición de un WebService (Una más exhaustiva está en el curso de WebServices con PHP), por si no lo leíste te lo cuento: Un WebService es una pequeña aplicación web diseñada para interactuar con otras aplicaciones (en lugar de hacerlo con personas). Las dos aplicaciones que se comunican toman el rol de: Servidor: quien expone el servicio Cliente: quien lo consume ¿Qué es SOAP? SOAP es un protocolo de intercambio de información basado en XML. ¿Cómo se implementa en PHP? Ahora que estamos claros con las definiciones veamos un ejemplo: server.php: <?php class MiClase { public function saludar() { return 'Hola ' . func_get_args()[0] . PHP_EOL; } } try { $server = new SoapServer( null, [ 'uri'=> 'http://localhost:8080/soap_server.php',…
Leer más
Cómo consumir un WebService SOAP con PHP

Cómo consumir un WebService SOAP con PHP

Cómo hacer para...
Qué son los WebServices Los WebServices son un mecanismo muy útil para integrar aplicaciones a través del protocolo HTTP, y de ese modo, aprovechar las capacidades de terceros dentro de nuestras propias aplicaciones. Un ejemplo muy común es de las pasarelas de pago, como ser PayPal o MercadoPago. Se basan siempre en la existencia de dos procesos: El cliente (Consumidor)El servidor (Productor) A nivel técnico existen dos operaciones que pueden realizarse a través de WebServices: ConsumirlosExponerlos Uno de los protocolos que pueden utilizar los WebServices es SOAP (Otro muy común es REST). Consumirlos usando PHP es bastante simple, para ello se utiliza la clase SoapClient. Cómo obtener la localización del visitante usando su IP Para este ejemplo usaremos el WebService de cdyne.com para obtener información geográfica en base a la IP buscada. <?php $url = "http://ws.cdyne.com/ip2geo/ip2geo.asmx?wsdl";…
Leer más