Oye mejor que el membership and roles de .NET no hay.
Debes usar los controles de usuario de .NET el login es estupendo. Asi reciclas el control :)
primero ante todo debes crear las bases de datos, con eso usas un wizard que esta en la carpeta donde se instala el .NET el archivo se llama "aspnet_regsql.exe" eso crea un conjunto de tablas que te sirven para varios proyectos al mismo tiempo y usando las clases de .NET
Código:
c:\windows\microsoft.NET\framework\v2.050727 <-- ahi esta.
luego en tu web.config agregas estas lineas:
Código:
<connectionStrings>
<add name="saig" connectionString="Data Source=localhost;Initial Catalog=Saig;User Id=saig;Password=;"/>
<add name="Saig1" connectionString="Data Source=localhost;Initial Catalog=Saig;Integrated Security=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
<!-- You should ALWAYS customize the Role provider and specify an applicationName... see http://weblogs.asp.net/scottgu/archive/2006/04/22/Always-set-the-_2200_applicationName_2200_-property-when-configuring-ASP.NET-2.0-Membership-and-other-Providers.aspx for more details... -->
<roleManager enabled="true" defaultProvider="CustomizedRoleProvider">
<providers>
<add name="CustomizedRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="Saig" applicationName="Saig"/>
</providers>
</roleManager>
<!-- You should ALWAYS customize the Membership provider and specify an applicationName... see http://weblogs.asp.net/scottgu/archive/2006/04/22/Always-set-the-_2200_applicationName_2200_-property-when-configuring-ASP.NET-2.0-Membership-and-other-Providers.aspx for more details... -->
<membership defaultProvider="CustomizedProvider">
<providers>
<add name="CustomizedProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="Saig" applicationName="Saig" requiresQuestionAndAnswer="false" maxInvalidPasswordAttempts="5000" minRequiredPasswordLength="5" requiresUniqueEmail="false" passwordAttemptWindow="10" minRequiredNonalphanumericCharacters="0"/>
</providers>
</membership>
que es le estas diciendo al proveedor donde esta la base de datos con la cadena de conexion.
esta linea en el web.config le dice a los usuarios que se autentiquen antes de entrar a cualquier pagina: :D
Código:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" slidingExpiration="true" timeout="60"/>
</authentication>
al correr el wizard veras que te creo unas tablas, que guardan tus usuarios con claves encriptadas y todo!!
en las propiedades del control login le indicas que pantalla ira al validarce.
Espero haberte ayudado un poco.
The Ultimate.