Forms Authentication su più web application e domini

di Daniele Bochicchio, in ASP.NET, FormsAuthentication,

Condividere l'autenticazione su più server, anche fisicamente distinti, è cosa abbastanza semplice.
Sfruttando la forms authentication di ASP.NET possiamo utilizzare API condivise da tutti, che facilitano la creazione di applicazioni con autenticazione e successiva protezione.
Per condividere l'autenticazione su più application all'interno dello stesso dominio, è sufficiente inserire in ogni web.config, o rimuovere all'interno del machine.config da questa chiave l'attributo IsolateApps che isola ogni web application dalle altre.

<configuration>
  <machineKey
     validationKey="chiave"
     decryptionKey="chiave"
     validation="SHA1" />
</configuration>

Nel caso di autenticazione su più sottodomini (ad esempio corsi.aspitalia.com, www.aspitalia.com e forum.aspitalia.com) che risiedano su server differenti, per prima cosa occorre stabilire una chiave che venga condivisa (per validationKey e decryptionKey) in tutte le web application che condivideranno l'autenticazione.
Successivamente sarà necessario, sul server centrale che autentica gli utenti, modificare lo script #614 per fare in modo che il cookie imposti la proprietà .Domain su qualcosa come "aspitalia.com".
Fatte queste modifiche l'autenticazione sarà disponibile su tutti i server che hanno quel dominio.

Approfondimenti

Autenticazione di ASP.NET: Forms Authentication
https://www.aspitalia.com/articoli/aspplus/formauth.aspx

#614 - Forms Authentication con roles e ticket
https://www.aspitalia.com/liste/usag/script.aspx?ID=614

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

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