Gestion des droits dans axelor 6.x

Bonjour à tous. Existe-t-il un document permettant de comprendre la gestion des droits dans Axelor ?
Merci à toutes la communauté.

XBigBen.

Bonjour , non pas à ma connaissance . La gestion des droits est complexe mais vraiment très bien faites dans axelor . Je vais essayer de trouver du temps pour rédiger une documentation sur le sujet . Il serait bien que les membres de ce forum fassent de même pour faire vivre la communauté . L exemple de la documentation sur Birt prouve le nécessité de s organiser pour ne pas que ce forum meure.

Oui je suis d’accord avec vous je documenterai également mon expérience sur le forum, pour les droits mais également la prise en main des différents modules.

Des liens Axelor à consulter :
Documentation technique sur la sécurité : https://docs.axelor.com/adk/5.4/dev-guide/modules/security.html
Vidéo : https://www.youtube.com/watch?v=kko3L-LeRVA

Ci-après une synthèse :
Authentification
L’authentification est le processus de vérification d’identité, c’est-à-dire permettant aux utilisateurs de se connecter au système pour l’utiliser.

Utilisateur
L’objet User a diverses propriétés, les plus importantes d’entre elles sont :
code - le nom de connexion de l’utilisateur
name - le nom d’affichage
mot de passe - le mot de passe (stocké crypté dans la base de données)
bloqué - si les utilisations sont bloqués
activateOn - Date à partir de laquelle l’accès doit être activé
expiresOn - Date à partir de laquelle l’accès doit être expiré
groupes - le groupe attribué à l’utilisateur
rôles - les rôles attribués à l’utilisateur
permissions - permissions explicites accordées à l’utilisateur
Les groupes, rôles et permissions sont associés à l’autorisation que nous verrons dans la section suivante.

Autorisation
L’autorisation, également appelée contrôle d’accès, est le processus de détermination des droits d’accès aux ressources d’une application.
L’autorisation est un élément critique de toute application, mais elle peut rapidement devenir très complexe. Basée sur la simplicité d’Apache Shiro, la plate-forme ouverte Axelor fournit un moyen très simple mais puissant de définir des règles d’autorisation.
L’administrateur et les membres des administrateurs de groupe ont un accès complet à toutes les ressources.

Fonctionnalités

  • Autorisations basées sur les rôles
  • La permission définit une règle d’accès unique (granularité plus fine)
  • Les groupes sont destinés à la structure organisationnelle mais prennent également en charge les rôles et les permissions
  • Refuser tout, accorder sélectivement (prouvé le plus sûr car toutes les autorisations sont refusées par défaut)
  • Règles d’autorisation au niveau du package
    L’autorisation comporte quatre éléments principaux : permissions, rôles, groupes et utilisateurs. Ils sont représentés par les objets de domaine de support correspondants Permission, Role, Group et User respectivement.

Objets

  • L’utilisateur a un groupe
  • L’utilisateur a de nombreux rôles
  • L’utilisateur a de nombreuses permissions
  • Le groupe a de nombreux rôles
  • Le groupe a de nombreuses permissions
  • Le rôle a de nombreuses permissions
    La relation entre les objets d’autorisation permet d’atteindre un niveau de granularité plus fin sur le contrôle d’accès.

Permissions
L’objet Permission définit la règle d’accès. Il a les propriétés suivantes :
nom - nom de la permission
object - le nom de l’objet (nom de classe ou nom de package générique)
canRead - s’il faut accorder l’autorisation de lecture
canWrite - s’il faut accorder l’autorisation de mise à jour
canCreate - accorder ou non l’autorisation de création
canRemove - accorder ou non l’autorisation de suppression
canExport - s’il faut accorder l’autorisation d’exportation des données
condition - condition d’autorisation (clause JPQL where avec paramètres de position)
conditionParams - liste de paramètres de condition séparés par des virgules (évalue par rapport au contexte actuel)
La condition est facultative et les indicateurs booléens sont accordés uniquement, c’est-à-dire qu’une valeur fausse ne signifie pas refuser.

La résolution d’autorisation est effectuée dans cet ordre :
• vérifier les permissions attribuées à l’objet utilisateur
• vérifier les permissions attribuées aux rôles de l’utilisateur
• vérifier les permissions attribuées au groupe de l’utilisateur
• vérifier les permissions attribuées aux rôles du groupe

Afficher l’accès
Comme pour la permission d’objet, les permissions d’accès à la vue peuvent être utilisées pour contrôler les champs d’affichage d’objet pour les utilisateurs, les groupes et les rôles
Les permissions (champs) définies sur les objets Utilisateur, Groupe et Rôle peuvent être utilisées pour définir des règles d’autorisation pour l’élément de vue.

Les règles d’autorisation sont appliquées à toutes les vues associées à l’objet donné. Les éléments de vue doivent avoir un nom afin de définir une règle pour eux.
La règle permet également de définir des conditions côté client (expressions js) pour contrôler la lecture seule / la visibilité des champs / éléments.

Contrairement aux règles de permission des objets, les règles de permission d’affichage suivent la stratégie Accorder tout → Refuser sélectivement.

2 « J'aime »

Merci beaucoup PakMax

Merci à tous, je reviens vers vous rapidement.

Bonjour PAKMAX,
Serait-il possible d’avoir votre aide pour installer axelor avec le code source?

Bonjour,
Vous devriez trouver des réponses dans le lien ci-après :
Guide d’installation

Mais attention
La dernière version d’AOS 7 nécessite de mettre à niveau les couches techniques et de respecter tous les prérequis suivants :

  • JAVA 11 est désormais le minimum requis pour créer et exécuter l’application.
  • Tomcat 9 : Apache Tomcat version 8.5 n’est plus pris en charge.
  • PostgreSQL 12 minimum est désormais requis.
  • Gradle 7

Cordialement,