none
Error al leer asmx RRS feed

  • Pregunta

  • Buenos días

    Tengo un usuario administrador, cuando ingreso al link 

    http://srv03/WebServices/SerWeb20/wsMaestros.asmx

    me pide autenticación de windows, pasa todo ok y veo todos los métodos ok.

    Pero cuando entro con otra cuenta que no es administrador, pero si está dentro del dominio, en el active directory me sale error que no está autorizado.

    Dónde debo darle permisos a este usuario para que pueda ver los métodos?

    Gracias por sus respuestas

    miércoles, 17 de enero de 2018 15:59

Respuestas

Todas las respuestas

  • hola

    esto que describes se produce cuando estas agregando al web reference o es cuando lo invocas desde codigo?

    o quizas cuando accedes al asmx en el browser?

    >>cuando ingreso al link

    cuando ingresas desde donde?

    validaste en la config del sitio en el IIS que grupo de active directory o que usuario tiene acceso

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 17 de enero de 2018 16:53
  • el error sale cuando lo invoco desde el browser, igualmente desde el código me sale error.

    en qué parte de la configuración debo revisar el acceso?

    miércoles, 17 de enero de 2018 16:59
  • >>igualmente desde el código me sale error.

    recuerda que desde codigo puedes pasar credenciales

    >>en qué parte de la configuración debo revisar el acceso?

    estaba viendo que quizas esto se pueda definir por config

     ASP.NET Windows Authentication: Authorization by Group

    deberias indicar un grupo donde este el usuario que quieres utilizar

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 17 de enero de 2018 17:43
  • en mi web config está:

    <allow users="*" />

    miércoles, 17 de enero de 2018 19:26
  • ese es el web.config del servicio asmx ?

    si es asi pareciera permitir el acceso a todos los usuario, entiendo ademas defines la seguridad de asp.net como integrada a windows

    Cómo implementar la autenticación y la autorización de Windows en ASP.NET

    imagino tendra el

    <authentication mode="Windows" />

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 17 de enero de 2018 19:31
  • Sí es el web.config del servicio asmx

    lo tengo así:

    <authentication mode="Windows" />
    <identity impersonate="true" />

     <authorization>
          <allow users="*" />
          <deny users="?" />
     </authorization>

    miércoles, 17 de enero de 2018 19:34
  • cuando quiero agregar desde el web reference

    http://serv03/WebServices/SerWeb20/wsMaestros.asmx

    me sale la ventanita de autenticación, pongo las credenciales y no me acepta.

    Si pongo

    http://localhost/WebServices/SerWeb20/wsMaestros.asmx

    allí si pasa y puedo agregar las webreference, por qué?

    Igual sigo con el problema, porque cuando correo la web se cae cuando acceso al método del wsMaestros.asmx

    sale que no estoy autorizado.

    qué permiso faltará?


    • Editado karina_0109 miércoles, 17 de enero de 2018 20:22 corregir palabra
    miércoles, 17 de enero de 2018 20:22
  • hola

    >>Igual sigo con el problema, porque cuando correo la web se cae cuando acceso al método del wsMaestros.asmx

    recuerda que desde codigo debes definir las credenciales

    How to: Configure an XML Web Service for Windows Authentication

    de esta forma desde codigo puedes definir las credenciales

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 17 de enero de 2018 21:19
  • Sí , las credenciales están, pero no funciona.

    Var.wsAcc.Credentials = new NetworkCredential(s_Usu, s_Cla, Var.s_glb_dominio);

    Hice la prueba también copie el ejemplo de tu link, 

         string url = "http://localhost";
            // Create a new instance of CredentialCache.
            CredentialCache credentialCache = new CredentialCache();

            // Create a new instance of NetworkCredential using the client
            // credentials.
            NetworkCredential credentials = new
               NetworkCredential(s_Usu, s_Cla, Var.s_glb_dominio);

            // Add the NetworkCredential to the CredentialCache.
            credentialCache.Add(new Uri(url),
                                "Basic", credentials);

    pero igual me sale error.

    "The request failed with HTTP status 401: Unauthorized."

    Es como si le faltará permisos a ese usuario al acceder al asmx, no se qué puede ser 

    miércoles, 17 de enero de 2018 21:48