Panoramica dell'autenticazione IdP esterna (nuova UI perimetrale)

La UI Edge e l'API di gestione Edge funzionano effettuando richieste al server di gestione Edge, dove il server di gestione supporta i seguenti tipi di autenticazione:

  • Autenticazione di base:accedi alla UI Edge o effettua richieste all'API di gestione Edge trasmettendo il tuo nome utente e la tua password.
  • OAuth2:scambia le credenziali di autenticazione di base di Edge con un token di accesso e un token di aggiornamento OAuth2. Effettua chiamate all'API Edge Management passando il token di accesso OAuth2 nell'intestazione Bearer di una chiamata API.

Edge supporta l'utilizzo dei seguenti provider di identità (IdP) esterni per l'autenticazione:

  • SAML (Security Assertion Markup Language) 2.0: genera l'accesso OAuth da queste asserzioni SAML restituite da un provider di identità SAML.
  • Lightweight Directory Access Protocol (LDAP): utilizza i metodi di autenticazione di ricerca e binding o di binding semplice di LDAP per generare token di accesso OAuth.

I provider di identità SAML e LDAP supportano un ambiente Single Sign-On (SSO). Utilizzando un IdP esterno con Edge, puoi supportare il Single Sign-On per la UI e l'API Edge, oltre a qualsiasi altro servizio che fornisci e che supporta anche il tuo IdP esterno.

Le istruzioni riportate in questa sezione per abilitare il supporto dell'IdP esterno sono diverse dall'autenticazione esterna nei seguenti modi:

  • Questa sezione aggiunge il supporto SSO
  • Questa sezione è rivolta agli utenti della UI Edge (non della UI classica)
  • Questa sezione è supportata solo su 4.19.06 e versioni successive

Informazioni su Apigee SSO

Per supportare SAML o LDAP su Edge, installa apigee-sso, il modulo Apigee SSO. L'immagine seguente mostra Apigee SSO in un'installazione di Edge for Private Cloud:

Utilizzo delle porte per Apigee SSO

Puoi installare il modulo Apigee SSO sullo stesso nodo dell'interfaccia utente Edge e del server di gestione oppure sul proprio nodo. Assicurati che Apigee SSO abbia accesso al server di gestione tramite la porta 8080.

La porta 9099 deve essere aperta sul nodo Apigee SSO per supportare l'accesso ad Apigee SSO da un browser, dall'IdP SAML o LDAP esterno e dal server di gestione e dall'interfaccia utente Edge. Durante la configurazione di Apigee SSO, puoi specificare che la connessione esterna utilizzi HTTP o il protocollo HTTPS criptato.

Apigee SSO utilizza un database Postgres accessibile sulla porta 5432 sul nodo Postgres. In genere puoi utilizzare lo stesso server Postgres che hai installato con Edge, ovvero un server Postgres standalone o due server Postgres configurati in modalità master/standby. Se il carico sul server Postgres è elevato, puoi anche scegliere di creare un nodo Postgres separato solo per Apigee SSO.

È stato aggiunto il supporto per OAuth2 a Edge for Private Cloud

Come accennato in precedenza, l'implementazione SAML di Edge si basa sui token di accesso OAuth2.Pertanto, il supporto di OAuth2 è stato aggiunto a Edge per Private Cloud. Per saperne di più, consulta Introduzione a OAuth 2.0.

Informazioni su SAML

L'autenticazione SAML offre diversi vantaggi. Utilizzando SAML puoi:

  • Assumi il controllo completo della gestione utenti. Quando gli utenti lasciano l'organizzazione e vengono deprovisionati centralmente, viene negato automaticamente l'accesso a Edge.
  • Controlla in che modo gli utenti si autenticano per accedere a Edge. Puoi scegliere diversi tipi di autenticazione per diverse organizzazioni Edge.
  • Controlla le policy di autenticazione. Il tuo provider SAML potrebbe supportare policy di autenticazione più in linea con gli standard della tua azienda.
  • Puoi monitorare accessi, disconnessioni, tentativi di accesso non riusciti e attività ad alto rischio nella tua implementazione di Edge.

