Molte buone risposte qui.
Queste sono alcune buone soluzioni:
- OpenID
- OAuth
- SAML
- ADFS
- Archiviazione locale
Anche se non penso che nessuno di questi aspetti sia davvero banale da implementare, senza imparare un po 'di più su di loro.
Sarebbe ancora meglio implementare un vero prodotto web-SSO, anche se dalla tua domanda sembra che questa non sia un'opzione (anche se ti esorto a riconsiderare, e cerco di convincere i tuoi superiori).
Una soluzione piuttosto semplicistica che ho visto, e in effetti alcuni web-SSO utilizzano anche questo trucco (si noti che non consiglio necessariamente questo approccio in tutte le situazioni, vedi sotto):
Avere un terzo dominio di "autenticazione" che emette un "cookie di identità" (dopo aver autenticato l'utente). I siti web su altri domini possono inviare una semplice richiesta POST al dominio di autenticazione, che includerà ovviamente il cookie dell'utente per quel dominio . La risposta restituita fondamentalmente dovrebbe dire al dominio originale, se l'utente è autenticato e, se necessario, quale sia la sua identità.
Se l'utente non è ancora autenticato, verrebbe reindirizzato a una pagina del dominio di autenticazione per inviare la sua password, ecc.
Anche se è abbastanza semplice da configurare, tieni presente che esistono alcune sfide per renderlo effettivamente sicuro.
Ad esempio, come definito, il sito web qualsiasi può recuperare la tua identità. Inoltre, il sito Web relying può essere "ingannato" modificando la risposta restituita.
Naturalmente, il modo più diretto per risolvere questi problemi è - avete indovinato - SAML / OpenId / etc.