In una applicazione aziendale enterprise è importante disporre di un sistema di protezione dei dati robusto e flessibile.
CMDBuild gestisce i permessi di accesso in modo coerente e granulare:
- in modo coerente perché indipendente dal canale di provenienza della richiesta, sia esso l'interfaccia utente web desktop o il webservice REST (interfaccia "mobile", portale Self-Service, ecc) o il webservice SOAP (connettori, ecc)
- in modo granulare perché i permessi possono essere definiti su classi (anche ristretti a righe o colonne), processi, viste, filtri di ricerca, report, dashboard
I permessi sono assegnati a gruppi di utenti (ruoli) ed ogni utente può appartenere ad uno o più ruoli.
L'autenticazione degli utenti può essere effettuata tramite:
- controllo locale sul database di CMDBuild
- controllo locale della presenza dell'utente nel database di CMDBuild e controllo della password su sistema LDAP
- attivazione di un sistema SSO (Single Sign On) tramite
- server LDAP o MS Active Directory tramite servizio CAS (Central Authentication Service);
- protocollo SAML 2.0;
- ADFS 4 (Active Directory Federation Services) tramite protocollo SAML;
- Header authentication (delegata a sistemi di autenticazione a livello di proxy HTTP);
- OAuth2 (personalizzata);
Nel caso di utilizzi multiaziendali, o con Divisioni o Sedi indipendenti all’interno di una azienda, è possibile configurare CMDBuild in modalità Multitenant, consentendo così ad ogni Tenant di lavorare su una partizione “isolata” del CMDB.
E’ possibile configurare sia un partizionamento completo (database completamente separati) sia partizionamenti parziali (alcune informazioni comuni a tutti gli utenti, altre separate).
La lista dei Tenant utilizzabili potrà essere definita da una classe applicativa di CMDBuild (sedi, aziende, clienti, ecc) oppure da una funzione custom di database in cui è possibile implementare regole complesse di visibilità.