none
Autenticacion Windows. User.Identity no funciona RRS feed

  • Pregunta

  • Hola a todos,

    Estoy haciendo una aplicación web con MVC y autenticación windows. Creo que he configurado todo bien pero no me llega el usuario.

    En en desarrollo todo me funciona bien, puedo acceder a User.Identity.Name y a User.Identity.IsAuthenticated pero al desplegarla en el servidor de aplicaciones e intentar acceder a la web me lleva a una pagina de error.

    Exactamente es la que tengo definda en el web.config, por lo que también deduzco que es un error 401

    <httpErrors>
          <remove statusCode="401" subStatusCode="-1" />
          <error statusCode="401" prefixLanguageFilePath="" path="/error.htm" responseMode="ExecuteURL" />
          <error statusCode="401" subStatusCode="2" path="/error.htm" responseMode="ExecuteURL" />
          <error statusCode="401" subStatusCode="0" path="/error.htm" responseMode="ExecuteURL" />
        </httpErrors>
    Esta es la configuración de autenticación que tengo en el sitio web


    Se os ocurre alguna idea?

    Muchas gracias de antemano.


    Daniel Simal

    viernes, 6 de junio de 2014 8:30

Todas las respuestas

  • hola

    pero estas suando la autenticacion de windows si ese servidor no se integra a tu dominio donde defnes los usario de red esta claro que no va a funcionar

    si el hosting esta en una red separada no deberias usar autenticacion de windows, sino definir usuario y password en alguna db y autenticar con un formulario pidiendo que se loguee

    lo importante no es el config del <httpErrors> esto no tiene nada que ver

    deberias ver el tag <authentication> y alli usa la autenticacion por Forms o quizas con asp.net mvc usar el

    Using SimpleMembership in ASP.NET MVC 4

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    viernes, 6 de junio de 2014 12:01
  • Hola Leandro,

    El servidor de aplicaciones esta dentro de nuestro dominio, por eso queremos utilizar la autenticación windows. En el web.config esta definida la autenticación de esta forma:

    <authentication mode="Windows" />

    a pesar de todo esto sigue sin funcionar, y la verdad es que no se me ocurre nada para solucionar el problema....

    Un saludo,


    Daniel Simal

    viernes, 6 de junio de 2014 12:22
  • hola

    pero definen en la configuracion del sitio en el IIS que sea integrado con windows ?

    imagen

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    viernes, 6 de junio de 2014 19:27
  • Hola Leandro,

    Si, en la configuración del sitio web esta definida la integración con windows, en la imagen del primer post así está la captura de pantalla.

    Si en el sitio web desactivo la autenticación anónima si me pide un usuario y contraseña, pero al meter el mio o uno autorizado para esta aplicación no me permite hacer login.

    gracias por la ayuda Leandro.

    Un saludo,


    Daniel Simal


    • Editado Daniel Simal lunes, 9 de junio de 2014 10:27 nueva información
    lunes, 9 de junio de 2014 10:22
  • hola

    claro la seguridad anonima debes deshabilitarla

    pero el servidor web donde esta este IS esta dentro del dominio ?

    porque si esta fuera debes poner un usuario que este creado en el servidor local, los usuarios de dominio no van a funcionar

    si quieres que funcione debes integrar este servidor web al dominio de windows local

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 9 de junio de 2014 15:19
  • Hola Leandro,

    La verdad es que si, el servidor donde esta alojado este IIS esta dentro del dominio.

    Es curioso, ya que tenemos otra aplicación hecha con web forms que también utiliza la autenticación windows y funciona perfectamente, por ahora no nos ha dado ningún problema, ademas también esta alojada en el mismo IIS.

    Un saludo,


    Daniel Simal

    lunes, 9 de junio de 2014 17:21
  • tienes algo establecido en tu web.config en los tag

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


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    lunes, 9 de junio de 2014 17:42
    Moderador
  • Hola Sergio,

    He revisado el web.config y no hay incluida ninguna etiqueta <deny users="?"/>

    He hecho alguna pruebas más de las que no salgo de mi asombro, he creado un usuario especifico en el Directorio Activo para conectarme a la aplicación web, he probado los siguientes casos:

    1. Conectarme desde mi PC a la aplicación, he introducir mi usuario y contraseña
    2. Conectarme desde mi PC a la aplicación con el usuario y contraseña que acabo de crear específicamente para la aplicación web.
    3. Conectarme por escritorio remoto, con el usuario creado específicamente para la aplicación web, a la maquina donde está el IIS y acceder a la web con mi usuario y contraseña
    4. Conectarme por escritorio remoto, con el usuario creado específicamente para la aplicación web, a la maquina donde está el IIS y acceder a la web con el usuario y contraseña con los que he hecho login en la maquina.
    5. Conectarme por escritorio remoto, con mi usuario y contraseña, a la maquina donde está el IIS y acceder a la web con mi usuario y contraseña.
    6. Conectarme por escritorio remoto, con mi usuario y contraseña, a la maquina donde está el IIS y acceder a la web con el usuario y contraseña creados específicamente para la web.

    Como conclusión, puedo conectarme a la aplicación web en los casos 3, 4, 5 y 6, es decir en los que me conecto a la maquina por escritorio remoto.

    En los casos 1 y 2, es decir en los que me conecto desde mi PC (también he hecho las pruebas desde otros PC y obtengo el mismo resultado), no consigo hacer login en la aplicación web...

    Gracias de antemano, un saludo.


    Daniel Simal

    martes, 10 de junio de 2014 7:51
  • una pregunta...

    tienes configurado algun proxy en tu pc?? 

    En IE ve al menu Herramientas/Opciones de Internet/Conexiones/Configuración de LAN


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    martes, 10 de junio de 2014 7:56
    Moderador
  • también puedes habilitar esto en IE

    


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    martes, 10 de junio de 2014 8:02
    Moderador
  • Hola Daniel, probaste mis recomendaciones?? Te funcionaron?

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    martes, 10 de junio de 2014 8:40
    Moderador
  • Hola Sergio,

    He revisado estas opciones que me comentas, y en principio están bien configuradas:

    Gracias por tu atención, un saludo.


    Daniel Simal

    martes, 10 de junio de 2014 8:55
  • y has revisado la configuración de seguridad de la zona intranet??


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    martes, 10 de junio de 2014 9:03
    Moderador
  • Hola Sergio,

    Efectivamente, lo he revisado y esta tal y como lo comentas.

    Gracias, un saludo.


    Daniel Simal

    martes, 10 de junio de 2014 9:16
  • En el application pool de tu applicacion web que identity usas?? 


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    martes, 10 de junio de 2014 9:27
    Moderador
  • Tiens cargado en tu Default Web Site los siguientes módulos??

    En el IIS te situas en el site, en el panel de la derecha verás una opción de MODULOS


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos


    martes, 10 de junio de 2014 9:31
    Moderador
  • Hola Sergio,

    Tengo cargados los módulos:

    Te comento, el usuario que levanta el pool de aplicaciones es un usuario del dominio, este usuario fue creado específicamente para levantar este pool de aplicaciones.

    Un saludo,


    Daniel Simal

    martes, 10 de junio de 2014 9:56