Implémentation de la gestion des droits (Web ACL) sur SemApps
Published on March 26, 2021 by Guillaume Rouyer
En résumé
La gestion des droits va permettre aux utilisateurs de SemApps de paramétrer le partage de leurs données, avec la possibilité de donner des droits d'accès en écriture et/ou en lecture
à tous les utilisateurs, seulement aux utilisateurs connectés, ou bien à des individus / groupes en particulier.
L'objectif était de customiser Fuseki pour qu'il prenne en compte les droits ACL en lecture et en écriture, et de créer un service Moleculer qui s'occupe d'ajouter et supprimer les droits, en fonction des régles métiers.
Le chantier a été brillamment réalisé par Niko & Seb en un temps record !
à tous les utilisateurs, seulement aux utilisateurs connectés, ou bien à des individus / groupes en particulier.
L'objectif était de customiser Fuseki pour qu'il prenne en compte les droits ACL en lecture et en écriture, et de créer un service Moleculer qui s'occupe d'ajouter et supprimer les droits, en fonction des régles métiers.
Le chantier a été brillamment réalisé par Niko & Seb en un temps record !
Description des actions réalisées
Fuseki
- Prendre en compte les droits ACL en lecture et en écriture #569
- Ne pas retourner les résultats du graph avec les webacl #570
- Gérer correctement les erreurs de permission #574
- Configurer les inférences et tester les groupes utilisateurs définis dans le graphe par défaut #590
Moleculer (préparation) - pas inclus dans le travail de Niko
- Ajouter un WebID au package sparql-endpoint #417
- Pouvoir définir des configs pour chaque container #317
- Pouvoir insérer des triples dans un graph #418
- Proposer un container LDP racine #429
- Check that all calls to triplestore have a webId (URI or anon) #592
Moleculer (implémentation)
- Connaître les droits ACL d'une ressource ou d'un container #571
- Modifier les droits ACL d'une ressource ou d'un container #572
- Attribuer les droits à la création d'une ressource #573
- Supprimer les droits ACL lorsqu'une ressource est supprimée #605
- Gérer des groupes ACL #575
- SPARQL injection. Verifier les strings qui sont inserées dans les requests SPARQL #620