Introduzione al gateway applicazioni

Gateway applicazioni è un'appliance software che consente di integrare le applicazioni ospitate su un'istanza di computazione, in un'infrastruttura cloud o in un server on premise con IAM a scopo di autenticazione.

App Gateway funge da proxy inverso che protegge le applicazioni Web limitando l'accesso non autorizzato alla rete. Gateway applicazioni intercetta qualsiasi richiesta HTTP a queste applicazioni e garantisce che gli utenti vengano autenticati con IAM prima di inoltrare la richiesta a queste applicazioni. Gateway applicazioni propaga l'identità dell'utente autenticato alle applicazioni.

Se l'utente non è autenticato con IAM, Gateway applicazioni reindirizza l'utente alla pagina di accesso per la convalida delle credenziali.

Nota

Se si utilizza Cloud Gate, è importante che il nome di un utente contenga solo i caratteri mostrati in Creazione di un utente perché il nome visualizzato viene inviato come intestazione HTTP. Se vengono utilizzati caratteri ASCII non stampabili, Cloud Gate considera la richiesta non valida e restituisce un errore 400.

Utilizzi per gateway applicazioni

Usa gateway applicazioni per:

  • Integra le applicazioni aziendali ospitate on-premise o in un'infrastruttura cloud con IAM a scopo di autenticazione.

    Ad esempio, se disponi di un'applicazione Web ospitata on-premise o in un'infrastruttura cloud, puoi integrare questa applicazione con qualsiasi altra applicazione basata su cloud per Single Sign-On. Utilizza App Gateway per integrare un'applicazione Web con IAM, quindi assicurati che le altre applicazioni basate su cloud utilizzino IAM come meccanismo di autenticazione. Tutte queste applicazioni utilizzano il Single Sign-On fornito da IAM.

  • Esponi le applicazioni Web intranet all'accesso a Internet.

    Se l'applicazione Web è ospitata e accessibile tramite una intranet e si desidera esporre l'accesso a questa applicazione tramite Internet, utilizzare Gateway applicazioni per proxy qualsiasi richiesta Internet e richiedere agli utenti di eseguire l'autenticazione con IAM prima di accedere all'applicazione Web Intranet. In questo caso, il gateway applicazioni viene distribuito in DMZ di rete mentre l'applicazione rimane nella zona intranet.

  • Esegui l'integrazione con applicazioni prive di un meccanismo di autenticazione nativo e che non supportano i metodi di integrazione di federazione SAML, OAuth o OpenID Connect.

    Se l'applicazione non supporta gli standard di autenticazione supportati da IAM (SAML, OAuth e OpenID Connect) e non è possibile utilizzare gli SDK di IAM nell'applicazione, è possibile utilizzare Gateway applicazioni per integrare l'applicazione Web con IAM.

  • Integrazione con le applicazioni che supportano l'autenticazione basata sull'intestazione HTTP.

    Per le applicazioni Web che supportano l'autenticazione basata su intestazione HTTP, il metodo di integrazione Gateway applicazioni non richiede alcuna modifica al codice sorgente dell'applicazione Web. È necessario configurare i criteri di autenticazione dell'applicazione in IAM per aggiungere variabili di intestazione nella richiesta prima che Gateway applicazioni inoltri la richiesta all'applicazione. In questo modo, l'applicazione può identificare l'utente autenticato con IAM.

Funzionamento di App Gateway

L'App Gateway viene distribuito all'interno dell'infrastruttura di un cliente, indipendentemente dal fatto che l'infrastruttura sia nel cloud, on-premise o ibrida. Funziona come proxy inverso, intercettando tutte le richieste dal client all'applicazione. Il gateway applicazioni verifica quindi se un utente è già connesso a IAM. Se l'utente ha effettuato l'accesso, Gateway applicazioni aggiunge variabili di intestazione alla richiesta in modo che l'applicazione protetta possa accedere alla variabile di intestazione. L'applicazione è sicura che il gateway applicazioni ha identificato l'utente connesso nei valori del dominio di Identity e ha creato la sessione utente.

Assicurarsi che la comunicazione tra Gateway applicazioni e applicazione sia sicura per evitare modifiche ai valori delle variabili di intestazione prima che la richiesta venga inviata all'applicazione.

mostra come l'applicazione, il gateway applicazioni, il dominio di Identity e il browser utente interagiscono quando un utente tenta di accedere a qualsiasi risorsa dell'applicazione, ma l'utente non è connesso a un dominio di Identity

