Saml vs. Oauth

Saml vs. Oauth
Saml E Oauth sono standard tecnici per l'autorizzazione degli utenti. Questi standard sono utilizzati dagli sviluppatori di applicazioni Web, dai professionisti della sicurezza e dagli amministratori di sistema che stanno cercando di migliorare il proprio servizio di gestione delle identità e migliorare i metodi a cui i clienti possono accedere alle risorse con una serie di credenziali. Nei casi in cui è necessario l'accesso a un'applicazione da un portale, è necessario una fonte di identità centralizzata o un singolo segno di Enterprise. In tali casi, SAML è preferibile. Nei casi in cui è necessario l'accesso temporaneo a risorse come account o file, OAuth è considerato la scelta migliore. In casi d'uso mobili, OAuth viene utilizzato principalmente. Sia SAML (asserzione di sicurezza e linguaggio di markup) che OAuth (apertura aperta) vengono utilizzate per il singolo accesso Web, fornendo l'opzione per l'accesso singolo per più applicazioni Web.

Saml

Saml viene utilizzato per consentire ai provider SSO delle applicazioni Web di trasferire e spostare le credenziali tra il provider di identità (IDP), che contiene le credenziali e il fornitore di servizi (SP), che è la risorsa che necessita di tali credenziali. Saml è una lingua di protocollo di autorizzazione e autenticazione standard che viene utilizzata principalmente per eseguire la gestione della federazione e dell'identità, insieme al segno unico sulla gestione. In Saml, I documenti di metadati XML vengono utilizzati come token per la presentazione dell'identità del cliente. Il processo di autenticazione e autorizzazione di Saml è come segue:

  1. L'utente richiede di accedere al servizio tramite il browser.
  2. Il servizio informa il browser che sta autenticando a un provider di identità specifico (IDP) registrato con il servizio.
  3. Il browser trasmette la richiesta di autenticazione ai provider di identità registrati per l'accesso e l'autenticazione.
  4. In seguito al controllo delle credenziali/autenticazione con successo, l'IDP genera un documento di asserzione basato su XML che verifica l'identità dell'utente e lo trasmette al browser.
  5. Il browser trasmette l'affermazione al fornitore di servizi.
  6. Il fornitore di servizi (SP) accetta l'asserzione per l'ingresso e consente all'utente l'accesso al servizio registrandoli.

Ora, guardiamo un esempio di vita reale. Supponiamo che un utente faccia clic su Login Opzione sul servizio di condivisione delle immagini sul sito Web ABC.com. Per autenticare l'utente, una richiesta di autenticazione SAML crittografata viene effettuata da ABC.com. La richiesta verrà inviata dal sito Web direttamente al server di autorizzazione (IDP). Qui, il fornitore di servizi reindirizzerà l'utente all'IDP per l'autorizzazione. L'IDP verificherà la richiesta di autenticazione SAML ricevuta e, se la richiesta risulta valida, presenterà all'utente un modulo di accesso per immettere le credenziali. Dopo che l'utente ha inserito le credenziali, l'IDP genererà un'asserzione SAML o token SAML contenente i dati e l'identità dell'utente e lo invierà al provider di servizi. Il provider di servizi (SP) verifica l'asserzione SAML ed estrae i dati e l'identità dell'utente, assegna le autorizzazioni corrette all'utente e accede all'utente nel servizio.

Gli sviluppatori di applicazioni Web possono utilizzare i plug -in SAML per garantire che l'app e le risorse seguano entrambi il singolo segno necessario sulle pratiche. Ciò renderà un'esperienza di accesso utente migliore e pratiche di sicurezza più efficaci che sfruttano una strategia di identità comune. Con SAML in atto, solo gli utenti con il token di identità e asserzione corretti possono accedere alla risorsa.

Oauth

Oauth viene utilizzato quando è necessario passare l'autorizzazione da un servizio a un altro servizio senza condividere le credenziali effettive, come la password e il nome utente. Usando Oauth, Gli utenti possono accedere a un unico servizio, accedere alle risorse di altri servizi ed eseguire azioni sul servizio. OAuth è il metodo migliore utilizzato per passare l'autorizzazione da un unico segno su una piattaforma a un altro servizio o piattaforma o tra due applicazioni Web. IL Oauth Il flusso di lavoro è il seguente:

  1. L'utente fa clic sul pulsante di accesso di un servizio di condivisione delle risorse.
  2. Il server di risorse mostra all'utente una concessione di autorizzazione e reindirizza l'utente al server di autorizzazione.
  3. L'utente richiede un token di accesso dal server di autorizzazione utilizzando il codice di sovvenzione di autorizzazione.
  4. Se il codice è valido dopo l'accesso al server di autorizzazione, l'utente riceverà un token di accesso che può essere utilizzato per recuperare o accedere a una risorsa protetta dal server delle risorse.
  5. Dopo aver ricevuto una richiesta per una risorsa protetta con un token di concessione di accesso, la validità del token di accesso viene controllata dal server delle risorse con l'aiuto del server di autorizzazione.
  6. Se il token è valido e passa tutti i controlli, la risorsa protetta è concessa dal server delle risorse.

Un uso comune di OAuth è consentire a un'applicazione Web di accedere a una piattaforma di social media o ad altro account online. Gli account utente di Google possono essere utilizzati con molte applicazioni di consumo per diversi motivi, come blog, giochi online, accedere con account di social media e leggere articoli sui siti Web di notizie. In questi casi, OAuth funziona in background, in modo che queste entità esterne possano essere collegate e possano accedere ai dati necessari.

Oauth è una necessità, in quanto deve esserci un modo per inviare informazioni sull'autorizzazione tra diverse applicazioni senza condividere o esporre le credenziali dell'utente. Oauth è anche utilizzato nelle imprese. Ad esempio, supponiamo che un utente debba accedere al sistema singolo di una società con il proprio nome utente e password. L'SSO gli dà accesso a tutte le risorse necessarie passando token di autorizzazione OAuth a queste app o risorse.

Conclusione

OAuth e SAML sono entrambi molto importanti dal punto di vista di uno sviluppatore di applicazioni Web o dell'amministratore di sistema, mentre entrambi sono strumenti molto diversi con funzioni diverse. OAuth è il protocollo per l'autorizzazione dell'accesso, mentre SAML è una posizione secondaria che analizza l'input e fornisce l'autorizzazione all'utente.