Recibe un mensaje de error cuando intenta ver una página desde un sitio Web que utiliza acreditación "traspaso" en Internet Information Services 7.0

Síntomas

Imagine el siguiente escenario:
  • Un equipo que está ejecutando Microsoft Internet Information Services (IIS) 7.0.
  • La ruta de acceso física para un sitio Web esta configurada en un directorio UNC(Universal Naming Convention - Convención de Nomenclatura Universal).
  • El sitio Web utiliza acreditación "traspaso".
  • Intenta ver una página desde el sitio Web.
En este escenario, recibirá el siguiente mensaje de error en el explorador Web:
Error HTTP 500.19 - Error interno del servidor

Descripción: No se puede tener acceso a la página solicitada porque los datos de configuración de la página no están válidos.
Código de error: 0x8007052e
Notificación: BeginRequest
Módulo: IIS Web principales
Dirección URL solicitada: dirección URL
Ruta de acceso física: Physical_Path
El usuario de inicio de sesión: Aún no se ha determinado
El método de inicio de sesión: Aún no se ha determinado
Controlador: Aún no se ha determinado
Error de configuración: No se puede leer el archivo de configuración
Archivo de configuración: \\?\UNC\Configuration_File_Path

Causa

IIS 6.0 utiliza la identidad de proceso de trabajo host para conectarse a un directorio remoto. A continuación, IIS 6.0 autentica al usuario en el directorio remoto. Sin embargo, IIS 7.0 presenta escenarios de delegación. En IIS 7.0, puede delegar la configuración del sitio Web y la configuración de nivel de aplicación en un archivo Web.config.

Para la autenticación de paso a través, se almacena el archivo Web.config en un directorio UNC. Por lo tanto, la identidad de proceso predeterminado en IIS 7.0 debe examinar el archivo Web.config en primer lugar para determinar si debe aplicarse cualquier configuración de seguridad antes de que comience el proceso de autenticación. La identidad de proceso predeterminado en IIS 7.0 no tiene permisos suficientes para abrir el archivo Web.config. Por lo tanto, se rechaza la solicitud Web.

Si no hay ningún archivo Web.config en el directorio UNC, IIS 7.0 usa las reglas que se definen para el directorio primario. Para que el contenido Web a notificarse en este escenario, la identidad de proceso de trabajo debe tener acceso al directorio de contenido completa. De lo contrario, se rechaza la solicitud Web.

Solución

Para resolver este comportamiento y asegúrese de que la autenticación de paso a través funciona correctamente, siga estos pasos:
  1. Asegúrese de que todas las cuentas de usuario que acceso al directorio UNC tengan al menos permiso de lectura para el directorio UNC.

    Nota: Este comportamiento es el mismo que el comportamiento en IIS 6.0.
  2. Asegúrese de que la identidad de proceso de trabajo IIS está ejecutando bajo una cuenta de dominio o bajo una cuenta de grupo de trabajo que también existe en el servidor de archivos UNC. Si es necesario, cree una cuenta en el servidor de archivos UNC que tiene el mismo nombre de usuario y la misma contraseña que la identidad de proceso de trabajo IIS.

    Notas:
    • Este comportamiento difiere del comportamiento en IIS 6.0.
    • De forma predeterminada, el grupo de aplicaciones DefaultAppPool se ejecuta bajo la cuenta servicio de red. Esta cuenta es local para el equipo, y esta cuenta no existe en otro equipo. Por lo tanto, asegúrese de configurar el grupo de aplicaciones DefaultAppPool para utilizar una cuenta de usuario de dominio. A continuación, puede utilizar la misma cuenta en el servidor de archivos UNC. Como alternativa, puede crear una cuenta de grupo de trabajo en el servidor de archivos UNC y en el equipo que está ejecutando IIS 7.0.
  3. Si hay un archivo Web.config en el directorio UNC, edite la lista de control de acceso discrecional (DACL) para el archivo Web.config para que la DACL contiene la cuenta que comprobó en el paso 2. También puede modificar la DACL en el archivo Web.config para que la DACL contiene la cuenta que creó en el paso 2.

    Si no hay ningún archivo Web.config en el directorio UNC, modifique la DACL para el directorio UNC para que la DACL contiene la cuenta que comprobó en el paso 2. Como alternativa, modifique la DACL para el directorio UNC para que la DACL contiene la cuenta que creó en el paso 2.

    Nota: Este comportamiento difiere del comportamiento en IIS 6.0.

Solución alternativa

Para evitar este comportamiento, configure el sitio Web para conectarse al directorio UNC utilizando una cuenta de usuario específica. Cuando el sitio Web utiliza una cuenta de usuario específica, el proceso de trabajo suplanta la identidad del usuario especificado.

Estado

Este comportamiento es por diseño.
Propiedades

Id. de artículo: 934515 - Última revisión: 14 ene. 2017 - Revisión: 1

Comentarios