Remarque |
---|
Avant de commencer la migration de votre projet, nous vous conseillons de lire la documentation dans l’ordre en suivant les liens de page lorsqu’ils sont indiqués pour ne rien rater. |
...
Notre socle destiné à la gestion des profiles profils que nous trouvions beaucoup trop rigide à l’utilisation, limité dans ses manipulations et exclusif au backoffice.
La notion de groupe SWS, SWB et SWC qui était centrale à la problématique de cloisonnement.
Les variables mélangeant la notion de paramétrage et d’activation. Parfois globale, parfois dans plusieurs groupes.
...
Un utilisateur final ne verra pas de changement. Il aura accès ou non à certains éléments comme avant.
Pour l'administration et le développement, la gestion de l’accessibilité via des autorisations de page et des fonctionnalités sera beaucoup plus flexible et visuel. En voici le détail :
Nous parlons maintenant de permissions et de fonctionnalités.
Les tables concernant les permissions commencent par
sw_data_permission
et les tables concernant les fonctionnalités commencent parsw_data_feature
.Les permissions autorisent un utilisateur ou un device, via des profils, à avoir les capacités de création, suppression, modification et bien plus encore.
Les fonctionnalités ne sont plus mélangées avec de simple variable mais ont maintenant leur propre table avec tous les avantages qui en découle.
Un nouveau paramétrage
Nous proposons de pouvoir manipuler et affecter chaque utilisateur et device indépendamment au sein d’un arbre de profils afin d’en accorder des capacités.
Il sera maintenant possible d’accéder à des fiches détaillant précisément l’accessibilité de chaque utilisateur, device et profil.
La nouvelle structure de profil par héritage permettra d'être extrêmement fin ou au contraire extrêmement générale dans l’affectation des capacités aux profils.
Nous mettons à disposition des modèles permettant d’appliquer rapidement des affectations standard à des utilisateurs ou devices depuis une fiche ou création de compte.
Nouvelles syntaxes, refactorisation du backoffice et du mobile
Globalement, nous ne faisons plus référence aux anciens groupes SWS, SWB, SWC ainsi qu’aux anciennes tables de gestion des profils.
Sur le backoffice, en une seule condition, une capacité sera maintenant vérifiée parallèlement à sa fonctionnalité.
Avant, nous devions appliquer deux conditions pour vérifier un profil et une variable avec beaucoup de chance de se tromper ou de simplement oublier de le faire.feature.authorized.session
ira vérifier l’activation de la fonctionnalité sur le projetcapacity.authorized.session
ira vérifier l’autorisation de la capacité pour l’utilisateur courant ainsi que l’activation de sa fonctionnalité parenteExemple :
feature.authorized.session
avec la valeurFeature.Intervention
vérifie que la fonctionnalité intervention est active sur le projet.capacity.authorized.session
avec la valeurCapacity.Intervention.Read
vérifie que la fonctionnalité intervention est active sur le projet et que l’utilisateur courant possède l’autorisation nécessaire pour cette capacité (L’utilisateur doit être dans un profil associé à cette capacité).
Renommage des variables de session injectées lors du warmup (projectsettings) pour les fonctionnalités et les capacités :
Une fonctionnalité est vérifiable via la variable de session
Feature.NomDeFeature
Une capacité est vérifiable via la variable de session
Capacity.NomDeCapacity
pour l’utilisateur courantCertaines capacités particulières sont vérifiables pour les autres collaborateurs. Il s’agit des capacités Business et Service, vérifiables via les variables de session
BaseuserIDsWithBusinessCapacity
etBaseuserIDsWithServiceCapacity
Refactorisation du script
Project.Settings
sur le backoffice et l’extranet afin d’apporter plus d'homogénéisation et décomplexifier les briques fonctionnels.Sur le mobile
Refactorisation du script d’initialisation permettant d’injecter les mêmes variables d’options qu’auparavant en se basant sur la table de mapping. La nouvelle syntaxe permettra d'apporter plus de souplesse au développement et préparer les futurs changements.
Il est par exemple possible d’utiliserIntervention.Available
comme avant mais aussiFeature.Intervention
avec la nouvelle syntaxe.
Nous conseillons de s’orienter versFeature.MaFeature
Création d’une nouvelle page d’accueil unifiée qui ne tiendra plus compte des anciens groupes.
...