Repositories¶
Un répository est un référentiel dans lequel sont enregistrés des comptes utilisateurs. Ewt permet de s'interfacer avec différents types de repository.
Il existe deux cas d'utilisation différents d'un repository:
- Dans le cas des clients basic et form, le repository est utilisé pour obtenir les paramètres du compte utilisateur et vérifier les credentials. Le recours à un repository est obligatoire dans le cas de ces clients.
- Pour les autres clients tels que keycloak, oauth2, le repository est utilisé optionnellement afin de compléter ou d'adapter le profil. Cela est par exemple utile lorsque l'annuaire ne contient aucun rôle et que la gestion fine grain des accès est gérée par l'application. Le recours à un repository est optionnel dans le cas de ces clients.
Les référentiels sont déclarés dans le fichier ewtAuthConfig.xml présent dans
le dossier WEB-INF de la web application. Chaque référentiel est décrit
par un bloc <repository> qui doit a minima contenir les attributs suivants:
- attribut
nameobligatoire - Nom du repository. Ce nom sert à référencer le repository depuis les clients.
- attribut
typeobligatoire -
Type du repository dans lequel les logins, mot de passe et rôles sont vérifiés. Les valeurs reconnues sont:
Tous les clients peuvent référencer un ou plusieurs repository à la fois. Dans ce cas, les noms des repositories doivent être séparés par une virgule, par exemple:
<repository>repo1,repo2</repository>
Lorsque plusieurs repositories sont référencés, le moteur agglomère les
rôles et les attributs associés à chaque compte utilisateur correspondant au
triplet (username, password, otpSecret), ou à la valeur username seule
lorsque le repository est utilisé dans le but de compléter les credentials
obtenus d'un référentiel externe comme Keycloak ou Azure Ad. Les différents
repositories sont parcourus selon l'ordre dans lequel ils sont définis dans
l'élément repository.