none
Autentificacion Basica Servicio Referenciado RRS feed

  • Pregunta

  • Hola,

    Tengo un WS en el servidor con autentificacion básica al que accedo desde local con SOAPUI perfectamente. Simplemente cargo el WSDL http://xxx.xxx.xxx.xx:33333/wsdl?, meto user y pass y funciona perfecto. Pero no consigo que funcione desde C#. He agregado el Web Service como servicio de referencia. Y el código que tengo es muy sencillo:

        

    static void testWS(string aux)
    {

        try
        {
            fml32_WEBSERVICECONSULT_In aux1 = new fml32_WEBSERVICECONSULT_In();
            aux1.dato1 = aux;
            aux1.dato2 = "";
            aux1.dato3 = "";

            WSHttpBinding basicAuthBinding = new WSHttpBinding();
            basicAuthBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
            EndpointAddress basicAuthEndpoint = new EndpointAddress("http://xxx.xxx.xxx.xx:33333/");

            AE_CONClient ws = new AE_CONClient(basicAuthBinding, basicAuthEndpoint);

            ws.ClientCredentials.UserName.UserName = "user";
            ws.ClientCredentials.UserName.Password = "pass";

            WEBSERVICECONSULT req = new WEBSERVICECONSULT();
            req.inbuf = aux1;



            var res = ws.IAE_CON_AUTON(req);
            Console.ReadLine();
        }
        catch (Exception ex)
        {
            Console.Write(ex.Message);
            Console.ReadLine();
        }

    }

    Entiendo que estoy ejecutando bien el WS, pero durante el día de ayer, me daba error GWWS_CAT:1019: Security Error: Authentication Failed. y no entiendo porque. 

    Ademas por otro lado y aquí ya si que no entiendo nada, juraría que no he cambiado el código (hago pruebas pero lo dejo como estaba inicialmente) pero ahora me da: 

    - Se detectó: "El servidor devolvió un error SOAP no válido. Consulte InnerException para obtener más información." (System.ServiceModel.CommunicationException) Mensaje de la excepción = "El servidor devolvió un error SOAP no válido. Consulte InnerException para obtener más información.", Tipo de excepción = "System.ServiceModel.CommunicationException"

    Y si voy al InnerException "No se puede evaluar la expresión porque hay un marco nativo en la parte superior de la pila de llamadas", aunque también he visto un error por "xlang requerido" o algo así. 

    He recargado el WSDL en el server reference y todo sigue igual, no se como gestionar esto.

    Gracias y un saludo

    miércoles, 17 de agosto de 2016 10:37

Respuestas

Todas las respuestas