Rubrica utente LDAP e SSO 

Principio

La gestione delle autenticazioni ed accesso alle soluzioni basate sulla tecnologia SAFE X3 si fonda su due principi complementari:

1) La centralizzazione dei dati di autenticazione

Per gestire in maniera centralizzata l’autenticazione degli utenti nei software in tecnologia SAFE X3, è possibile memorizzare alcune informazioni in una rubrica LDAP ( Lightweight Directory Access Protocol). Tale centralizzazione può avvenire indipendentemente dal tipo di connessione.

2) Il « single sign on » (SSO)

Si può assumere che un utente che si connetta sulla propria postazione di lavoro sotto Windows si sia già autenticato (abbia inserito la sua password) e che di conseguenza non voglia più autenticarsi nuovamente alle prossime connessioni a SAFE X3 reinserendo utente e password.

Il fatto di autenticarsi una sola volta si chiama SSO (Single Sign-On).

Limiti

Il SSO funziona allo stato attuale in due casi:

Queste funzionalità possono essere implementate per Sage X3 con l'aiuto di un insieme di parametri.

Descrizione

Il processo di connessione così come viene descritto qui corrisponde a ciò che avviene in client-server, non appena sono stati definiti i parametri corrispondenti descritti nei paragrafi che seguono.
Le differenti fasi si svolgono nella maniera seguente:

1 - L’utente si autentica (sotto Windows, ad esempio con un account del tipo ‘john_doe’; in Web, poiché il livello NTLM restituisce l'account).

2 - L’utente apre una sessione di un software SAFE X3 facendo dippo clic sull'icona di lancio (o tramite un link in Web). In client-server, si apre la finestra di connessione (almeno la prima volta: cliccando sulla casella « Utilizza questi parametri per le prossime connessioni », il box di connessione non apparirà più alle connessioni successive, salvo premendo il tasto [Shift] al lancio).

3 - Se si è in client-server, l’utente inserisce il proprio codice utente così come è conosciuto nel software. Questo codice può essere JOHN, DOE, ADMIN, o qualunque altro codice, ma se si vuole utilizzare il SSO, occorre che il codice sia JOHN_DOE.

4 - Il software verifica che JOHN_DOE esista nella tabella degli utenti (il campo testato è il campo Login definito nella tabella degli utenti). Questo codice corrisponde ad esempio al codice utente JOHND. E' il codice JOHND (di massimo 5 caratteri) ad essere memorizzato in tutte le tabelle in cui viene utilizzato il tipo di dati AUS.

5 - A partire dal momento in cui il SSO viene attivato e si inserisce il codice JOHN_DOE (corrispondente al login di origine), il controllo della password non viene più effettuato (lo è in modo bloccante se il codice utente non corrisponde al login di sistema).

6) Il sistema utilizza allora il campo Riferimento Active Directory dell’utente per interrogare la rubrica centralizzata (LDAP, Active directory… a seconda dei parametri globali di connessione forniti) e recupera un insieme di valori al ritorno (valori di campi della tabella degli utenti, valori dei parametri a livello utente). Aggiorna questi valori nel software se questi sono cambiati nella rubrica (in quanto è la rubrica ad essere il riferimento).

Valori parametri a livello dossier

Valori parametri a livello dossier

Per utilizzare la rubrica utente, bisogna indicare i valori parametri seguenti a livello dossier.

Connessione SSO

Il valore parametro SSOCONNECT permette di attivare la funzione SSO/ LDAP di X3 (vale a dire la connessione alla rubrica centralizzata).

I valori possibili sono:

  • No: la connessione SSO/LDAP non è attiva,
  • Interattivo:La connessione SSO/LDAP è attiva solo in interattivo (C/S e Web)
  • Interattivo e Web service: La connessione SSO/LDAP è attiva in interattivo ed anche per i Web service.
Codice rubrica

Il valore parametro SSODIRECT contiene il codice rubrica quando il parametro SSOCONNECT è attivo. Fa riferimento alla tabella che definisce le rubriche e le connessioni possibili.

Aggiornamento utente alla connessione

Il valore parametro SSOMAJ (Si/No) permette di determinare se effettuare l'aggiornamento della scheda utente e dei valori parametri utente ad ogni connessione dell'utente X3.

Se il suo valore è No e se gli altri parametri sono attivi, il sistema verificherà l’esistenza dell’utente nella rubrica senza attivare l'aggiornamento dei parametri e dei valori utente ad ogni connessione. L'aggiornamento potrà essere effettuato in batch grazie al job batch ASSOMAJ che dovrà essere schedulato.

Controllo password SSO

Il valore parametro SSOPASSWD (Si/No) permette di forzare il controllo (e quindi imporre l'inserimento) della password in client-server anche se il codice utente inserito nel box di connessione è uguale al login Windows dell’utente.

In Web il controllo avviene sistematicamente.

Riferimento per aggiornamento utente

Le informazioni di una rubrica LDAP vengono rappresentate per mezzo di una struttura grafica ad albero.
Ogni ramo dell'albero è un oggetto astratto o reale (una persona, un gruppo di persone, una stampante, dei parametri,...)
Il DN (Distinguished Name) di un oggetto è un mezzo per identificare in modo univoco un oggetto nella gerarchia.
E' questo primo identificativo che viene memorizzato nella scheda utente. Il campo è AUTILIS.ADDNAM.

SEEINFO Un secondo identificativo viene parametrizzato nella rubrica ed è, in principio, il login.

Un esempio di struttura LDAP viene presentato qui in basso. Si noti che le gerarchie sono definibili liberamente e che una tale rubrica può identificare sia utenti, gruppi che risorse (come delle stampanti). L'interrogazione di una tale struttura avviene indicando una radice di ricerca e richiedendo in seguito una ricerca sul ramo stesso, sui discendenti diretti, o ancora su tutta la struttura sottostante alla radice indicata. Il nodo di partenza e la maniera di cercare l'informazione sono indicate nella parametrizzazione della rubrica.

./LDAP_schema.jpg

Principio alla connessione

Si supponga che la modalità SSO sia attiva e che un utente X3 si connetta per la prima volta all'applicazione SAFE X3.

L'applicazione X3 alla connessione verifica che il login inserito sia presente nella rubrica. Se si, recupera il DN (Distinguished Name) che viene aggiornato nel campo ADDNAM della tabella utenti AUTILIS.

Se il valore parametro SSOMAJ vale Si, tutti i campi mappati sono aggiornati nella scheda utente e nei valori parametri X3.

Funzione rubrica utente

Accesso al server LDAP

La funzione "Rubrica" permette di definire la configurazione affinché l'applicazione X3 possa leggere le informazioni della rubrica LDAP.

Il mapping dei campi

Si effettua una corrispondenza tra i campi della tabella utente, la tabella dei valori parametro utente ed i campi della rubrica LDAP.

Funzioni complementari in batch

Il job ASSOMAJ permette di aggiornare gli utenti rispetto alla rubrica LDAP.

SEEWARNING Verranno aggiornati solo gli utenti già esistenti nella tabella AUTILIS; questo strumento non crea in nessun caso nuovi utenti leggendo dei dati della rubrica LDAP.

Il legame avviene con il DN (Distinguished Name) se è già presente nella tabella utente. Viceversa si utilizza il secondo identificativo parametrizzato (in generale il login) per trovare il DN.

Nozione di Distinguished Name

Lo schema sottostante descrive in dettaglio i vari casi possibili di connessione e le procedure di controllo corrispondenti.

./connection_fra.jpg