|
In un sistema sviluppato su piattaforma BEA Weblogic Server la gestione della sicurezza (utenti, gruppi e acl) viene effettuata tramite dei files che si trovano dentro le directory dei vari domini. Questi files sono: - fileRealm.properties contenente utenti e password codificate, gruppi ed acl
- serializaSystemIni.dat contenente la chiave di codifica e decodifica delle password
Purtroppo la gestione della sicurezza effettuata con questi files non è indicata per sistemi di grandi dimensioni, visto e considerato il fatto che nel fileRealms.properties possiamo salvare un massimo di 10000 utenti, 10000 gruppi e 10000 acl. La configurazione di un reame di sicurezza esterno ci permette di gestire tutti gli utenti di cui necessitiamo. Possiamo appoggiarci a dei reami di sicurezza esterni quali reami NT, reami UNIX, LDAP v1, database relazionali o custom realms. In questa sezione vedremo come integrare il nostro wls 7.0 con un reame di sicurezza di tipo custom, utilizzando come repository di utenti e gruppi un server ldap v2. Passi da seguire per configurare l'architettura: Inserire nel reame di sicurezza ldap una entry system contenente degli attributi objectClass di tipo person, organizationalPerson o inetOrgPerson oltre alla superclasse top. dn: cn=system objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson surname: utenteAmministratore uerid: system password: weblogic La locazione di tale utente(DN) all'interno del server ldap non ha importanza. Per esempio possiamo impostare il DN di system come segue: cn=system,ou=weblogicrealm,o=k-tech,c=it LDAP_ROOT c=it o=k-tech ou=weblogicrealm cn=system E' fondamentale creare una new entry chiamata Administrators contenente un attributo objectClass di tipo groupOfNames e un attributo member che rappresenta l'utente system sul nostro ldap server dn: cn=Administrators objectClass: top objectClass: groupOfNames surname: gruppoAmministratori member: cn=system,ou=weblogicrealm,o=k-tech,c=it Come per la new entry system, anche per Administrators la: locazione su ldap(DN) non è importante. Possiamo impostarla come segue: cn=Aistrators,ou=weblogicrealm,o=k-tech,c=it LDAP_ROOT c=it o=k-tech ou=weblogicrealm cn=Administrators Dalla console di Weblogic dobbiamo creare un nuovo custom realm: selezioniamo la voce "Custom Realm" sull'applet di navigazione e clicchiamo sul link "Configure a new Custom Realm…"  Fig. 1 Weblogic Ciccando sul link appena citato dovremmo trovarci davanti una schermata di questo tipo:  Fig. 2 Weblogic dove andiamo ad inserire i parametri di configurazione del nostro ldapRealm. I parametri che vanno inseriti sono: Name > ldapRealm nome logico del realm Realm Class Name > weblogic.security.ldaprealmv2.LDAPRealm la classe di connessione ed interazione con il nostro ldap server. Configuration Data > server.host=host.di.ldap.server; server.port=389; server.principal=cn=utente_amministratore_di_ldap; membership.filter=(&amp(member=%M)(objectclass=groupOfNames)); group.dn=ou=weblogicrealm,o=k-tech,c=it; group.filter=(&amp(cn=%g)(objectclass=groupOfNames)); user.dn=ou=weblogicrealm,o=k-tech,c=it; user.filter=(&amp(cn=%u)(objectclass=person)) I dati per la connessione a ldap (host, porta, user, password), il filtraggio delle entry di tipo person e groupOfName (utenti e gruppi) e le istruzioni per la localizzazione delle varie voci ldap. Password > password_di_connessione_a_ldap La password dell'utente amministratore di ldap Siamo pronti per configurare un nuovo caching realm recandoci sulla voce "Caching Realm" dell'applet di navigazione e selezionando il link "Configure a new Caching Realm…"  Fig. 3 Weblogic Ciccando sul link appena citato dovremmo trovarci davanti una schermata di questo tipo:  Fig. 4 Weblogic Dove andremo ad inserire i dati per il nostro nuovo caching realms: Name > ldapCachingRealm Nome logico del nostro caching realm Basic Realm > ldapRealm Reame di sicurezza dal quale caricare in cache le credential una volta creato il nuovo reame custom dobbiamo assicurarci che nel "config.xml" del nostro dominio siano presenti i tag di configurazione del realm: <CustomRealm Name="ldapRealm" Password="{3DES}EpD+lDjUm/YU4wO/ly+TTA==" ConfigurationData=" server.host=host.di.ldap.server; server.port=389; server.principal=cn=utente_amministratore_di_ldap; membership.filter=(&amp(member=%M)(objectclass=groupOfNames)); group.dn=ou=weblogicrealm,o=k-tech,c=it; group.filter=(&amp(cn=%g)(objectclass=groupOfNames)); user.dn=ou=weblogicrealm,o=k-tech,c=it; user.filter=(&amp(cn=%u)(objectclass=person))" RealmClassName="weblogic.security.ldaprealmv2.LDAPRealm" /> e caching realms: <CachingRealm BasicRealm="ldapRealm" CacheCaseSensitive="true" Name="ldapCachingRealm" /> Se notate che non Sono stati effettuati gli inserimenti, fate uno shutdown del server e modificate a mano questo file come è stato spiegato in precedenza. Adesso siamo pronti ad effettuare la migrazione sul nuovo realm: sempre a server stoppato andiamo a modificare l'istruzione del "config.xml" che indica il reame di sicurezza utilizzato: <Realm CachingRealm="portalCachingRealm" FileRealm="wl_default_file_realm" Name="wl_default_realm" /> inseriamo alla voce CachingRealm il nome logico del nostro caching realm: <Realm CachingRealm="ldapCachingRealm" FileRealm="wl_default_file_realm" Name="wl_default_realm" /> Startiamo il server e… …il nostro dominio di sicurezza poggia ora su un server ldap.
|