{"action":"opened","issue":{"url":"https://api.github.com/repos/PnX-SI/GeoPaysages/issues/1","repository_url":"https://api.github.com/repos/PnX-SI/GeoPaysages","labels_url":"https://api.github.com/repos/PnX-SI/GeoPaysages/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/PnX-SI/GeoPaysages/issues/1/comments","events_url":"https://api.github.com/repos/PnX-SI/GeoPaysages/issues/1/events","html_url":"https://github.com/PnX-SI/GeoPaysages/issues/1","id":368629853,"node_id":"MDU6SXNzdWUzNjg2Mjk4NTM=","number":1,"title":"Gestion des utilisateurs avec UsersHub","user":{"login":"camillemonchicourt","id":4418840,"node_id":"MDQ6VXNlcjQ0MTg4NDA=","avatar_url":"https://avatars0.githubusercontent.com/u/4418840?v=4","gravatar_id":"","url":"https://api.github.com/users/camillemonchicourt","html_url":"https://github.com/camillemonchicourt","followers_url":"https://api.github.com/users/camillemonchicourt/followers","following_url":"https://api.github.com/users/camillemonchicourt/following{/other_user}","gists_url":"https://api.github.com/users/camillemonchicourt/gists{/gist_id}","starred_url":"https://api.github.com/users/camillemonchicourt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camillemonchicourt/subscriptions","organizations_url":"https://api.github.com/users/camillemonchicourt/orgs","repos_url":"https://api.github.com/users/camillemonchicourt/repos","events_url":"https://api.github.com/users/camillemonchicourt/events{/privacy}","received_events_url":"https://api.github.com/users/camillemonchicourt/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-10-10T11:57:00Z","updated_at":"2018-10-10T11:57:00Z","closed_at":null,"author_association":"MEMBER","body":"L'application UsersHub (https://github.com/PnEcrins/UsersHub) permet d'administrer une schéma PG ``utilisateurs`` regroupant les utilisateurs, les groupes d'utilisateur, leurs droits, les listes d'utilisateurs, les différentes applications...\r\n\r\nCe schéma peut être répliqué ou accédé par des BDD tiers pour ne pas avoir à gérer des comptes utilisateurs dans chacunes de nos applications mais les gérer de manière centralisées. \r\n\r\nPour utiliser facilement l'authentification dans une application Flask, un sous-module a été créé : https://github.com/PnX-SI/UsersHub-authentification-module.\r\n\r\nIl peut-être installé automatiquement lors de l'installation de l'application et on bénéficie directement dans l'application de toutes ses routes. Exemple : https://github.com/PnX-SI/GeoNature/blob/master/backend/requirements.txt#L13\r\n\r\nDans le CCTP (http://geonature.fr/documents/autres/geopaysages/2017-11-13-CDC-OPPV-PNV.pdf), il est indiqué une table des utilisateurs de cette manière : \r\n\r\n> t_utilisateur = table de gestion des profils et des utilisateur du back-office et des auteurs de photo\r\n>  id_role = identifiant unique de l'utilisateur\r\n>  id_right = niveau de droits de l'utilisateur (1 à 6, 6 étant super-administrateur. Le libellé des valeurs\r\n> sera fourni) => Les valeurs de ce champ seront utilisées pour définir les droits des utilisateurs sur les\r\n> fonctionnalités du back-office.\r\n>  author_photo = auteur de photo (oui/non)\r\n>  id_application = identifiant de l'application OPP défini dans UsersHub\r\n>  name = nom de l'utilisateur\r\n>  first_name = prénom de l'utilisateur\r\n>  organization = structure de rattachement de l'utilisateur\r\n>  mail = e-mail de l'utilisateur\r\n>  path_author_photo = chemin de la photo de l'auteur de photo des paysages\r\n\r\nCela comprend quelques incohérences avec le schéma ``utilisateurs`` de UsersHub qui se base sur une table ``t_roles`` regroupant utilisateurs et groupes. Il y a aussi des vues (et leurs routes) qui permettent de récupérer les droits d'un utilisateur en fonction de ses éventuelles groupes et par application.\r\n\r\nEn effet dans le CCTP, si on utilise UsersHub, alors il est plutôt prévu que l'application n'utilise pas directement le schéma ``utilisateur`` mais plutôt l'utilise pour remplir la table ``t_utilisateur``.\r\n\r\nA voir ce qui est le plus pertinent. \r\n\r\nDans tous les cas, il est indiqué dans le CCTP des valeurs en dur de ``utilisateurs.cor_role_menu.id_menu = 100``. Il est important que celles-ci soient configurables pour permettre de s'adapter à différents cas."}}
{"actor":{"display_login":"camillemonchicourt"}}