Single Sign-On per richieste HTTP utilizzando SPNEGO TAI (obsoleto)

WebSphere® Application Server fornisce un intercettore di associazione di fiducia (TAI) che utilizza il meccanismo di negoziazione GSS-API semplice e protetto (SPNEGO) per negoziare e autenticare in modo sicuro le richieste HTTP per risorse protette in WebSphere Application Server.

Funzione obsoleta:

In WebSphere Application Server Versione 6.1, è stato introdotto un Trust Association Interceptor (TAI) che utilizza il meccanismo di negoziazione SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) per negoziare e autenticare in modo sicuro le richieste HTTP per risorse protette. In WebSphere Application Server 7.0, questa funzione è ora deprecata. L'autenticazione Web SPNEGO è stata utilizzata per fornire il ricaricamento dinamico dei filtri SPNEGO e per abilitare il fallback al metodo di accesso dell'applicazione.

Leggi di più Creazione di un Single Sign-On per le richieste HTTP utilizzando l'autenticazione Web SPNEGO per maggiori informazioni.

SPNEGO è una specifica standard definita in Il meccanismo di negoziazione GSS - API semplice e protetto (IETF RFC 2478).

Quando è abilitata la sicurezza amministrativa di WebSphere Application Server , SPNEGO TAI viene inizializzato. Durante l'elaborazione delle richieste HTTP in entrata, il componente dell'autenticatore Web interagisce con SPNEGO TAI, che è definito e abilitato nel repository di configurazione della sicurezza. Viene selezionato un interceptor responsabile dell'autenticazione dell'accesso alla risorsa protetta identificata nella richiesta HTTP.
Importante: l'utilizzo di TAI è una funzione facoltativa. Se non viene selezionato alcun TAI, il processo di autenticazione continua normalmente.

Gli utenti HTTP accedono e si autenticano solo una volta sul proprio desktop e vengono successivamente autenticati (internamente) con WebSphere Application Server. Lo SPNEGO TAI è invisibile all'utente finale WebSphere applicazioni. Il TAI SPNEGO è visibile solo all'amministratore Web responsabile di garantire una corretta configurazione, capacità e manutenzione dell'ambiente Web.

Oltre ai servizi di runtime di sicurezza WebSphere Application Server , sono necessari alcuni componenti esterni per abilitare completamente il funzionamento di SPNEGO TAI. I componenti esterni includono:
  • [ Windows]Microsoft Windows Server con dominio Active Directory e KDC (Key Distribution Center) Kerberos associato. Per informazioni sui server Microsoft Windows supportati, consultare Requisiti di sistema per WebSphere Application Server Versione 8.5 su Windows.
  • Un'applicazione client, ad esempio, un browser o un client Microsoft .NET, che supporta il meccanismo di autenticazione SPNEGO, come definito in IETF RFC 2478. Mozilla Firefox è un esempio di browser. Qualsiasi browser deve essere configurato per utilizzare il meccanismo SPNEGO. Per ulteriori informazioni sull'esecuzione di questa configurazione, consultare Configurazione del browser del client per utilizzare SPNEGO TAI (obsoleto).
