Table des matières
Authentification d’utilisateur
Les utilisateurs POS sont authentifiés à l’aide du service ISecurityService. Il contient les méthodes permettant la connexion d’utilisateur au système, la déconnexion, le verrouillage de l’écran et la vérification si l’utilisateur a des autorisations requises.
Méthodes du service ISecurityService :
- SignIn(string login, SecureString password)
Cette méthode permet à l’utilisateur de se connecter au système. - SignOut()
Cette méthode déconnecte l’utilisateur. En conséquence, toutes les vues ouvertes auparavant sont fermées et l’application revient à la vue de connexion. - Lock()
Cette méthode bloque l’écran. Si elle est appelée, la vue de connexion est ouverte et il n’est pas possible d’afficher les autres vues ouvertes jusqu’à ce que l’identité de l’utilisateur ne soit vérifiée en fournissant le mot de passe.
Autorisation d’utilisateur
Chaque utilisateur connecté dans POS peut avoir ou ne pas avoir les autorisations aux endroits de l’application définis auparavant. Les autorisations sont définies dans le système ERP par le biais de l’attribution des autorisations aux actions et objets métiers à un groupe d’utilisateurs. Afin de vérifier si l’utilisateur connecté a des autorisations requises, il faut utiliser le service IAuthorizationService et sa méthode ValidatePermissions ou, si nous sommes dans la classe de ViewModel, appeler directement la méthode élargissant avec le même nom. Appeler la méthode fait vérifier les autorisations. Si la vérification échoue, l’application ouvre une vue modale où il est possible de sélectionner l’utilisateur pour lequel le processus de vérification sera relancé (à condition qu’un nom d’utilisateur et un mot de passe appropriés soient fournis). Ceci ne change pas l’utilisateur connecté, mais fait passer l’étape de vérification des autorisations. Paramètres de la méthode :
- accessDeniedMessage (string) – texte qui doit apparaître lorsque l’utilisateur n’a pas d’autorisations vérifiées,
- autorization (IAuthorization) – autorisation que nous voulons vérifier,
- successAction (Action) – action qui doit être exécutée lorsque la vérification se termine avec succès,
- cancelAction (Action) – action facultative qui doit être exécutée lorsque l’utilisateur annule la possibilité d’élever les autorisations en se connectant à un autre compte lors de la vérification des autorisations,
- login (string) – nom d’utilisateur facultatif pour lequel les autorisations seront vérifiées,
- password (SecureString) (par défaut null) – mot de passe de l’utilisateur pour lequel les autorisations seront vérifiées (requis si le nom d’utilisateur est saisi)
- logByCard (bool) (par défaut false) – définit si l’utilisateur s’est connecté à l’aide d’une carte magnétique
Exemple :
Nous vérifions si l’utilisateur connecté est autorisé à ajouter un reçu :
this.ValidatePermissions(« Pas d'autorisations à émettre un reçu", Authorization.Check.To(PermissionName.Receipt).WithLevels(PermissionLevel.Add), () => { NotificationService.Show("Autorisations vérfiées avec succès", NotifyIcon.Information); });