Autorisation d'un utilisateur externe

La méthode getSecurityRole() est utilisée dans le cadre de l'autorisation pour déterminer le rôle de sécurité associé à l'utilisateur externe. Les rôles de sécurité utilisés pour les utilisateurs externes sont configurés de la même manière que les rôles de sécurité destinés aux utilisateurs internes.

/**
 * L'implémentation de cette méthode doit renvoyer le rôle
 * de sécurité associé à l'utilisateur externe à des fins
 * d'autorisation. Si l'utilisateur n'existe pas, la valeur NULL doit être
 * renvoyée.
 *
 * @param identifier Identificateur de l'utilisateur externe.
 *
 * @return Rôle de sécurité pour l'autorisation.
 *
 * @throws AppException Signature de l'exception générique.
 * @throws InformationalException Signature de l'exception générique.
 */
String getSecurityRole (Identificateur de chaîne)
  throws AppException, InformationalException;

L'environnement CDEJ fait appel à une implémentation de cette méthode dans le cadre du processus d'autorisation si l'utilisateur n'existe pas dans le cache de sécurité. Seuls les utilisateurs internes peuvent exister dans le cache de sécurité. Cela signifie que les identificateurs utilisés pour identifier les utilisateurs externes doivent être uniques et ne doivent pas entrer en conflit avec les noms d'utilisateurs configurés pour les utilisateurs internes, à moins que l'interface UserScope personnalisée décrite dans Portée d'utilisateur soit implémentée. Sinon, en cas de conflit de nom d'utilisateur, les droits d'accès affectés à l'utilisateur interne sont également utilisés pour l'utilisateur externe.

Si un rôle ne peut pas être déterminé pour l'utilisateur externe, la valeur NULL doit être renvoyée afin que l'environnement CDEJ puisse consigner l'erreur d'autorisation correctement.