ASP.NET prevede, tra i meccanismi di gestione dell'autenticazione, un tipo particolare basato su Form.
Ne parleremo a breve in maniera approfondita nella sezione articoli. Nell'esempio di oggi, invece, vedremo come mantenere l'autenticazione nel tempo.
Seppure FormsAuthentication supporti un metodo SetAuthCookie il cui secondo parametro indica appunto se rendere persistente o meno il cookie di autenticazione, questo in realtà richiede che l'applicazione che effettui l'autenticazione sia ASP.NET.
Dunque, cosa fare se la pagina di autenticazione è ASP, ma si ha un'applicazione ASP.NET da proteggere?
La cosa migliore è utilizzare il meccanismo di autenticazione proprio di ASP.NET, sfruttando il cookie creato dalla pagina ASP per autenticare (o meno) l'utente sull'applicazione ASP.NET.
Dunque, il primo pezzo del lavoro (non contenuto nell'esempio di oggi) consiste nel modificare la fase di login aggiungendo la creazione di un semplice cookie di appoggio.
Lo useremo, come già detto, per autenticare in maniera automatica l'applicazione ASP.NET.
A questo punto per rendere automatica l'autenticazione su Form di ASP.NET, ci basterà aggiungere questo pezzo di codice al nostro global.asax:
<SCRIPT LANGUAGE="VB" RUNAT="SERVER"> Sub Application_BeginRequest (sender as Object, e as EventArgs) Try If Not(Request.Cookies("community")("name") is nothing) and Request.isAuthenticated = false then FormsAuthentication.SetAuthCookie(Request.Cookies("community")("name").ToString, true) end if Catch ex as Exception End try end sub </SCRIPT>
Automaticamente in questo modo il cookie di autenticazione di ASP.NET verrà creato (se non presente) nel caso in cui, invece, lo sia il nostro cookie di appoggio, generato dalla nostra applicazione ASP.
Si tratta di un metodo semplice per non buttare via quanto abbiamo già fatto con ASP e che ci consente, allo stesso tempo, di sfruttare appieno le nuove funzionalità di ASP.NET.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Utilizzare Docker Compose con Azure App Service
- Utilizzare QuickGrid di Blazor con Entity Framework
- Modernizzare le applicazioni WPF e Windows Forms con Blazor
- ASP 3 per esempi
- annunciato #netstandard 2.1. .NET Core lo supporterà a partire da #netcore3, così come le prossime versione di #xamarin, #mono e #unity.il supporto per #netfx 4.8, invece, non ci sarà. https://aspit.co/bq2
- Steel Style CheckBox per Silverlight 4.0