none
Web Service y Aplicacion Web juntas RRS feed

  • Pregunta

  • Saludos

    Termine de desarrollar un sistema el cual consta de un Subsistema de escritorio, un Web Service y una aplicacion Web para una empresa que tiene varias sucursales. El subsistema de escritorio esta desarrollado en VB.NET 2008 con SQL Server 2008 el cual permite procesar información de cada sucursal, al mismo tiempo almacena resumenes en Internet mediante WebService. Para poder ver la informacion resumida de cada sucursal se utiliza el sistema Web.

    El sistema lo probe en una red local y todo funciona Ok. Para las pruebas en internet, me inscribi en un servicio gratuito de hosting que da soporte para ASP.NET y SLQ 2005 Express. Probe en forma separada el Web Service y la Aplicacion Web y todo Ok

    Al desarrollar el sistema, en LocalHost, puse el servicio web y el sitema web en carpetas virtuales diferentes, sin embargo ambas trabajan en la misma BD SQL que tengo instalado en el LocalHost.

    Al pasar el sistema a internet solo cuento con una carpeta para poner el Web Service y el sistema Web. El acceso al Sistema Web se controla por authentication mode="Forms", mientras el Web Service esta con authentication mode="Windows".

    Para solucionar el problema y antes de hacer las pruebas en el servidor de internet, lo hice en local host poniendo el servicio web en una subcarpeta dentro de la carpeta virtual del sistema Web y desde una PC de la red local (por supuesto desde un navegador) llamo el servicio web con http://192.168.1.2/SW/NomArchivo.asmx y me da un error, asumo que el error se produce por que el sitio web autentifica medinte form, la verdad no tengo la certeza. Para comprobarlo, cambie el modo de autentifcacion a "Windows" en el sistema Web y el problema persiste.

    Prguntas:Asi mismo asumo que si aun WebService se le pone autenticacion=Form, para consumir el web service desde una aplicacion de escritorio se deberia autentifar por medio de un form?

    Como poner el WebService y el sitema web en un solo sitio?

    Agradezco su tiempo y ayuda

    Atte.

    Carlo

    miércoles, 26 de octubre de 2011 3:09

Respuestas

  • Alberto hace referencia a esto.

     

    recuerda que cuando aplicas la seguridad de asp.net todo el sitio queda incluida en esta

    debes especificar puntualmente quen carpetas o elementos quedan exceptuados de esta

    Indicar elementos públicos o privados en un mismo sitio de ASP.NET

     

    o sea los servicio asmx debes excluirlos de la seguridad de asp.net para poder invocarlos

    slaudos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Editado Leandro TuttiniMVP miércoles, 26 de octubre de 2011 13:08
    • Marcado como respuesta CarloCF jueves, 27 de octubre de 2011 18:30
    miércoles, 26 de octubre de 2011 13:08
  • Saludos

    Gracis por su ayuda. Estimado Leandro te comento que el WebService con la autenticacion="Windows" funciono en el sitio web. Estimo que me permite hacer esto, por la configuracion del sitio web (www.aspspider.com). Nuevamente mil gracias por sy ayuda y tiempo.

    Atte.

    Carlo

    • Marcado como respuesta CarloCF jueves, 27 de octubre de 2011 18:32
    jueves, 27 de octubre de 2011 18:32

Todas las respuestas

  • mientras el Web Service esta con authentication mode="Windows"

    si subes a interner no podras controlar la seguridad por Winfows porque el server no esta bajo el mismo dominio de windows

    la seguridaddeberias plantearla por otro lado

    Authentication for Web Services (using SOAP headers)

    quizas usando el header del emsnaje soap

    pero a lo que voy es que seguridad windows en un hosting que no esta bajo el dominio de windows de tu red no creo que puedas aplicarlo

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    miércoles, 26 de octubre de 2011 12:55
  • Lo que puedes hacer para no tener problemas con la autenticación del servicio web es dejarlo "abierto", es decir, en la seccion <authorization> del web.config no denegar el acceso al fichero asmx (por ejemplo, con un <location...>). De esta manera, aunque la autenticación del sitio esté establecida como Forms, para el servicio no se dispara. Por lo demás, no debería haber problema en copiar el asmx a la carpeta raíz de la aplicación web.

     

    miércoles, 26 de octubre de 2011 12:58
  • Alberto hace referencia a esto.

     

    recuerda que cuando aplicas la seguridad de asp.net todo el sitio queda incluida en esta

    debes especificar puntualmente quen carpetas o elementos quedan exceptuados de esta

    Indicar elementos públicos o privados en un mismo sitio de ASP.NET

     

    o sea los servicio asmx debes excluirlos de la seguridad de asp.net para poder invocarlos

    slaudos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Editado Leandro TuttiniMVP miércoles, 26 de octubre de 2011 13:08
    • Marcado como respuesta CarloCF jueves, 27 de octubre de 2011 18:30
    miércoles, 26 de octubre de 2011 13:08
  • Saludos

    Gracis por su ayuda. Estimado Leandro te comento que el WebService con la autenticacion="Windows" funciono en el sitio web. Estimo que me permite hacer esto, por la configuracion del sitio web (www.aspspider.com). Nuevamente mil gracias por sy ayuda y tiempo.

    Atte.

    Carlo

    • Marcado como respuesta CarloCF jueves, 27 de octubre de 2011 18:32
    jueves, 27 de octubre de 2011 18:32