![[16.0.0.3 et ultérieur]](../ng_v16003.gif)
Personnalisation des référentiels ou des registres d'utilisateurs pour Liberty
Les référentiels et les registres d'utilisateurs effectuent des fonctions en relation avec la sécurité, notamment l'authentification et l'autorisation. Vous pouvez définir un registre d'utilisateur ou un référentiel d'utilisateur personnalisé en implémentant les interfaces de programmation de service (SPI) de Liberty.
Pourquoi et quand exécuter cette tâche
Un registre d'utilisateur contient des informations sur les utilisateurs et les groupes qui sont utilisés pour authentifier et autoriser un utilisateur. Avec les registres d'utilisateurs, vous pouvez effectuer des opérations de lecture, comme read, search et login, mais vous ne pouvez pas effectuer des opérations d'écriture pour modifier les utilisateurs ou les groupes. Les registres d'utilisateurs personnalisés étant plus simples à configurer, ils sont recommandés dans la majorité des cas.
Les référentiels d'utilisateurs offrent des fonctions similaires à celles des registres d'utilisateurs, mais ils peuvent aussi définir ou modifier des attributs pour des utilisateurs et les groupes. Les référentiels d'utilisateurs personnalisés sont plus complexes à implémenter et leurs fonctionnalités additionnelles ne sont pas requises dans la plupart des situations. Par conséquent, implémentez un référentiel d'utilisateurs personnalisé uniquement si vous avez besoin des opérations d'écriture ou des attributs personnalisés offerts par le référentiel.
Dans Liberty, vous pouvez implémenter les interfaces de programmation de service (SPI) suivantes pour développer un registre d'utilisateur personnalisé ou un référentiel d'utilisateurs personnalisé.
- Interface de registre d'utilisateurs : com.ibm.websphere.security.UserRegistry
Utilisez l'interface UserRegistry pour implémenter des registres d'utilisateurs, notamment un registre de base autonome, un registre d'utilisateurs SAF autonome, un registre quickStartSecurity et un registre personnalisé. L'implémentation de l'interface est utile dans les situations dans lesquelles des informations sur des utilisateurs et des groupes existent dans un format, comme une base de données par exemple, qui ne peut pas être déplacé vers un système d'exploitation local ou des registres LDAP. Dans ces cas, vous pouvez implémenter l'interface UserRegistry de manière à ce que le serveur Liberty puisse utiliser le registre existant pour toutes les opérations en relation avec la sécurité.
Pour créer le registre, implémentez l'interface UserRegistry dans votre code de manière à ne pas dépendre de la gestion des ressources du serveur Liberty pour fonctionner. Par exemple, vous ne pouvez pas utiliser la configuration de source de données du serveur Liberty, de sorte que vous devez appeler les connexions de bases de données et définir leur comportement dans votre code.
L'interface UserRegistry fournit des opérations de lecture, comme read, search et login, mais elle ne fournit pas des opérations d'écriture. Pour les opérations d'écriture, vous devez implémenter l'interface CustomRepository.
- Interface du référentiel d'utilisateurs personnalisé : com.ibm.wsspi.security.wim.CustomRepository
L'interface CustomRepository fournit des opérations de lecture similaires à l'interface UserRegistry mais aussi des opérations d'écriture, comme create, delete et update. L'interface offre également la possibilité d'ajouter des attributs personnalisés à la fois aux utilisateurs et aux groupes. Les attributs personnalisés sont tous les attributs qui ne sont pas déjà définis dans le schéma actuel.