2008-11-25 23 views
14

¿Qué debo hacer para configurar diferentes etiquetas de autenticación para diferentes partes de mi aplicación web? Decir que tengo:Configuración de autenticación múltiple/diferente en web.config

/ 
/folder1/ 
/folder2/ 

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

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

he intentado hacer en una etiqueta <location/> pero no parece que se puede tener <authentication/> etiqueta en una <location/> etiquetas, al menos no a través de VS 2008 con que está construido en el servidor web.

Este mensaje de error dice - Error 3 Es un error utilizar una sección registrada como allowDefinition = 'MachineToApplication' más allá del nivel de la aplicación. Este error puede deberse a que un directorio virtual no está configurado como una aplicación en IIS.

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

Respuesta

11

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 una.

0

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

<allow users="*" /> 

continuación, controlar el acceso a las ventanas a través de la configuración de permisos de Windows en la carpeta.

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

1

Esta configuración solo es válida 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 aplicación nueva.

Una vez que haya hecho esto, la carpeta tendrá un ícono 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 Creating Applications.

+0

Correcto, pero parece que en el depurador VS2008, no puede tratar estas subcarpetas como carpetas de aplicaciones, tendré que probar empujando a un servidor IIS –

+0

Si está utilizando el servidor web integrado de Visual Studio, entonces sí, tiene razón, deberá configurar la aplicación en IIS. –

Cuestiones relacionadas