En una app q desarrollaron aqui en mi trabajo, y sobre la cual se crean los demás módulos usa autenticación por Forms, y esa fue creada por uno de los desarrolladores, utilizando una base de datos, roles, estructuras, etc etc... creo, según a lo q he leido de tu problema, q se acerca a lo q requieres.
Lo q se hace es basar la autenticación a Secciones de la App en ciertas reglas, te paso una parte del Web.Config q usamos:
Código:
<system.web>
...
<authentication mode="Forms">
<forms name="SEValida" path="/" loginUrl="Inicio.aspx" protection="All" timeout="60"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
<location path="Publico">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
...
Eso es creado por nosotros, con reglas para un ACCESO PUBLICO (
<location path="Publico">) donde puede acceder cualquiera(
<allow users="*"/>), esté o no logeado, además de otra sección donde por fuerza deber existir un logeo (
<deny users="?"/>), sino, te redirecciona a la página destinada para ello (
loginUrl="Inicio.aspx").
Espero te sirva, y pues a seguir investigando, q al final de cuentas, nada es tan sencillo como parece...
Suerte, y ánimo