La situación es esta:
Tengo un foro de discusión que desarrollé con Vanilla Forums, e ingresé un Single Sign On para loggeo de usuarios de mi empresa; la situación es que el archivo que hace la autentificación luce de esta manera:
Código:
<?php require('functions.jsconnect.php'); require_once('webservice.php'); // 1. Get your client ID and secret here. These must match those in your jsConnect settings. $clientID = "xxx"; $secret = "xxx"; // 2. Grab the current user from your session management system or database here. $signedIn = true; // this is just a placeholder // YOUR CODE HERE. // 3. Fill in the user information in a way that Vanilla can understand. $user = array(); if ($signedIn) { // CHANGE THESE FOUR LINES. $user['uniqueid'] = '123'; $user['name'] = 'John PHP'; $user['email'] = '[email protected]'; $user['photourl'] = ''; AQUÍ SE SUPONE QUE QUIERO PONER EL LLAMADO DEL WEBSERVICE PORQUE AQUÍ ES EN DONDE EL PLUG IN TOMA EN CUENTA LA INFORMACIÓN Y HACE EL LOG IN } // 4. Generate the jsConnect string. // This should be true unless you are testing. // You can also use a hash name like md5, sha1 etc which must be the name as the connection settings in Vanilla. $secure = 'sha1'; WriteJsConnect($user, $_GET, $clientID, $secret, $secure); // for full page forum JsSSOString($user, $clientID, $secret); // add this line if using an embedded forum (remove if not embedded)
Después yo intenté consumir un webservice con PHP (Debido a que Vanilla Forums está sobre PHP) para hacer una consulta y que verifique el usuario que está loggeado en la página principal de la empresa (no en el foro, en la página principal que redirige al foro) y que traiga la información del usuario: Nómina, Nombre, Correo
Dicho código luce así:
Código:
Mi problema es este: Cuando yo intento ejecutar el llamado al webservice en localhost SÍ me trae mi información aunado a la alerta que pueden ver ahí, pero cuando intento ejecutar el mismo archivo webservice.php dentro de mi servidor, SÓLO me ejecuta la alerta y el llamado al webservice no.<?php require_once("lib/nusoap.php"); $cliente = new nusoap_client("https://oet.itesm.mx/portalOETWS/PortalOETWebService?wsdl"); // This is in the PHP file and sends a Javascript alert to the client $message = "wrong answer"; echo "<script type='text/javascript'>alert('$message');</script>"; $usuario = "xxx"; $cveapp = "xxx"; $parametros = array ('pVusuarioenc'=>$usuario,'cveapp'=>$cveapp); $cliente-> use_curl = TRUE; $respuesta = $cliente->call("validausuario",$parametros); echo $respuesta['pvatributo3Out']; <-- Nómina echo $respuesta['pvatributo4Out']; <-- Nombre echo $respuesta['pvatributo1Out']; <-- Apellido echo $respuesta['pvatributo6Out']; <-- Correo ?>
Investigando un poco encontré que mi webservice (https://oet.itesm.mx/portalOETWS/PortalOETWebService?wsdl) tiene SSL y eso interfiere con single sign on
Alguien sabe cómo consumir un webservice a través de un SSL?