Authentification d'un utilisateur externe

La méthode authenticate() est responsable de l'authentification d'un utilisateur externe. Elle est appelée au cours du processus d'authentification si l'utilisateur est identifié en tant qu'utilisateur externe. En cas d'utilisateurs externes, cette méthode est appelée à la place de l'authentification configurée.

Remarque : Si un autre mécanisme d'authentification, par exemple LDAP, est configuré, les utilisateurs externes doivent être en mesure de s'authentifier par rapport à ce mécanisme.
/**
   * L'implémentation de cette méthode doit valider l'identificateur
   * et le mot de passe, puis renvoyer le résultat de la validation. Si les informations sont
   * valides, le code de table de codes SecurityStatus.LOGIN doit être renvoyé.
   *
   * @param identifier Identificateur de l'utilisateur externe.
   * @param password Mot de passe en tant que matrice de caractères.
   * @param userType Type d'utilisateur externe.
   *
   * @return Statut de l'authentification sous la forme d'un code de table de codes.
   *
   * @throws AppException Signature de l'exception générique.
   * @throws InformationalException Signature de l'exception générique.
   */

  public abstract String authenticate(String identifier,
    char[] password, String userType)
    throws AppException, InformationalException;

Les paramètres d'entrée de la méthode incluent un identificateur, le mot de passe traité comme une matrice de caractères et le type d'utilisateur externe à authentifier.

Le paramètre userType vise à permettre la prise en charge de plusieurs types d'utilisateur qui nécessitent différents mécanismes d'authentification. L'utilisation de ce paramètre dépend de l'implémentation personnalisée.

Le résultat prévu de cette méthode est une entrée provenant de la table de codes curam.util.codetable.SECURITYSTATUS. En cas d'authentification réussie, le résultat doit être :

curam.util.codetable.SECURITYSTATUS.LOGIN

En cas d'échec d'authentification, cette table de codes contient un certain nombre d'entrées, notamment BADUSER, BADPWD et PWDEXPIRED. Cette table de codes peut être étendue pour inclure des codes personnalisés comme indiqué dans le Cúram Server Guide de développement du serveur Cúram.

Le résultat d'authentification renvoyé par cette méthode est automatiquement consigné dans la table de base de données AuthenticationLog. Pour plus d'informations sur cette table, consultez le Guide de développement de serveur Cúram.

La classe abstraite PublicAccessUser définit également les méthodes abstraites suivantes que des sous-classes concrètes doivent implémenter :

Voir la documentation Java associée de la classe PublicAccessUser pour plus d'informations sur les méthodes ci-dessus.