L'autenticazione delle richieste HTTP viene attivata dal richiedente (lato client), che genera un token SPNEGO. WebSphere Application Server riceve questo token e convalida la fiducia tra il richiedente e WebSphere Application Server. In particolare, il TAI SPNEGO decodifica e richiama l'identità del richiedente dal token SPNEGO. L'identità viene utilizzata per stabilire un contesto sicuro tra il richiedente e il server di applicazioni.
Nota: SPNEGO TAI è una soluzione lato server in WebSphere Application Server. Le applicazioni lato client sono responsabili della generazione del token SPNEGO per l'utilizzo da parte di SPNEGO TAI. L'identità del richiedente nel registro di sicurezza WebSphere Application Server deve essere identica a quella identità richiamata da SPNEGO TAI. Una corrispondenza identica si verifica quando il server Microsoft Windows Active Directory è il server LDAP (Lightweight Directory Access Protocol) utilizzato in WebSphere Application Server. Un modulo di login personalizzato è disponibile come plug-in per supportare l'associazione personalizzata dell'identit ... da Active Directory al registro di sicurezza WebSphere Application Server . Consultare Associazione del nome principal del client Kerberos all'ID del registro utente WebSphere per SPNEGO TAI (obsoleto) per dettagli sull'utilizzo di questo modulo di login personalizzato.
WebSphere Application Server convalida l'identità rispetto al relativo registro di sicurezza e, se la convalida ha esito positivo, produce un token di sicurezza LTPA (Lightweight Third Party Authentication) e inserisce e restituisce un cookie al richiedente nella risposta HTTP. Richieste HTTP successive da parte dello stesso richiedente per accedere a risorse protette aggiuntive in WebSphere Application Server utilizzare il token di sicurezza LTPA precedentemente creato, per evitare ripetute sfide di accesso.

Il processo di handshake challenge - response è illustrato nel seguente grafico:

Figura 1. Elaborazione della richiesta HTTP, WebSphere Application Server -SPNEGO TAI
Il processo di handshake challenge - response. WebSphere Application Server convalida l'identità rispetto al relativo registro di sicurezza e, se la convalida ha esito positivo, produce un token di sicurezza LTPA (Lightweight Third Party Authentication) e inserisce e restituisce un cookie al richiedente nella risposta HTTP. Richieste HTTP successive da parte dello stesso richiedente per accedere a risorse protette aggiuntive in WebSphere Application Server utilizzare il token di sicurezza LTPA precedentemente creato, per evitare ripetute sfide di accesso.
Il TAI SPNEGO può essere abilitato per tutti o per i WebSphere Application Serverselezionati in una configurazione di cella WebSphere Application Server . Inoltre, il comportamento di ciascuna istanza SPNEGO TAI è controllato da proprietà di configurazione personalizzate utilizzate per identificare, ad esempio, i criteri utilizzati per filtrare le richieste HTTP, come il nome host e il nome dell'area di sicurezza utilizzati per costruire l'istanza Kerberos Nome dell'entità servizio (SPN). Per ulteriori informazioni relative alla definizione e all'impostazione delle proprietà di configurazione personalizzate di SPNEGO TAI, consultare i seguenti argomenti:

L'amministratore Web ha accesso ai seguenti componenti di sicurezza SPNEGO TAI e ai dati di configurazione associati, come illustrato nel seguente grafico.

