Impostazioni della
voce di configurazione del login di sistema per JAAS (Java Authentication and
Authorization Service)Utilizzare questa pagina per specificare un elenco di configurazioni di login di sistema JAAS (Java Authentication and Authorization Service).
Per visualizzare questa pagina della console di gestione, fare clic su Sicurezza > Configurazione JAAS > Login di sistema.
Leggere la sezione Java Authentication and Authorization Service prima di definire ulteriori moduli di login per l'autenticazione del runtime di sicurezza di WebSphere Application Server. Non rimuovere i seguenti moduli di login del sistema:
Queste tre configurazioni di login possono essere trasmesse alle seguenti informazioni relative alla richiamata, gestite dai moduli di login all'interno delle suddette configurazioni. Tali richiamate non vengono inoltrate nello stesso momento. Tuttavia, la combinazione di queste richiamate determina la modalità che verrà utilizzata da WebSphere Application Server per autenticare l'utente.
| Richiamata | Responsabilità |
|---|---|
| callbacks[0] = new javax.security.auth.callback.NameCallback("Username: "); | Raccoglie il nome utente
fornito durante un login. Queste informazioni possono essere rappresentate dal nome
utente per i seguenti tipi di login:
|
| callbacks[1] = new javax.security.auth.callback.PasswordCallback("Password: ", false); | Raccoglie la password fornita durante un login. |
| callbacks[2] = new com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl("Credential Token: "); | Raccoglie il token LTPA (Lightweight Third Party Authentication), o un altro tipo di token, durante un login. Generalmente, queste informazioni sono presenti in mancanza di un nome utente e di una password. |
| callbacks[3] = new com.ibm.wsspi.security.auth.callback.WSTokenHolderCallback("Authz Token List: "); | Raccoglie gli oggetti ArrayList di TokenHolder restituiti da una chiamata a WSOpaqueTokenHelper. Il metodo createTokenHolderListFromOpaqueToken () che utilizza il token di autorizzazione CSIv2 (Common Secure Interoperability version 2) come input. |
Nelle configurazioni di login del sistema, WebSphere Application Server autentica l'utente in base alle informazioni raccolte dalle richiamate. Tuttavia, un modulo di login personalizzato non deve agire su alcuna di queste richiamate. L'elenco riportato di seguito illustra le combinazioni tipiche di queste richiamate:
Questa richiamata avviene per i login con asserzione d'identità CSIv2, per i login Web, per i login del certificato X509 CSIv2, per i login intercettatore associazioni sicure di vecchio stile, e così via. In un login del certificato CSIv2 X.509, WebSphere Application Server mappa il certificato sul nome utente. Questa richiamata viene utilizzata da qualunque tipo di login che stabilisce l'affidabilità usando solo il nome utente.
Questa combinazione di richiamate è tipica per i login di autenticazione di base. La maggior parte delle autenticazioni utente avvengono utilizzando queste due richiamate.
Questa richiamata viene generalmente utilizzata da un server downstream per convalidare un token LTPA (Lightweight Third Party Authentication). Ogni volta che WebSphere Application Server crea una richiesta, il token viene generalmente inoltrato al server di destinazione, anziché a un client semplice. Per SSO (Single Sign On), il token LTPA viene ricevuto nel cookie e il token viene utilizzato per il login. Se un modulo di login personalizzato ha bisogno di ricevere il nome utente da un token LTPA, il modulo può utilizzare il metodo com.ibm.wsspi.security.token.WSSecurityPropagationHelper.validateLTPAToken(byte[]) per richiamare l'ID univoco (uniqueID) del token. Dopo aver richiamato l'ID univoco, utilizzare il metodo com.ibm.wsspi.security.token.WSSecurityPropagationHelper.getUserFromUniqueID(uniqueID) per ottenere il nome utente.
Questa richiamata indica che alcuni attributi diffusi sono arrivati al server. Gli attributi diffusi richiedono ancora uno dei seguenti metodi di autenticazione:
Se gli attributi vengono aggiunti a Subject da un client semplice, le richiamate NameCallback e PasswordCallback autenticano le informazioni e gli oggetti serializzati nel supporto token aggiunti al Subject autenticato.
Se la diffusione e l'asserzione d'identità CSIv2 sono entrambe abilitate, WebSphere Application Server utilizza NameCallback e il supporto token, che contiene tutti gli attributi diffusi, per deserializzare la maggior parte degli oggetti. WebSphere Application Server utilizza solo NameCallback poiché l'affidabilità viene stabilita con i server indicati nell'elenco di server sicuri CSIv2. Per specificare i server sicuri, fare clic su Sicurezza > Protocollo di autenticazione > Autenticazione in entrata CSIv2.
La serializzazione personalizzata deve essere gestita solo da un modulo di login personalizzato. Per ulteriori informazioni, vedere "Diffusione degli attributi di sicurezza".
Oltre alle richiamate definite in precedenza, la configurazione di login WEB_INBOUND può contenere solo le seguenti richiamate supplementari
| Richiamata | Responsabilità |
|---|---|
| callbacks[4] = new com.ibm.websphere.security.auth.callback.WSServletRequestCallback("HttpServletRequest: "); | Raccoglie l'oggetto richiesta del servlet HTTP, se presentato. Queste richiamate consentono ai moduli di login di richiamare le informazioni da una richiesta HTTP, da utilizzare durante un login. |
| callbacks[5] = new com.ibm.websphere.security.auth.callback.WSServletResponseCallback("HttpServletResponse: "); | Raccoglie l'oggetto risposta del servlet HTTP, se presentato. Queste richiamate consentono ai moduli di login di aggiungere le informazioni alla risposta HTTP come risultato del login. Ad esempio, i moduli di login potrebbero aggiungere SingleSignonCookie alla risposta. |
| callbacks[6] = new com.ibm.websphere.security.auth.callback.WSAppContextCallback("ApplicationContextCallback: "); | Raccoglie il contesto dell'applicazione Web utilizzato durante il login. Questa richiamata è composta da una HashMap, che contiene il nome dell'applicazione e l'indirizzo Web per il reindirizzamento, se presente. |
I moduli di login riportati di seguito sono pre-impostati per le configurazioni di login del sistema RMI_INBOUND, WEB_INBOUND e DEFAULT. È possibile aggiungere moduli di login personalizzati prima, dopo o tra uno qualsiasi di questi moduli di login, ma non è possibile eliminare i moduli di login pre-impostati.
Questo modulo di login esegue il login principale, a prescindere dall'abilitazione o meno della diffusione attributi. Un login principale utilizza normali informazioni sull'autenticazione come l'ID utente e la password; un token LTPA; un intercettatore associazioni sicure (Trust Association Interceptor, TAI) e un Nome distinto (DN, Distinguished Name) del certificato. Se si verifica uno qualsiasi dei seguenti scenari, questo modulo di login non viene utilizzato e com.ibm.ws.security.server.lm.wsMapInboundLoginModule esegue il login principale:
Questo modulo di login esegue il login principale utilizzando le normali informazioni sull'autenticazione nel caso in cui si verifichi una delle seguenti condizioni:
In presenza dell'oggetto java.util.Hashtable, il modulo di login mappa gli attributi degli oggetti in un Subject valido. Se WSTokenHolderCallback è presente, il modulo di login deserializza gli oggetti byte token e ricrea i contenuti Subject serializzati. java.util.Hashtable ha la precedenza su tutte le altre forme di login. Quindi, fare attenzione a non duplicare o sovrascrivere ciò che WebSphere Application Server potrebbe aver diffuso in precedenza.
Queste proprietà sono impostate nel pannello di autenticazione CSIv2. Per accedere al pannello, fare clic su Sicurezza > Protocollo di autenticazione > Autenticazione in uscita CSIv2. Per impostare la proprietà com.ibm.CSI.rmiOutboundLoginEnabled, selezionare la mappatura Mappatura in uscita personalizzata. Per impostare la proprietà com.ibm.CSIOutboundPropagationEnabled, selezionare Diffusione degli attributi di sicurezza.
Questa configurazione di login determina le funzioni di sicurezza del server di destinazione e del relativo dominio di sicurezza. Ad esempio, se WebSphere Application Server Version 5.1.1 comunica con un server delle applicazioni della versione 5.x, il server delle applicazioni della versione 5.1.1 invia le informazioni sull'autenticazione, utilizzando un token LTPA, al server delle applicazioni della versione 5.x. Tuttavia, se WebSphere Application Server Version 5.1.1 comunica con un server delle applicazioni della versione 5.1.x, le informazioni sull'autenticazione e l'autorizzazione vengono inviate al server delle applicazioni ricevente, se la diffusione è abilitata sia sul server trasmittente che sul server ricevente.
La seguente richiamata è disponibile nella configurazione di login RMI_OUTBOUND. È possibile utilizzare l'oggetto com.ibm.wsspi.security.csiv2.CSIv2PerformPolicy restituito da questa richiamata per interrogare la politica di sicurezza per questa specifica richiesta in uscita. Questa interrogazione può aiutare a determinare se l'ambito di destinazione è diverso da quello corrente e se WebSphere Application Server deve mapparlo. Per ulteriori informazioni, vedere "Configurazione di una mappatura in uscita su un ambito di destinazione differente".
| Richiamata | Responsabilità |
|---|---|
| callbacks[0] = new WSProtocolPolicyCallback("Protocol Policy Callback: "); |
Fornisce le informazioni sulla politica, specifiche del protocollo, per i moduli di login su questa chiamata in uscita. Tali informazioni sono utilizzate per determinare il livello di sicurezza, inclusi l'ambito di destinazione, i requisiti di sicurezza di destinazione e i requisiti di sicurezza assimilati. Il metodo riportato di seguito ottiene CSIv2PerformPolicy da questo specifico modulo di login: csiv2PerformPolicy = (CSIv2PerformPolicy) ((WSProtocolPolicyCallback)callbacks[0]).getProtocolPolicy(); Un altro protocollo, diverso da RMI, potrebbe disporre di un diverso tipo di oggetto della politica. |
Il seguente modulo di login è pre-impostato nella configurazione di login RMI_OUTBOUND. È possibile aggiungere moduli di login personalizzati prima, dopo o tra uno qualsiasi di questi moduli di login, ma non è possibile eliminare i moduli di login pre-impostati.
È possibile utilizzare un modulo di login personalizzato prima di questo modulo di login per eseguire la mappatura delle credenziali. Tuttavia, si consiglia di programmare il modulo di login affinché modifichi i contenuti del Subject inoltrato durante la fase di login. Se si segue questo suggerimento, i moduli di login elaborati dopo questo modulo di login agiscono sui nuovi contenuti di Subject.
SWAM (Simple WebSphere Authentication Mechanism) non supporta le credenziali inoltrabili. Se SWAM è il metodo di autenticazione, WebSphere Application Server non è in grado di inviare le richieste da server a server. In questo caso, è necessario utilizzare LTPA.
Questa configurazione di login viene utilizzata da WebSphere Application Server Version 5.1 e da versioni precedenti.
Il modulo di login com.ibm.ws.security.web.AuthenLoginModule è pre-impostato nella configurazione di login LTPA. È possibile aggiungere moduli di login prima o dopo questo modulo nella configurazione di login LTPA_WEB.
La configurazione di login LTPA_WEB può elaborare l'oggetto HttpServletRequest, l'oggetto HttpServletResponse e il nome dell'applicazione Web, trasferiti utilizzando un gestore richiamate. Per ulteriori informazioni, vedere "Personalizzazione di una configurazione di login e di un'autenticazione JAAS (Java Authentication and Authorization Service) lato server" nella documentazione.
Questa configurazione di login viene utilizzata da WebSphere Application Server Version 5.1 e da versioni precedenti.
Il modulo di login com.ibm.ws.security.server.lm.ltpaLoginModule è pre-impostato nella configurazione di login LTPA. È possibile aggiungere moduli di login prima o dopo questo modulo nella configurazione di login LTPA. Per ulteriori informazioni, vedere "Personalizzazione di una configurazione di login e di un'autenticazione JAAS (Java Authentication and Authorization Service) lato server" nella documentazione.
Informazioni correlate
Pulsanti della console di gestione