Pregunta

¿Cómo haría para configurar diferentes etiquetas de autenticación para diferentes partes de mi aplicación web? Digamos que tengo:

/
/folder1/
/folder2/

¿Sería posible especificar diferentes etiquetas <authentication/> para cada carpeta?

Quiero que la carpeta1 use la autenticación de Windows, pero la carpeta2 usa la autenticación de formularios.

Intenté hacerlo en una etiqueta <location/> pero no parece que pueda tener etiquetas <=> en etiquetas <=>, al menos no a través de VS 2008 con su servidor web incorporado.

Este error dice: Error 3 Es un error usar una sección registrada como allowDefinition = 'MachineToApplication' más allá del nivel de aplicación. Este error puede ser causado por un directorio virtual que no se configura como una aplicación en IIS.

<location path="/folder1">
    <system.web>
      <authentication mode="Forms" />
      <authorization>
        <deny users="?"/>
      </authorization>
    </system.web>
  </location>
¿Fue útil?

Solución

Solo puede tener <authentication /> en el nivel superior web.config. Puede que tenga que crear múltiples aplicaciones. es decir, puede crear una aplicación dentro de una aplicación y usar diferentes modos de autenticación en cada uno.

Otros consejos

Estas configuraciones solo son válidas en el nivel raíz de su aplicación ASP.Net. Para usar diferentes configuraciones en una subcarpeta, deberá ingresar a IIS y configurar esa subcarpeta para que sea una nueva aplicación.

Una vez que haya hecho esto, la carpeta tendrá un icono diferente en el administrador de IIs. Dentro de su subcarpeta, cree un nuevo archivo web.config y agregue la nueva configuración de autenticación allí.

Más información disponible en Creación de aplicaciones .

Creo que puede configurar la autorización de autenticación de formularios en la carpeta1 a

<allow users="*" />

luego controle el acceso a Windows mediante la configuración de permisos de Windows en la carpeta.

No lo he probado, pero no puedo pensar por qué eso no funcionaría.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top