Figura 2. Elementi di configurazione e sicurezza SPNEGO TAI
Elementi di sicurezza e di configurazione SPNEGO TAI: modulo di autenticazione Web, SPNEGO Trust Association Interceptor, provider di sicurezza JGSS e SPNEGO, file keytab di configurazione Kerberos e Kerberos , proprietà di configurazione SPNEGO TAI e proprietà di sistema JVM.
  • Il modulo di autenticazione Web e il meccanismo LTPA (Lightweight Third Party Authentication) forniscono il framework di runtime del plugin per gli intercettatori di associazioni trust. Consultare Configurazione del meccanismo LTPA per ulteriori dettagli relativi alla configurazione del meccanismo LTPA da utilizzare con SPNEGO TAI.
  • Il provider JGSS (Java Generic Security Service) è incluso in Java SDK ([AIX Solaris HP-UX Linux Windows][z/OS]jre/lib/ibmjgssprovider.jar[IBM i]app_server_root/java/endorsed/ibmjgssprovider.jar) e utilizzato per ottenere il contesto di sicurezza Kerberos e le credenziali utilizzate per l'autenticazione. IBM® JGSS 1.0 è un framework GSSAPI (Java Generic Security Service Application Programming Interface) con Kerberos V5 come meccanismo di sicurezza predefinito sottostante. GSSAPI è un'interfaccia astratta standardizzata in cui è possibile collegare diversi meccanismi di sicurezza basati su chiavi private, chiavi pubbliche e altre tecnologie di sicurezza. GSSAPI protegge le applicazioni dalle complessità e dalle peculiarità dei diversi meccanismi di sicurezza sottostanti. GSSAPI fornisce l'autenticazione dell'identità e dell'origine del messaggio, l'integrità del messaggio e la riservatezza del messaggio.
  • Le proprietà di configurazione Kerberos (krb5.conf o krb5.ini ) e le chiavi di codifica Kerberos (memorizzate in un file keytab Kerberos ) vengono utilizzate per stabilire l'autenticazione reciproca sicura.

    Il gestore della tabella delle chiavi Kerberos (Ktab), che fa parte di JGSS, consente di gestire i nomi dei principal e le chiavi dei servizi memorizzati in un file keytab Kerberos locale. Le coppie di chiavi e nome principal elencate nel file keytab Kerberos consentono ai servizi in esecuzione su un host di autenticarsi al KDC (Key Distribution Center) Kerberos . Prima che un server possa utilizzare Kerberos, è necessario inizializzare un file keytab Kerberos sull'host che esegue il server.

    L'uso del comando ktab per gestire il file keytab Kerberos evidenzia i requisiti di configurazione Kerberos per SPNEGO TAI e l'utilizzo di Ktab.

  • Il provider SPNEGO fornisce l'implementazione del meccanismo di autenticazione SPNEGO, ubicato in[AIX Solaris HP-UX Linux Windows][z/OS]/$WAS_HOME/java/jre/lib/ext/ibmspnego.jar[IBM i]app_server_root/java/ext/ibmspnego.jar.
  • Le proprietà di configurazione personalizzate controllano il comportamento di runtime di SPNEGO TAI. Le operazioni di configurazione vengono eseguite con la console di gestione o con le funzioni di script. Fare riferimento a Configurazione delle proprietà personalizzate di SPNEGO TAI (obsoleto) per ulteriori informazioni su queste proprietà di configurazione personalizzate.
  • Le proprietà personalizzate della JVM (Java virtual machine) controllano le informazioni di traccia diagnostiche per la determinazione dei problemi del provider di sicurezza JGSS e l'utilizzo della funzione di ricaricamento delle proprietà.SPNEGO TAI JVM configuration custom properties (obsoleto) descrive queste proprietà personalizzate della JVM
I vantaggi dell'utilizzo di WebSphere Application Server di SPNEGO TAI includono:
  • [ Windows]Viene stabilito un ambiente SSO (Single Sign - On) integrato con Microsoft Windows Server che utilizzano il dominio Active Directory .
  • Il costo di gestione di un numero elevato di ID e password è ridotto.
  • Viene stabilita una trasmissione sicura e autenticata reciprocamente delle credenziali di sicurezza dal browser Web o dai client Microsoft .NET.
  • Viene raggiunta l'interoperabilità con i servizi Web e le applicazioni Microsoft .NET che utilizzano l'autenticazione SPNEGO a livello di trasporto.
L'utilizzo di SPNEGO TAI nell'ambiente WebSphere Application Server richiede la pianificazione e l'implementazione. Consultare Single sign - on capability with SPNEGO TAI - checklist (obsoleto) nella pianificazione di SPNEGO TAI. L'implementazione dell'utilizzo di SPNEGO TAI è suddivisa nelle seguenti aree di competenza:
Utente browser finale
L'utente finale deve configurare il browser Web o l'applicazione Microsoft .NET per inviare richieste HTTP elaborate da SPNEGO TAI.
Amministratore Web
L'amministratore web è responsabile della configurazione di SPNEGO TAI di WebSphere Application Server per rispondere alle richieste HTTP del client.
Amministratore WebSphere Application Server
L'amministratore di WebSphere Application Server è responsabile della configurazione di WebSphere Application Server e di SPNEGO TAI per prestazioni di installazione ottimali.
Vedere Creazione di un Single Sign-On per le richieste HTTP utilizzando SPNEGO TAI (deprecato) per una spiegazione delle attività richieste per utilizzare SPNEGO TAI e come la parte responsabile esegue tali attività.