Autorizzazione e autenticazione utilizzando più tipi di autenticazione in MVC

4

Attualmente sto gestendo un team in cui stiamo costruendo una nuova applicazione SaaS.

Il modo in cui è attualmente strutturato è che abbiamo una soluzione che ha la nostra logica e dati aziendali e una soluzione che trattiene il nostro sito web (e progetti correlati)

Nella nostra attuale base di utenti, ci sono clienti che usano diversi tipi di autenticazione:

  • nome utente / password utilizzando l'architettura di appartenenza di aspnet
  • Servizi Web SOAP homegrown che consentono a uno sviluppatore di connettersi tramite SSO
  • SAML

I client possono avere impostazioni diverse per l'accesso, ma gli utenti all'interno dei client si registrano allo stesso modo. La grande sfida con il nostro sistema legacy è che questi sono un po '"hackerati" insieme e molto difficili da gestire. Voglio essere sicuro che siamo molto più scalabili per il futuro.

Ho esaminato l'autenticazione basata sulle attestazioni utilizzando il framework MVC e lo capisco abbastanza bene, quindi sono fiducioso che il nostro team possa costruire il framework per supportarlo. La mia sfida è con STS (server di identità), quindi ho alcune domande:

  1. Fondamentalmente, sto andando nella giusta direzione?
  2. Quale sistema possiede la conoscenza di dove un utente deve essere autenticato? Sospetto che l'STS perché ciò significherebbe che il sistema basato sulle attestazioni non può davvero preoccuparsi dell'autenticazione o dell'autorizzazione
  3. Ho esaminato OpenAM, OpenIDM e IdentityServer per STS, ma non riesco davvero a capire come collegarli. Sono anche sistemi STS?
  4. Sono disposto a spendere soldi per una soluzione, ci sono altre soluzioni che dovrei esaminare?
posta Matthew Doyle 30.04.2014 - 16:52
fonte

1 risposta

1

Questo è stato seduto per un po ', e ho pensato di rispondere alla mia stessa domanda da quando abbiamo risolto questo problema ormai ...

Abbiamo deciso di convincere i clienti che utilizzavano i servizi SOAP locali per utilizzare SAML e abbiamo collaborato con Ping Identity per aiutarci con il componente SAML poiché non eravamo esperti.

Per quanto riguarda la nostra progettazione, siamo stati in grado di mantenerla relativamente semplice: alcuni client SAML avevano anche bisogno di un tipo di autenticazione nome utente / password per alcuni utenti, quindi abbiamo progettato sia una connessione per SAML sia per nome utente e password .

Abbiamo anche deciso di adottare un approccio basato su IdP, che finora non ha rappresentato un problema.

    
risposta data 26.12.2015 - 20:37
fonte

Leggi altre domande sui tag