Con SAML abilitato, l'accesso all'interfaccia utente Edge e all'API di gestione Edge utilizza token di accesso OAuth2. Questi token vengono generati dal modulo Apigee SSO che accetta le asserzioni SAML restituite dal tuo IdP.

Una volta generato da un'asserzione SAML, il token OAuth è valido per 30 minuti e il token di aggiornamento è valido per 24 ore. L'ambiente di sviluppo potrebbe supportare l'automazione per le attività di sviluppo comuni, come l'automazione dei test o l'integrazione continua/deployment continuo (CI/CD), che richiedono token con una durata maggiore. Consulta Utilizzo di SAML con attività automatizzate per informazioni sulla creazione di token speciali per le attività automatizzate.

Informazioni su LDAP

Lightweight Directory Access Protocol (LDAP) è un protocollo di applicazione standard di settore aperto per accedere e gestire i servizi di informazioni di directory distribuite. I servizi di directory possono fornire qualsiasi insieme organizzato di record, spesso con una struttura gerarchica, ad esempio una directory email aziendale.

L'autenticazione LDAP all'interno di Apigee SSO utilizza il modulo LDAP di Spring Security. Di conseguenza, i metodi di autenticazione e le opzioni di configurazione per il supporto LDAP di Apigee SSO sono direttamente correlati a quelli presenti in Spring Security LDAP.

LDAP con Edge per il cloud privato supporta i seguenti metodi di autenticazione su un server compatibile con LDAP:

  • Cerca e associa (associazione indiretta)
  • Associazione semplice (associazione diretta)

Apigee SSO tenta di recuperare l'indirizzo email dell'utente e di aggiornare il relativo record utente interno in modo che sia presente un indirizzo email aggiornato nel file, poiché Edge lo utilizza a fini di autorizzazione.

URL dell'API e della UI Edge

L'URL che utilizzi per accedere alla UI di Edge e all'API di gestione Edge è lo stesso utilizzato prima di abilitare SAML o LDAP. Per l'interfaccia utente Edge:

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

dove edge_UI_IP_DNS è l'indirizzo IP o il nome DNS della macchina che ospita l'interfaccia utente Edge. Durante la configurazione dell'interfaccia utente Edge, puoi specificare che la connessione utilizzi HTTP o il protocollo HTTPS criptato.

Per l'API Edge Management:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

Dove ms_IP_DNS è l'indirizzo IP o il nome DNS del server di gestione. Durante la configurazione dell'API, puoi specificare che la connessione utilizzi HTTP o il protocollo HTTPS criptato.

Configura TLS su Apigee SSO

Per impostazione predefinita, la connessione ad Apigee SSO utilizza HTTP sulla porta 9099 sul nodo che ospita apigee-sso, il modulo Apigee SSO. apigee-sso include un'istanza Tomcat che gestisce le richieste HTTP e HTTPS.

Apigee SSO e Tomcat supportano tre modalità di connessione:

  • PREDEFINITA:la configurazione predefinita supporta le richieste HTTP sulla porta 9099.
  • SSL_TERMINATION::accesso TLS abilitato ad Apigee SSO sulla porta di tua scelta. Per questa modalità devi specificare una chiave e un certificato TLS.
  • SSL_PROXY::configura Apigee SSO in modalità proxy, il che significa che hai installato un bilanciatore del carico davanti a apigee-sso e hai terminato TLS sul bilanciatore del carico. Puoi specificare la porta utilizzata su apigee-sso per le richieste dal bilanciatore del carico.

Abilitare il supporto dell'IdP esterno per il portale

Dopo aver abilitato il supporto dell'IdP esterno per Edge, puoi facoltativamente abilitarlo per il portale dei servizi per gli sviluppatori Apigee (o semplicemente il portale). Il portale supporta l'autenticazione SAML e LDAP quando effettua richieste a Edge. Tieni presente che questa è diversa dall'autenticazione SAML e LDAP per l'accesso degli sviluppatori al portale. Configura l'autenticazione IdP esterno per l'accesso sviluppatore separatamente. Per saperne di più, consulta Configurare il portale per utilizzare i provider di identità.

Durante la configurazione del portale, devi specificare l'URL del modulo Apigee SSO che hai installato con Edge:

Flusso di richiesta/risposta con token