Panoramica dell'autenticazione IdP esterna (nuova UI perimetrale)

L'interfaccia utente perimetrale e l'API di gestione perimetrale funzionano inoltrando richieste a Edge Management Server, dove quest'ultimo supporta i seguenti tipi di autenticazione:

  • Autenticazione di base: accedi all'interfaccia utente Edge o invia richieste all'API Edge Management passando il nome utente e la 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 di connessione di una chiamata API.

Edge supporta l'utilizzo dei seguenti provider di identificazione esterni (IDP) per l'autenticazione:

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

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

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

  • Questa sezione aggiunge il supporto SSO
  • Questa sezione è dedicata agli utenti dell'interfaccia utente Edge (non della UI classica)
  • Questa sezione è supportata solo sulla versione 4.19.06 e successive

Informazioni su SSO di Apigee

Per supportare SAML o LDAP su Edge, devi installare apigee-sso, il modulo SSO Apigee. L'immagine seguente mostra l'accesso SSO di Apigee in un'installazione Edge per cloud privato:

Utilizzo delle porte per SSO Apigee

Puoi installare il modulo SSO Apigee sullo stesso nodo della UI e del server di gestione perimetrale oppure sul proprio nodo. Assicurati che il servizio SSO di Apigee abbia accesso al server di gestione sulla porta 8080.

La porta 9099 deve essere aperta sul nodo SSO Apigee per supportare l'accesso all'accesso SSO di Apigee da un browser, dall'IdP SAML o LDAP esterno e dal server di gestione e dall'interfaccia utente perimetrale. Durante la configurazione del servizio SSO di Apigee, 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, un server Postgres autonomo 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 il servizio SSO di Apigee.

Supporto aggiunto per OAuth2 a Edge per il cloud privato

Come accennato in precedenza, l'implementazione Edge di SAML si basa su token di accesso OAuth2.Di conseguenza, è stato aggiunto il supporto OAuth2 a Edge per il cloud privato. Per maggiori informazioni, consulta Introduzione a OAuth 2.0.

Informazioni su SAML

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

  • Assumi il controllo completo della gestione degli utenti. Quando gli utenti lasciano l'organizzazione e ne viene eseguito il deprovisioning a livello centrale, gli viene automaticamente negato l'accesso a Edge.
  • Controlla il modo in cui gli utenti eseguono l'autenticazione per accedere a Edge. Puoi scegliere tipi di autenticazione diversi per organizzazioni Edge diverse.
  • Controlla i criteri di autenticazione. Il tuo provider SAML potrebbe supportare criteri di autenticazione più in linea con i tuoi standard aziendali.
  • Puoi monitorare accessi, disconnessioni, tentativi di accesso non riusciti e attività ad alto rischio sul deployment Edge.

Se SAML è abilitato, l'accesso all'interfaccia utente e all'API Edge Management utilizza i token di accesso OAuth2. Questi token vengono generati dal modulo SSO Apigee che accetta le asserzioni SAML restituite dall'IdP.

Una volta generato da un'asserzione SAML, il token OAuth è valido per 30 minuti e il token di aggiornamento è valido per 24 ore. Il tuo ambiente di sviluppo potrebbe supportare l'automazione per 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 l'articolo sull'utilizzo di SAML con le attività automatizzate per informazioni sulla creazione di token speciali per le attività automatizzate.

Informazioni su LDAP

Lightweight Directory Access Protocol (LDAP) è un protocollo aperto e standard di settore per l'accesso e la gestione di servizi di informazioni di directory distribuiti. I servizi di directory possono fornire qualsiasi set organizzato di record, spesso con una struttura gerarchica, ad esempio una directory per le email aziendali.

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

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

  • Ricerca e associazione (associazione indiretta)
  • Associazione semplice (associazione diretta)

Il servizio SSO di Apigee tenta di recuperare l'indirizzo email dell'utente e di aggiornarne il record dell'utente interno con quest'ultimo in modo che esista un indirizzo email corrente, in quanto Edge utilizza questa email per scopi di autorizzazione.

URL API e UI perimetrali

L'URL che utilizzi per accedere all'interfaccia utente perimetrale e all'API di gestione perimetrale è lo stesso utilizzato prima di abilitare SAML o LDAP. Per l'UI 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 la UI perimetrale. 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 SSO Apigee

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

Apigee SSO e Tomcat supportano tre modalità di connessione:

  • PREDEFINITO: la configurazione predefinita supporta le richieste HTTP sulla porta 9099.
  • SSL_TERMINATION: abilita l'accesso TLS ad Apigee SSO sulla porta che preferisci. Devi specificare una chiave e un certificato TLS per questa modalità.
  • SSL_PROXY: configura l'accesso SSO di Apigee in modalità proxy, il che significa che hai installato un bilanciatore del carico prima di apigee-sso e terminato TLS sul bilanciatore del carico. Puoi specificare la porta utilizzata su apigee-sso per le richieste provenienti dal bilanciatore del carico.

Attiva il supporto dell'IdP esterno per il portale

Dopo aver abilitato il supporto dell'IdP esterno per Edge, puoi facoltativamente abilitarlo per il portale Apigee Developer Services (o semplicemente per il portale). Il portale supporta l'autenticazione SAML e LDAP durante l'invio di richieste a Edge. Tieni presente che è diversa dall'autenticazione SAML e LDAP per l'accesso sviluppatore al portale. L'autenticazione IdP esterna per l'accesso sviluppatore viene configurata separatamente. Per saperne di più, consulta Configurare il portale per l'utilizzo degli IdP.

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

Il flusso di richiesta/risposta con i token