Le gestionnairedepersonnalisationgère desfonctionsde personnalisationqui permettentd’adapter lecontenu desapplications.DansDB2Alphablox8.4.1,la fonctiondesécuritéetlafonctionde personnalisationquisont fourniesdansle gestionnaire d’utilisateurssontdeuxmodèlesdifférents.
DB2Alphablox8.4.1fournitunmodèle desécuritébasé surServlet2.4etsur le standardJavaAuthenticationandAuthorizationService. Cemodèlede sécuritéest abordédans«ModèledesécuritédansAlphablox8.4.1»,à lapage62.
Auniveaude lapersonnalisation,lenouveaugestionnairedepersonnalisation fournituneinterface quipermet decommuniquerlacréation,lechargementoula suppression d’unutilisateuroud’un groupeàDB2Alphablox.Le gestionnairede personnalisation permetégalementde spécifieretdemodifierdespropriétésdans unutilisateurouungroupe,demodifierdesutilisateursoudesgroupescontenus dansungroupeetdecréervotre propreutilisateurougroupeetl’ajouterdansle référentielAlphablox.
Gestionnaire de personnalisation
Le nouveaugestionnairedepersonnalisationdansDB2Alphablox8.4.1vous permet deliredespropriétésd’utilisateuretdegroupe àpartird’unréférentiel d’utilisateurs externe.L’interfacedugestionnairedanslemodule
com.alphablox.personalizationestavertie lorsqu’unobjetutilisateurougroupeest créé,chargéousupprimé.Cetobjetdegestionnairedepersonnalisation vous permet égalementd’ajouter auxutilisateursetgroupesDB2Alphabloxdes propriétésquisontdéfiniesdansunréférentield’utilisateurs.
Si vousutilisezungestionnaire depersonnalisation,ajoutezunfichierconfig.xml danslerépertoirealphablox_dir/repository/servers/instance.Audémarrage,DB2 Alphabloxeffectuelesopérationssuivantes:
1. Recherchelefichier config.xmldansleréférentiel.
2. Créeuneinstancedel’objetdegestionnaire depersonnalisation.
3. Définitlespropriétésfournies.
4. Affectel’objetdegestionnairede personnalisationauservicede gestionnaire d’utilisateurs.
Voiciunexempledelabalise<Server>:
<Server>
<Service name="User Manager">
<PersonalizationManager
className="myPackage.CustomPersonalizationManager"
/>
</Service>
</Server>
Le gestionnairedepersonnalisation présentelesfonctionsetlescomportements suivants:
v Lespropriétésd’utilisateuroudegroupe dansvotre référentield’utilisateurs externesontdisponibles danslespagesd’administration deDB2Alphablox uniquementunefoisquevousavezdéfinilesmêmespropriétéspersonnalisées danslespagesd’administration deDB2Alphablox.
v Aprèsavoirdéfinilesmêmespropriétéscomme propriétéspersonnalisées,DB2 Alphabloxeffectueuniquementdesopérations delecture.Toutes les
modificationsapportées danslespagesd’administration deDB2Alphabloxsont desmodificationslocalesdansDB2Alphablox,enmémoireuniquement;ces modificationsnesontpasinscritesdansleréférentield’utilisateursexterne.Ces valeursserontremplacéesauprochainchargementdel’objetutilisateur.
v Sivousdevezmodifier lesinformations deconnexionou d’autresattributsdans lefichierconfig.xml,vousdevezredémarrerApacheTomcat,quià sontour redémarreDB2Alphablox.
Accès aux propriétés utilisateur et groupe JNDI
Lesinformationsfourniesdanscettesection s’appliquentàDB2Alphablox8.4.1.
Vouspouvezrendre lespropriétésd’utilisateuretde groupedansvotreréférentiel JNDI-disponibles dansDB2Alphabloxetaccessiblesvial’interfaceAPI
RepositoryBlox. Pourrendre cespropriétésdisponibles,vousdevez lesspécifier danslefichieralphablox_dir/repository/servers/instance/config.xml:
1. Ajoutezunfichierconfig.xmldansvotre répertoirealphablox_dir/repository/servers/
instance:
<Server>
<Service name="User Manager">
<PersonalizationManager
className="com.alphablox.personalization.jndi.JNDIPersonalizationManager"
connectionURL="ldap://nommachine:port"
userBase="ou=People,dc=société,dc=com"
userSearch="(& (uid={0}) (objectclass=person))"
userProperties="Mail, Phone, Fax"
groupBase="ou=Groups,dc=société,dc=com"
groupSearch="(& (cn={0})(objectclass=groupofuniquenames))"
groupProperties="Description"
/>
</Service>
</Server>
Letableausuivantrépertorielesattributsquisontdisponiblespouraccéderaux propriétésd’utilisateuretdegroupeJNDI.
Attribut Description
connectionURL Obligatoire.L’URLdeconnexionJNDI.Par
exemple:ldap://machine1.ibm.com:10456 contextFactory Facultatif.Lafabriquedecontexteàutiliser
lorsdelacréationducontexteinitialdu répertoire.Lafabriquepardéfautest com.sun.jndi.ldap.LdapCtxFactory.
groupBase Obligatoire.LabaseJNDIàutiliserlorsdela
recherchedegroupes.
groupProperties Obligatoire.Lespropriétésd’utilisateurà affecterduréférentielJNDIàl’objet utilisateurDB2Alphablox.Cettepropriété remplacetouteslespropriétésd’utilisateur personnaliséesdéfiniesdanslespages d’administrationdeDB2Alphablox.
groupSearch Obligatoire.LachaînederechercheJNDIà
utiliserlorsdelarecherched’ungroupe.La recherchedegroupepeutcontenirlasyntaxe deremplacementMessageFormat{0},qui seraremplacéeparlenomuniquedugroupe recherché.
groupSubtree Facultatif.Déterminesiles
sous-arborescencesdegroupBasesont utiliséeslorsdelarecherched’ungroupe.
password Facultatif.Lemotdepasseàutiliserlorsde
laconnexionàl’URLdeconnexion.
userBase Obligatoire.LabaseJNDIàutiliserlorsdela
recherched’utilisateurs.
userName Facultatif.Lenomd’utilisateuràutiliserlors
delaconnexionàl’URLdeconnexion.
userProperties Obligatoire.Lespropriétésd’utilisateurà affecterduréférentielJNDIàl’objet utilisateurAlphablox.Cettepropriété remplacetouteslespropriétésd’utilisateur personnaliséesdéfiniesdanslespages d’administrationdeDB2Alphablox.
userSearch Obligatoire.Définitlachaînederecherche
JNDIàutiliserlorsdelarecherched’un utilisateur.Larecherched’utilisateurpeut contenirlasyntaxederemplacement MessageFormat{0},quiestremplacéeparle nomuniquedel’utilisateurrecherché.
userSubtree Facultatif.Lessous-arborescencesde
userBaseàutiliserlorsdelarecherched’un utilisateur.
Pour accéderauxvaleursdespropriétésd’utilisateurdansvosfichiersJSPàl’aide de l’interfaceRepositoryBlox,procédezcomme suit :
1. Ajoutezlesmêmespropriétésd’utilisateurpersonnaliséesàl’aidedespages d’administrationde DB2Alphablox.Accédezà l’ongletAdministration>page Propriétésgénérales>sectionsurlespropriétésclient.Reportez-vousàla section«Définitions despropriétéspersonnalisées»,à lapage82pour plusde détailssurlesétapessuivre.
2. Dansvosfichiers JSP,accédezà lapropriété personnaliséesuivanteetàsa valeur vial’interfaceAPIRepositoryBlox:
<%@ taglib uri="bloxtld" prefix="blox" %>
...
<blox:repository id="myRepository" />
...
<html>
<head>
<blox:header />
</head>
<body>
Your region is: <%= myRepository.getUserProperty("region") %>
...
3. RedémarrezApacheTomcat,quià sontourredémarreDB2Alphablox, afinque lesmodificationsapportéesaufichier config.xmlprennenteffet.