I passi riportati di seguito spiegano il flusso di autenticazione basato su form tra il browser Web, il gateway applicazioni e un'applicazione enterprise.

Passo Descrizione
Callout 1 In un browser Web, un utente richiede l'accesso a un'applicazione tramite un URL esposto da Gateway applicazioni.
Callout 2

Gateway applicazioni intercetta la richiesta, verifica che l'utente non disponga di una sessione con IAM e quindi reindirizza il browser dell'utente alla pagina di accesso.

Nel passo 2, se l'utente dispone di una sessione con IAM, significa che l'utente ha già effettuato l'accesso. In tal caso, un token di accesso viene inviato al gateway applicazioni e i passi rimanenti vengono saltati.

Callout 3 IAM presenta la pagina di accesso o il meccanismo di accesso configurato per il dominio.
Callout 4 L'utente accede a IAM.
Callout 5 Al completamento dell'autenticazione, IAM crea una sessione per l'utente ed emette un token di accesso al gateway applicazioni.
Callout 6 Gateway applicazioni utilizza il token per identificare l'utente. Aggiunge quindi variabili di intestazione alla richiesta e inoltra la richiesta all'applicazione.
Callout 7 L'applicazione riceve le informazioni di intestazione, convalida l'identità dell'utente e avvia la sessione utente.

Il gateway applicazioni intercetta qualsiasi richiesta successiva alle risorse protette dell'applicazione. Gateway applicazioni identifica l'utente, aggiunge variabili di intestazione alla richiesta e inoltra la richiesta all'applicazione.

Per disconnettersi, l'utente chiama l'URL di logout di un'applicazione. Il gateway applicazioni identifica l'URL di logout e reindirizza l'utente all'endpoint di logout OAuth del dominio di Identity (/oauth2/v1/userlogout). Dopo che IAM ha disconnesso l'utente, IAM può reindirizzare il browser dell'utente a un URL dell'applicazione che può quindi rimuovere la sessione utente dell'applicazione.

Funzionamento del logout del gateway applicazioni

Gli utenti possono eseguire il logout dalle applicazioni protette da App Gateway utilizzando due meccanismi diversi: App Gateway Logout URL o chiamando una risorsa protetta da un metodo di autenticazione di logout.

Usa URL di logout gateway applicazioni

Gateway applicazioni fornisce un URL di logout centrale che può essere utilizzato per disconnettere l'utente dal Single Sign-On fornito da IAM. Qualsiasi chiamata a questo endpoint attiva il processo di logout. Dopo il logout dell'utente, qualsiasi accesso successivo a una risorsa dell'applicazione protetta richiederà all'utente di eseguire di nuovo l'accesso a IAM.

Questo endpoint supporta due parametri aggiunti all'URL:
  • postlogouturl: l'URL di una pagina di destinazione successiva al logout. Questo valore deve essere codificato tramite URL. Se il parametro non viene specificato, Gateway applicazioni reindirizza il browser utente all'URL di logout specificato nelle Impostazioni sessione della console.
  • stato: parametro facoltativo che deve essere utilizzato dall'applicazione enterprise al termine del processo di logout.

Sintassi

http(s)://<appgateway_host>:<appgateway_port>/cloudgate/logout.html?postlogouturl=<url_encoded>&state=<state_value>

Endpoint di logout con parametri

Se l'URL di base del gateway applicazioni è https://myappgateway.example.com:4443, utilizzare l'URL seguente per disconnettere l'utente dal Single Sign-On: https://myappgateway.example.com:4443/cloudgate/logout.html?postlogouturl=http%3A%2F%2Fwww.oracle.com&state=123

Usa risorsa protetta dal metodo di autenticazione di logout

È possibile creare una risorsa nell'applicazione enterprise e configurare un criterio di autenticazione per questa risorsa utilizzando il metodo di autenticazione Forms+Logout. Quando l'utente accede a questa risorsa, Gateway applicazioni richiama il processo di logout e disconnette l'utente dal Single Sign-On fornito da IAM.

Sintassi

http(s)://<appgateway_host>:<appgateway_port>/<logout_resource>

Risorsa protetta dal metodo di autenticazione Logout

Se la risorsa /myapp/logout è stata creata nell'applicazione enterprise e Forms+Logout è stata assegnata come Metodo di autenticazione per questa risorsa nella sezione Criteri di autenticazione, quando gli utenti accedono all'URL https://myappgateway.example.com:4443/myapp/logout, vengono disconnessi dal Single Sign-On fornito da IAM.