"401 no autorizado" en un directorio


86

Supongo que esto es un error de IIS, ya que esto no sucede si ejecuto el proyecto en mi máquina local.

Tengo mis hojas de estilo en ~/Content/css

Los archivos de ese directorio no se cargarán en la página y, cuando navego hacia ellos directamente, aparece un error del servidor:

401 - No autorizado: acceso denegado debido a credenciales no válidas.

No tiene permiso para ver este directorio o página con las credenciales que proporcionó.

Esto solo sucede con ese directorio, no tengo problemas para acceder a otros archivos. ¿Hay algo que deba hacer en IIS7 para detener esto?

Respuestas:


46

Es probable que no tenga el permiso IUSR_ computername en esa carpeta. Acabo de realizar un escaneo rápido y parece que aquí encontrará la información que necesita .

Si ese no es el caso, ¿el navegador le solicita su nombre de usuario y contraseña? Si es así, es posible que IIS esté configurado para usar solo la autenticación integrada, como se describe aquí .


4
Si está utilizando un grupo de aplicaciones para administrar su acceso al sistema de archivos / db, no haga esto. Siga leyendo para ver la respuesta de imanabidi a continuación.
Ryan Shillington

gracias, en mi caso acabo de agregar a todos con control total
MorenajeRD

8
support.microsoft.com/kb/313075 : esta página ya no existe. @ m.edmondson
Divya

294
  1. Abra IIS y seleccione el sitio que está causando 401
  2. Seleccione la propiedad de autenticación en el encabezado de IIS
  3. Seleccione Autenticación anónima
  4. Haga clic derecho sobre él, seleccione Editar y elija Identidad del grupo de aplicaciones
  5. Reinicie el sitio y debería funcionar

13
Funciona pero ¿por qué? ¿Puedes explicar un poco más?
nthapa

2
Esto parece funcionar porque, de forma predeterminada, el "usuario específico" para la autenticación anónima es IUSR, como se menciona en la respuesta aceptada. Sin embargo, la identidad establecida en el grupo de aplicaciones debe tener permisos para todo el sitio web, o el sitio no se cargaría. Entonces, si bien mi cuenta IUSR no tenía acceso (de hecho, parece no existir), la cuenta que usa el grupo de aplicaciones sí.
Johann

6
Esto funciona, pero lo que es confuso es que solía funcionar bien durante aproximadamente 2 años y luego hoy, sin razón conocida, dejó de funcionar ... su solución lo solucionó.
Serj Sagan

¡Pasé horas en este problema y no tuve suerte hasta que encontré esto! Tenía una aplicación web MVC 5 que, una vez publicada en modo de lanzamiento, y luego cargando el sitio en Chrome, el contenido se cargaba pero los estilos no. Los enlaces están ahí y los caminos son correctos, sin embargo, ¡todos estaban vacíos! Esta solución resolvió mi problema.
DAME POLLO

en mi caso, solo tuve que habilitar la autenticación anónima, ya que estaba deshabilitada de forma predeterminada cuando se creó la aplicación
Paul

14
  • Abrir IIS
  • seleccione el sitio donde enfrenta el problema

  • Seleccione a continuación

ingrese la descripción de la imagen aquí

- Haga clic derecho en Autenticación anónima y haga clic en editar y siga a continuación

ingrese la descripción de la imagen aquí


5

No tiene permiso para ver este directorio o página con las credenciales que proporcionó.

Esto sucedió a pesar de que el usuario ya está autenticado a través de Active Directory.

Puede haber muchas causas para el error de Acceso denegado, pero si cree que ya ha configurado todo correctamente desde su aplicación web, es posible que haya un pequeño detalle que se haya olvidado. Asegúrese de otorgar el permiso adecuado a los usuarios autenticados para acceder al directorio de su aplicación web.

Estos son los pasos que tomé para resolver este problema.

  1. Haga clic con el botón derecho en el directorio donde está almacenada la aplicación web, seleccione Propiedades y haga clic en la pestaña Seguridad.

  2. Haga clic en Haga clic en Editar…, luego en el botón Agregar…. Escriba Usuarios autenticados en el botón Introduzca los nombres de los objetos para seleccionar y luego Agregar . Escriba Usuarios autenticados en Introduzca los nombres de los objetos para seleccionar.

  3. Haga clic en Aceptar y debería ver Usuarios autenticados como uno de los nombres de usuario. Otorgue los permisos adecuados en el cuadro Permisos para usuarios autenticados en el extremo inferior si aún no están marcados.

  4. Haga clic en Aceptar dos veces para cerrar el cuadro de diálogo. Debería tener efecto de inmediato, pero si desea estar seguro, puede reiniciar IIS para su aplicación web.

Actualice su navegador y debería mostrar la página web ahora.

¡Espero que esto ayude!


2

Debe verificar los permisos de la carpeta en su servidor y verificar que la cuenta que está utilizando para ejecutar su aplicación tenga acceso a esa carpeta.


0

Para mí, el acceso de usuario anónimo estuvo bien en el nivel del servidor, pero varió en una de mis carpetas "virtuales".

Me tomó un poco hundirme y luego un poco de ayuda de un colega para saber que IIS también tiene configuraciones de "autenticación" en el nivel de carpeta virtual; con suerte, esto ayudará a alguien más con mi situación.


0

En nuestro caso, fue la autenticación integrada en Windows especificada en la aplicación web.config

PERO el módulo de autenticación de Windows no se instaló en absoluto en la máquina IIS.

Solo agrego otra posible razón.


-4

Otra solución simple que encontré fue eliminar el sitio IIS local (desde el Administrador de IIS) y luego volver a crear el directorio virtual desde las "Propiedades" de su proyecto web en Visual Studio.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.