Questo scenario ormai viene gestito in modo trasparente (diversamente da asp3), una volta che il membership provider è attivo e funzionante, nel web.config puoi dichiarare un nodo system.web.autorization per ogni location (cartella o file) da proteggere o di cui limitare l'accesso in base ai ruoli.
Inoltre nelle pagine puoi dichiarare il contenuto in porzioni che verranno visualizzate o meno in base allo stato della sessione (utente loggato o no) o al ruolo dell'utente loggato.
Hai dei controlli che implementano funzionalità comuni come il login, la registrazione, il login status (che ti dice il nome dell'utente), e altro.
Se tutto questo non dovesse bastare e vorresti gestire da codice degli scenari particolari hai a disposizione delle api ad hoc (su cui si basa tutto il meccanismo detto fin ora) e che fanno tutto il lavoro sporco per te; tu hai dei metodi che possono creare utenti, autenticarli, sapere se un utente è in un ruolo specifico, ecc.ecc senza preoccuparti del come l'applicazione gestirà queste problematiche (cookie, sessioni ecc).
L'argomento è consistente, cerca su google "asp.net authorization" o "asp.net authentication"