-
Notifications
You must be signed in to change notification settings - Fork 2
Development roadmap
This is the indicative development roadmap.
-
Analyse globale (entités, principes)
-
Implémentation des entités
-
Implémentation des interfaces des repositories
-
Implémentation des repositories DB-agnostiques
-
Implémentation des repositories pour Sqlite - pas nécessaire
-
Implémentation de EntityRegistrar (DB-agnostique et Sqlite)
-
Création initiale de la DB Security sqlite
-
Module applicatif d'inserts d'initialisation de la DB Security (rôles, groupes, permissions, utilisateurs)
-
Module de calcul des permissions finales d'un utilisateur + test unitaire. Correction oubli. Tags permission_manager, permission_manager_2, user_manager_login.
-
Mise à jour ExtCore 3.1.0
-
Issue #4 : Réalisation des parties manquantes dans le module Security, et de la partie MVC. Scope : page de login, l'authentification, si on est loggué on va sur le dashboard avec un message d'accueil. Se référer à la page d'analyse détaillée Confluence.
- Réaliser notre UserManager (projet Security)
- Réaliser les ViewModel (SignInViewodel), Controller (AcccountController) et vues (SignIn et AccessDenied), voir paragraphe "Eléments MVC" de l'analyse détaillée (page Confluence) qui définissent la vue de login et les actions associées.
- Activation de l'authentification dans l'application via 3 "actions" (cf analyse détaillée)
- Valider le login/logout/accès au dashboard que si loggué. A terminer (mise au carré + ergonomie)
- Faire fonctionner un attribut "Authorize" dans Extension 1
- Implémenter Security.Attributes.Authorize qui ne crashe pas si la policy qu'il référence n'existe pas
- Paramétrer en DB (par un utilitaire TU) la permission "Admin" de "Extension 1" et l'association au role "Admin". vérifier que l'utilisateur "admin" a accès à la page et "user" a "access denied".
-
Issue #9 : Activation des menus selon les permissions propres à chaque extension : utiliser Security.Common.AuthorizeAttribute pour chaque MenuItem et les interpréter dans le Barebone.
-
Issue #11 : outil de versioning (numéro de version + tag git)
-
Issue #8 : Test de la fonctionnalité de migration EF car on va avoir des modifications DB à gérer. Réaliser les fichiers de la migration initiale et des migrations suivantes quand le besoin s'en fait sentir.
-
Analyse complémentaire des modules à réaliser
-
Issue #19 Interface d'administration dans le projet Security.
2e étape
- Réflexion sur l'internationalisation et implémentation
- Issue #7 : Gestion dynamique des extensions. Prévoir une réunion. Réaliser, dans le dashboard, menu Administration>Extensions, une page de gestion des extensions installées (lister, réinitialiser, désactiver, activer). Faire l'analyse détaillée, l'idée est de dire à ExtCore de ne pas charger d'extensions du sous-répertoire, et y stocker les extensions désactivées. Voir https://github.com/ExtCore/ExtCore/issues/44 et l'issue #10 car c'est mieux décrit qu'ici, l'ensemble des choses à faire.