Configurazione di un criterio di autenticazione SSO

Creare un criterio di autenticazione per ogni risorsa creata per l'applicazione enterprise.

Un criterio di autenticazione definisce un metodo di autenticazione da utilizzare per proteggere le risorse dell'applicazione enterprise e se Gateway applicazioni aggiunge variabili di intestazione alla richiesta che inoltra all'applicazione.
  1. Nella pagina elenco Applicazioni integrate selezionare l'applicazione enterprise da modificare. Per assistenza nella ricerca della pagina di elenco, vedere Elenco delle applicazioni.
  2. Nella pagina Dettagli applicazione selezionare Configurazione SSO, quindi selezionare Modifica configurazione SSO. Nella sezione Criteri di autenticazione, selezionare Convalida audience, Consenti CORS o Richiedi cookie sicuri, se necessario.
    • Convalida audience: per motivi di sicurezza, assicurarsi che la casella di controllo Convalida audience sia selezionata. La casella di controllo di convalida dell'audience viene utilizzata per assicurarsi che il token sia stato emesso dall'emittente noto del gateway applicazioni, in questo caso IAM. Se si cancella la convalida dell'audience, Gateway applicazioni non convaliderà l'audience del token, il che rende l'applicazione vulnerabile agli attacchi.
    • Consenti CORS: selezionare questa opzione per abilitare la condivisione CORS (Cross-Origin Resource sharing) in modo che tutte le applicazioni eseguite su un dominio di identità possano ottenere dati da un altro dominio di identità.
    • Richiedi cookie sicuri: se Gateway applicazioni è configurato in modalità SSL (HTTP), confermare che è selezionato Richiedi cookie sicuri. Questo flag imposta l'intestazione sicura per evitare che i cookie vengano utilizzati nelle comunicazioni HTTP non sicure. Se Gateway applicazioni è configurato in modalità non SSL (HTTP), deselezionare Richiedi cookie sicuri.
  3. Selezionare Aggiungi risorse gestite.
  4. Nella finestra Aggiungi risorsa gestita selezionare la risorsa per la quale si desidera configurare un criterio di autenticazione dalla lista di risorse create nella sezione Risorse o aggiungere una risorsa gestita.
  5. Utilizzare la tabella seguente per definire il metodo di autenticazione per la risorsa selezionata:

    Metodo di autenticazione

    Descrizione

    Autenticazione Basic

    Il metodo Basic Auth esegue l'autenticazione Basic HTTP. Se la richiesta non contiene un'intestazione Auntication Basic, il browser dell'utente richiederà le credenziali.

    Le credenziali inviate nell'intestazione si trovano in AuthenticationBasic convalidato in IAM.

    Autenticazione Basic+Logout

    Questo metodo viene utilizzato per proteggere la risorsa (URL) dell'applicazione che rappresenta il processo di logout dell'applicazione.

    Quando Gateway applicazioni intercetta una richiesta per questa risorsa, viene avviato il processo di logout HTTP. Questo processo elimina qualsiasi cookie di sessione HTTP creato dal metodo di autenticazione Basic Auth+Session.

    Al termine del processo di logout, App Gateway inoltra il browser utente alla risorsa dell'applicazione richiesta.

    Il processo di logout HTTP non cancella le credenziali inserite nella cache dal browser nella sessione del browser corrente e quindi l'utente potrebbe non essere nuovamente richiesto per le richieste successive.

    Autenticazione Basic+Sessione

    Funziona come Autorizzazione di base. Una volta convalidata, la credenziale crea un cookie di sessione HTTP (ORA_OCIS_CG_BA_SESSION).

    Form o Token di accesso

    In questo metodo di autenticazione, Gateway applicazioni delega la raccolta e la convalida delle credenziali a IAM.

    Se nella richiesta è presente un'intestazione Authorization Bearer, l'autenticazione è simile a un flusso del server delle risorse. Se è presente un'intestazione user-agent, viene eseguito un flusso del browser utente.

    Il flusso del browser dell'utente reindirizza il browser dell'utente a IAM per la raccolta e la convalida delle credenziali, quindi crea un cookie di sessione OAuth (ORA_OCIS_CG_SESSION_*).

    Se nella richiesta è presente un'intestazione Authorization session e il cookie della sessione OAuth risulta mancante o non valido, il flusso di login OAuth abituale viene eliminato e viene restituito un codice di errore HTTP 401 insieme a un'intestazione WWW-Authenticate: Bearer error="invalid_session". Questo viene utilizzato dalle applicazioni che possono attivare un login indesiderato quando le loro richieste contengono un'intestazione user-agent, ma non un'intestazione Authorization Bearer, consentendo loro di gestire la riautenticazione.

    Form+Logout

    Questo metodo viene utilizzato per proteggere la risorsa (URL) dell'applicazione che rappresenta il processo di logout dell'applicazione.

    L'URL di questa risorsa non deve essere esposto dall'applicazione, poiché Gateway applicazioni reindirizza il browser utente all'endpoint di logout OAuth IAM (/oauth2/v1/userlogout), invece di inoltrare la richiesta all'URL dell'applicazione.

    Nella finestra Aggiungi risorsa, URL post-logout è l'URL che Gateway applicazioni reindirizza il browser dell'utente dopo aver disconnesso l'utente. È inoltre possibile fornire un valore del parametro Stato post-logout da utilizzare nella pagina URL post-logout dell'applicazione.

    Più token

    Esegue l'autenticazione in base al contenuto dell'intestazione Authorization della richiesta:

    • Se la richiesta contiene un'intestazione Authorization Basic, il gateway applicazioni gestisce questa autenticazione come Autenticazione di base.
    • Se la richiesta contiene un'intestazione Authorization Bearer o Authorization Session, il gateway applicazioni gestisce questa autenticazione come Form o token di accesso.
    • Se l'intestazione di autorizzazione manca o contiene altri valori, viene restituito un errore HTTP 401 Unauthoized.

    Multitoken+Fallthrough

    Uguale a Multitoken, ma se l'intestazione Authorization non è Basic, Bearer o session, invece di presentare l'errore HTTP 401 Unauthoized, la richiesta Gateway applicazioni funge da metodo di autenticazione è Autenticazione di base.

    Anonimo

    • Se è presente un cookie di sessione OAuth valido, le intestazioni configurate nel criterio di autenticazione vengono aggiunte alla richiesta e la richiesta viene inoltrata all'applicazione.
    • Se il cookie della sessione OAuth manca o è scaduto, funziona allo stesso modo del metodo di autenticazione Pubblico. In questo caso, alla richiesta viene aggiunta un'intestazione REMOTE_USER con valore anonymous.

    Per entrambe le opzioni, le intestazioni configurate nel criterio di autenticazione vengono aggiunte alla richiesta, ma l'autenticazione non viene eseguita.

    Pubblico

    Nessuna autenticazione eseguita. La richiesta viene inoltrata all'applicazione così com'è.

    Non supportato

    Questo metodo restituisce sempre il codice di errore HTTP 500 Not Supported.

    Ad esempio, è possibile utilizzare questo metodo per disabilitare l'accesso a un URL protetto disponibile nell'applicazione, ma non si desidera che gli utenti vi accedano.

  6. Il metodo di autenticazione selezionato nel passo precedente è valido per tutti i metodi HTTP (GET, HEAD, DELETE, PUT, OPTIONS, CONNECT, POST o PATCH). Se si desidera specificare metodi di autenticazione diversi per i metodi HTTP (ad esempio, il metodo di autenticazione Form + Access Token per il metodo HTTP GET e il metodo di autenticazione Multitoken per il metodo HTTP POST), è possibile eseguire questa operazione utilizzando il menu Sostituzioni del metodo di autenticazione. Selezionare il metodo HTTP e quindi il metodo di autenticazione desiderato. Se è necessario eseguire l'override di più metodi HTTP, ripetere questo passaggio più volte.
  7. Se si desidera aggiungere una variabile di intestazione alla richiesta in modo che Gateway applicazioni la inoltri all'applicazione, selezionare l'icona più + per Intestazioni, fornire il nome e quindi selezionare il valore per la variabile di intestazione dall'elenco di attributi utente, immettere un valore fisso o fornire un'espressione. Per aggiungere più variabili di intestazione, selezionare l'icona + per Intestazioni più volte.

    Si supponga, ad esempio, che l'applicazione richieda la presenza di una variabile di intestazione denominata USERLOGGEDIN in ogni richiesta in modo che l'applicazione conosca l'ID dell'utente connesso a IAM. È necessario aggiungere una variabile di intestazione, immettere USERLOGGEDIN per il campo Nome, quindi selezionare Nome utente dall'elenco oppure immettere $subject.user.userName per Valore.

    Nota

    È possibile selezionare un attributo utente dal menu o fornire un'espressione utilizzando qualsiasi attributo dello schema utente SCIM di IAM come valore della variabile di intestazione. Vedere Espressioni valori intestazione supportate per i criteri di autenticazione.

  8. Selezionare Aggiungi risorsa gestita.
  9. Selezionare Salva modifiche.