* ⇒ v2 : indique une fonctionnalité qui n'est pas indispensable et ne sera pas développé en priorité. Afin de privilégier une déploiement rapide d'une solution fonctionnelle. Nous pourrons reporter ces fonctionnalités dans une version ultérieure.
La rédaction du cahier des charges techniques s’est appuyée sur les ressources documentaires listées ci-dessous.
Nous distinguons 4 types d'utilisateursdes futurs sitesdes SINP régionaux (SILENE et PIFH) :
Pour satisfaire le besoin de l'ensemble des utilisateurs concernant les informations générales sur SILENE et PIFH, nous mettrons en place un système de gestion de contenu (CMS). Le CMS Wordpress permettra de diffuser des informations relatives à SILENE et au PIFH et à leur réseau. Il servira d'aiguillage vers les différents outils disponibles répondant aux besoins des différents types d'utilisateurs. Il offrira aussi la possibilité de diffuser des actualités ou d’accéder à différentes ressources en téléchargement. Par défaut, la charte graphique de ce CMS sera basée sur celle du site actuel silene.eu.
Les utilisateurs de type « grand public » accéderont aux observations restituées dans des mailles 5x5 km, et à la commune, à l'aide de GeoNature-Atlas. Il contiendra au départ peu d'informations complémentaires (photos, audios, descriptions, articles, etc.) mais pourra être enrichi progressivement au cours du temps. Cela sera l'occasion de publier des actualités qui permettront de dynamiser la communauté d'utilisateurs de SILENE.
Pour les utilisateurs « adhérent » ou « pro », c'est GeoNature et son module Synthèse qui fourniront l'accès aux données précises. Mais cet accès passera pour l'utilisateur par une démarche d'inscription, de demande de permissions et de validation par les « administrateurs ».
⇒ v2 : à moyen terme, il lui sera offert la possibilité d'accéder en consultation et modification aux données d'observation qu'il aura pu saisir via GeoNature - module OccTax. Les données saisies par cet outil seront par défaut non publiées tant qu'elles n'ont pas été validées. De même, toute modification d'une observation nécessitera de la valider à nouveau si un des champs principaux a été modifié (qui ? quoi ? quand ? où ?). Afin de simplifier la gestion des données ainsi collectées, il sera proposé de tester un processus de validation à l'aide de GeoNature - module Validation.
Dans GeoNature - module Synthèse l'utilisateur identifié pourra effectuer des recherches à l'aide de nombreux filtres permettant d'afficher, par défaut, au maximum les 50 000 observations les plus récentes correspondant aux critères sélectionnés. Ces observations pourront à tout moment être exportées dans 3 formats universels : GeoJson, CSV et Shapefile. En cas de besoin, le seuil du nombre de données affichables pourra être réévalué, après une série de tests d’ergonomie de l’affichage, afin de fournir aux utilisateurs l’information la plus pertinente possible.
Les « administrateurs » pourront gérer la validation des inscriptions dans UsersHub et les demandes de permissions d'accès dans GeoNature - module Admin. Le référentiel TaxRef sera administrable dans l'outil TaxHub.
Enfin, GeoNature - module Export leur permettra de prédéfinir des fichiers exportables publiquement ou non. Nous passerons par cet intermédiaire pour faire remonter les données au niveau national.
⇒ v2 : à terme ce module permettra l'accès aux données collectées via GeoNature - module OccTax.
Détail des processus et rôles du schéma d’organisation des outils :
⓵. Portail principal de présentation et d’orientation des utilisateurs vers les différents outils ;
⓶. Visualisation des données à la maille et à la commune ;
⓷. Accès via identifiant et mot de passe ;
⓸. Gestion de l’affichage des données ;
⓹. Administration : gestion des inscriptions, groupes, utilisateurs et organismes (création / modification / suppression).
⓺. Intégration du référentiel TaxRef et des taxons ;
⓻. Validation des données ;
⓼. Contrôles de cohérence et de conformité ;
⓽. Saisie de données des données sources - outil de saisie spécifique du PIFH.
⓾. Saisie de données sources - outil de saisie des producteurs et/ou fournisseurs de données, indépendant des SINP régionaux.
Nous lierons le domaine principal silene.eu au CMS afin qu'il soit le portail permettant d'aiguiller les utilisateurs vers les différents outils.
À chaque outil correspondra un sous-domaine de silene.eu.
Les adresses web des sites/outils étant des vitrines du projet, les noms seront choisis de manière à être représentatif des objectifs de l'outil.
Les adresses web se répartiront ainsi :
Le domaine principal biodiversite-auvergne-rhone-alpes (extensions .fr, .com, .net, .org, .eu) a été choisi par le Comité de Pilotage : DREAL, Région, OFB. (L'abréviation aura a été écartée et ce nom de domaine est en cohérence avec l'observatoire régional du climat).
Le domaine "de réserve" observatoire-biodiversite-auvergne-rhone-alpes a été réservé en complément au cas où le domaine biodiversité servirait, à terme, à un projet plus vaste que les seuls observatoires.
Seul le CMS est en cours de mise en place à l'heure actuelle, et aucun sous-domaine n'a été défini pour les outils à venir. A titre d'information, voici les sous-domaines actuellement en place sur le Pôle Invertébrés, auxquels les utilisateurs s'habituent pour certains
L'application GeoNature devant gérer une grande quantité d'observations (plus de 12 millions et plus de 7 millions pour le PIFH), il est envisagé de dédier un serveur à la base de données.
Afin de garder une possibilité d'évolution vis à vis de l'infrastructure, nous prendrons 2 serveurs virtuels. Cela nous permettra de bien répartir la charge entre la base de données et les interfaces web. Nous pourrons avoir une machine performante avec un grande mémoire vive pour la base de données et plus légère pour les interfaces web.
L'offre Public Cloud d'OVH permettant de répondre à ces besoins, nous avons prévu de prendre dans le même datacenter les éléments suivants :
Au niveau du système d'exploitation, nous installerons la distribution conseillée pour GeoNature : Debian 10 (Buster).
Concernant la base de données, Postgresql sera installé en version 11 avec la dernière version de Postgis correspondante.
Concernant le PIFH, l’infrastructure des serveurs se basera sur celui réalisé pour le SINP PACA. En effet, il a été discuté un temps la possibilité de maintenir l'hébergement par l’Université Clermont Auvergne. Mais dans un souci de mutualisation des efforts, il a été décidé de réutiliser la même infra-structure pour les 2 SINP.
Les données présentes dans la base de données PostgreSQL seront stockées sur un volume de type Block Storage. Ce type de stockage voit les données qu’il contient distribuées dans trois réplicas sur des disques physiques distincts. De plus, les informations sont réparties dans des serveurs différents.
Après chaque mise à jour majeure, nous lancerons une sauvegarde de la base à l’aide de l’outil pg_dump. Le fichier de sauvegarde ainsi obtenu sera stocké hors serveur OVH sur un ou plusieurs espaces de stockage physiquement distants.
Par ailleurs, nous pourrons effectuer des snapshots du volume contenant les données. Cela nous permettra de restaurer intégralement l’état de la base de données tel qu’il était avant la mise à jour(en cas de problèmes). Ceci pourra être réalisé à tout instant à l’aide des interfaces web d’administration du Public Cloud mis à notre disposition.
Il nous sera aussi possible de réaliser des sauvegardes automatisées des instances (serveurs virtuels WEB et BDD). Une rotation de ces sauvegardes sur plusieurs jours avec suppression automatique de la plus ancienne pourra éventuellement être mise en place.
Les snapshots de volume et les sauvegardes d’instances sont aussi réalisées dans 3 réplicas.
Étant donnée qu'une partie des utilisateurs n'est pas connue par avance, GeoNature devra fournir un formulaire d'inscription accessible directement par tout nouveau utilisateur depuis la page d'accueil.
Lors de la première consultation de GeoNature par un utilisateur l'accès à ce formulaire sera proposé via un lien présent sur la page de demande d'identification. Cela ouvrira une fenêtre modale incluant le formulaire d'inscription décrit ci-dessous.
Cette inscription préalable permettra à l'utilisateur d'accéder aux différents modules de GeoNature en fonction permissions qui lui ont été affectées par défaut (accès aux données publiques et à ses propres données à leur précision maximale).
Au niveau du module Synthèse, cela permettra l'accès aux données publiques. Les données géo-confidentielles resteront floutées en fonction des paramètres du jeu de données et des permissions de l'utilisateur.
Si l'utilisateur souhaite accéder à des observations avec une géolocalisation précise auxquelles il n’a pas accès par défaut (jeux de données privées «floutés» et/ou des observations sensibles), il pourra effectuer une demande de permissions d'accès spécifique.
Lors de la navigation dans GeoNature – module synthèse, l’utilisateur sera informé (par des figurés spécifiques ou un message d’alerte) de l’existence dans Silene de données sensibles non consultables précisément du fait des restrictions d'accès liées aux permissions utilisateurs. Lors des développements liés à l’inscription de l’utilisateur, nous ferons en sorte de respecter les règles du Règlement Général sur la Protection des Données (RGPD).
Le formulaire comprendra les sections et champs suivant :
datalist
. Si le champ est rempli avec un nom abscent de la base, les champs optionnels suivant devrait être apparaitre.Merci pour votre demande d’inscription. Après validation de l’administrateur, vous pourrez accéder aux observations publiques [=>v2: ainsi qu’à vos propres observations] avec leur précision de géolocalisation maximale. La géolocalisation des autres observations peut être dégradée suite à l’application des règles de géo-confidentialité du SINP. L'accès à ces données avec leur précision maximale nécessite, dans Silene, de compléter un « formulaire de demande d’accès aux données précises » (en savoir plus <insérer lien vers aide formulaire>). L'accord sera formalisé par l’acceptation d'une convention « droit d'accès aux données précises » et donnera lieu à l'attribution d'un accès direct à ces données. La convention engage le titulaire à un bon usage des données et à une alimentation de Silene en retour <insérer lien plateforme de versement données>. Les autorisations d'accès sont gérées par les administrateurs de données s'appuyant sur le Comité d’administrateurs de Silene. Les données et informations qui vous sont fournies dans le cadre de Silene ne sont pas exhaustives et peuvent donc s’avérer insuffisantes pour les besoins spécifiques de votre étude. Une réactualisation de ces données dans le cadre d’inventaires complémentaires est nécessaire.
En cas d'oubli d'identifiant ou mot de passe, l'utilisateur pourra en refaire la demande à l'aide de son email utilisé lors de l'inscription.
Un lien "Identifiant ou mot de passe oublié ?" sera présent la page d'authentification de GeoNature. Un clic dessus ouvrira une fenêtre modale. Celle-ci contiendra :
Une fois le formulaire rempli et lors du clic sur le bouton "Envoyer", une message sur fond bleu s'affichera à l'écran pour indiquer la prise en compte de sa demande. Le message sera "Un email vient de vous être envoyé pour récupérer votre identifiant et/ou renouveler votre mot de passe.".
En cas d'erreur (impossibilité d'envoyer l'email, erreur de saisie, …) le message sera affiché sur fond rouge.
Dans l'email reçu par l'utilisateur, un lien sera présent et permettra à l'utilisateur de retourner sur GeoNature pour y recréer un nouveau mot de passe.
L'interface en question consistera en un formulaire composé de :
Si le formulaire est rempli avec succès le message "Mot de passe modifié avec succès." s'affichera sur fond bleu et l'utilisateur sera redirigé automatiquement sur le formulaire d'authentification.
L'email de demande d'inscription à destination de l'administrateur aura la forme suivante :
Bonjour, Un utilisateur vient d'effectuer une demande de création de compte sur GeoNature "Silene - Expert". Voici les informations de l'utilisateur : Nom : <NOM> Prénom : <Prénom> Identifiant : <identifiant> Email : <email> Informations complémentaires : remarque: <remarque> validate_charte: ['true'] Souhaitez vous : - Accepter cette inscription : <lien-accepter> - Accéder à l'interface de gestion : <lien-vers-interface> Cordialement,
Une fois, l'inscription acceptée par l'administrateur, l'email à destination de l'utilisateur aura la forme suivante :
*** Ceci est un message généré automatiquement *** Bonjour <prénom> <NOM>, Votre inscription à "Silene - Expert" a été acceptée. Vous pouvez dès à présent vous connecter sur http://expert.silene.eu Pour rappel, votre identifiant de connexion est : <identifiant> Nous vous rappelons que cette inscription vous donne accès à la consultation des données publiques versées dans Silene [=>v2: mais également de vos propres données]. L’accès aux autres données nécessite de compléter un « formulaire de demande d‘accès aux données précises » (en savoir plus <insérer lien vers aide formulaire>). L'accord sera formalisé par l’acceptation d'une convention « droit d'accès aux données précises » et donnera lieu à l'attribution d'un accès direct à ces données. La convention engage le titulaire à un bon usage des données et à une alimentation de Silene en retour <insérer lien plateforme de versement données>. Bien cordialement, L'administrateur.
L'email envoyé suite à la demande de réinitialisation de mot de passe aura la forme suivante :
Vous avez oublié votre identifiant / mot de passe. Voici vos informations pour vous connecter : Identifiant : <identifiant> Pour réinitialiser votre mot de passe : <lien-vers-interface-GeoNature>
L'utilisateur doit pouvoir indiquer le type d'observations pour lesquelles il souhaite accéder aux informations de localisation précises. Pour cela, un formulaire sera mis à disposition.
Lorsqu'un utilisateur se connecte à GeoNature, un message de présentation s'affiche. Nous utiliserons cet espace pour indiquer à l'utilisateur comment accéder aux données géo-confidentielles.
Le message pourra avoir la forme suivante : « Si vous souhaitez accéder aux observations géo-confidentielles (jeux de données privées avec niveaux de diffusion, observations sensibles). Vous devez accepter électroniquement une convention ponctuelle à l'aide du formulaire de demande de permissions d'accès aux observations géo-confidentielles . ». Un lien vers le formulaire sera présent sur la dernière phrase.
Il sera aussi possible d'accéder à ce formulaire via une entrée dans le menu "Mon compte/Profil" présent dans l'entête de l'interface de GeoNature.
L'activation/affichage du formulaire de demande de permissions sera lié à un paramètre de configuration qu'il faudra activer. Par défaut, GeoNature sera installé sans cette option.
Le formulaire comprendra les sections et champs suivant :
Veuillez indiquer ci-dessous les zones géographiques pour lesquelles vous souhaitez accéder aux données à leur précision maximale. Merci de préciser également les groupes taxonomiques concernés et le calendrier de votre étude.
Si vous possédez les permissions d’accès aux observations sensibles avec la plus grande précision possible, veuillez cocher la case. Merci de consulter au préalable les règles d’accès à ces données et que vous en possédez <lien vers règles d’accès aux données sensibles>.
Saisir les premières lettre d'une commune, département ou région, sélectionner l'élément qui vous convient dans la liste proposée avec les touches fléchés et valider votre sélection avec la touche Entrée. Si votre entité géographique n'existe pas, vous pouvez indiquer son nom et valider sa prise en compte avec la touche entrée ou le caractère virgule.
ref_geo.l_areas
. Elles seront associées à un type de zonage spécifique.taxonomie.taxref
.Saisir les premières lettre d'un groupe taxonomique, sélectionner l'élément qui vous convient dans la liste proposée avec les touches fléchés et valider votre sélection avec la touche Entrée. Vous pouvez sélectionner plusieurs groupes en poursuivant votre saisie dans ce champ. Si votre groupe n'existe pas, vous pouvez indiquer son nom et valider sa prise en compte avec la touche entrée ou le caractère virgule.
Veuillez indiquer jusqu'à quelle date vous souhaitez accéder aux données précises. Le format est jj/mm/aaaa. Vous pouvez cliquer sur l'icône de calendrier pour ouvrir l'utilitaire de sélection de date. Pour demander un accès permanent laisser ce champ vide.
Veuillez décrire ci-dessous les motivations à l'origine de votre demande.
Veuillez indiquer le nom du commanditaire de l’étude ou l’organisme à l’origine du projet.
Préciser dans le champ description le calendrier, la finalité, l'objet de l’étude scientifique et le cadre réglementaire dans lequel s’inscrit la demande (Étude d'impact, étude d'incidence Natura 2000, étude d'incidence Eau, demande d'autorisation au titre de la loi sur l'eau, demande d'autorisation au titre des ICPE, demande d'autorisation de destruction d'espèces protégées).
<h2>Convention « Droit d'accès ponctuel aux données géoconfidentielles / Silene »</h2> <p><organisation> représenté par <prénom> <NOM> désigné sous le terme « l’utilisateur identifié » s’engage à respecter les termes suivants</p> <h3>Préambule</h3> <p>En Provence-Alpes-Côte d’Azur, Silene est le portail public d’accès aux données naturalistes. Silene informe sur la localisation des espèces de faune et de flore et des habitats naturels ou semi-naturels. Silene est ainsi la plateforme régionale d’occurrence taxon du Système d’Information Nature et Paysage (SINP) en Provence-Alpes-Côte d’Azur.<br/> Le SINP est un programme national, porté par le Ministère chargé de l’Environnement et conçu comme une organisation collaborative pour la production, la gestion, le traitement, la valorisation et la diffusion des données sur la nature et les paysages. Son organisation est décrite dans un protocole national (circulaire du 15 mai 2013 en cours d’actualisation).<br/> En facilitant l’accès à l’information, Silene a pour objectif la connaissance et la conservation du patrimoine naturel régional. C’est un outil public et collectif au service de la prise en compte de la biodiversité, financé et piloté de façon partenariale. Les partenaires approuvent un document commun de référence : la charte Silene.<br/> Les données de Silene sont librement consultables à la précision de la commune ou de la maille. L’accès à l’information plus détaillée est autorisé en réponse à des demandes ponctuelles et motivées, selon les principes validés par le comité de pilotage.<br/> Les données et informations qui sont fournies dans le cadre de Silene ne sont pas exhaustives et nécessitent la consultation d’autres sources, une réactualisation et des inventaires complémentaires dans le cadre de l’expertise.</p> <h3>Article 1. Objet de la Convention</h3> <p>Cette convention établit les droits d’accès aux données précises de Silene pour l’utilisateur identifié signataire de la présente convention, et les engagements liés à cet accord. Elle traite des aspects relatifs à la consultation et l’exportation des données.</p> <h3>Article 2. Droits d’accès</h3> <p>L’accès est accordé à <prenom> <NOM> - <organisation> en tant que sur une demande motivée pour l’objet suivant : <description></p> <p> <NOM> <Prénom> a reçu lors de son inscription un identifiant et un mot de passe personnel lui permettant l’accès au portail Silene et aux données source des occurrences de taxons. Les droits d’accès et les identifiants fournis sont strictement nominatifs et leur utilisation reste sous la responsabilité de « l’utilisateur identifié ». </p> <p>« l’utilisateur identifié » signataire de la présente convention déclare avoir pris connaissance et approuver la charte. Silene met à disposition l'ensemble des données validées contenues dans Silene pour les droits de consultation suivants :</p> <ul> <li>délimitation géographique : <zones-geographiques></li> <li>groupes systématiques : <groupe-taxonomique></li> <li>durée de mise à disposition : <date></li> </ul> <h3>Article 3. Utilisation des données Silene</h3> <p>L’ouverture de droits d’accès pour Silene est strictement subordonnée au respect des conditions suivantes :</p> <ul> <li>ne pas utiliser la donnée Silene pour des buts contraires à la conservation de la nature,</li> <li>respecter strictement la charte Silene notamment l’article spécifique sur les règles liées à la donnée et à sa citation,</li> <li><strong>ne pas céder à un tiers des données dont il ne serait pas propriétaire sans l’accord de Silene</strong>,</li> <li>ne pas diffuser les codes d’accès qui sont nominatifs et sous sa responsabilité,</li> <li>toujours citer la source des données dans toute valorisation de leur exploitation : « Silene – date de consultation - sources (fournisseurs de données) »,</li> <li>apposer systématiquement le logo Silene dans toute production ayant mobilisé des données de Silene</li> </ul> <p>Puisque ces droits d’accès sont accordés dans le cadre d’une étude faisant l’objet d’une commande spécifique d’un maître d’ouvrage, l’utilisateur identifié certifie sur l’honneur être effectivement missionné par le commanditaire, et s’engage à :</p> <ul> <li>n’utiliser les données de Silene que dans le cadre de la mission ayant donné lieu à l’autorisation d’accès de la présente convention</li> <li>fournir les données recueillies dans le cadre de l’étude en s’assurant de l’autorisation du commanditaire de l’étude pour leur mise à disposition dans Silene dans le délai d’un mois suivant l’expiration du droit d’accès, directement aux administrateurs sous forme de tableaux Excel standardisé précisant a minima : nom de l’espèce (latin), nom du découvreur, commune et la géolocalisation précise de l’observation, date de l’observation. Dans la mesure du possible, elles seront complétées sur les champs optionnels proposés. Un formulaire standard de donnée est disponible sur https://silene.eu onglet « Accès aux données »</li> </ul> <p>L’usage des données par l’utilisateur n’engage pas la responsabilité de Silene.</p> <p><b>Résiliation de la convention</b> : La convention est établie pour la durée de mise à disposition précisée en article 2. Elle pourra être reconduite sur la base d’une nouvelle demande motivée. En cas de non-respect des engagements de la présente convention, elle peut être résiliée de façon unilatérale sans préavis.</p>
Lors de toute nouvelle demande, un email sera envoyé aux administrateur. Son contenu aura la forme suivante :
Bonjour, L'utilisateur <Prénom> <NOM> (<organisme>) vient d'effectuer une demande de permissions d'accès à GeoNature : <adresse-web> Voici les permissions demandées : - Accès aux observations privées précises : oui - Accès aux observations sensibles précises : <oui-ou-non> [champ paramétrable selon le SINP régional] Accès limités par : - Zones géographique : <liste-des-zones / voir fichier en pièce-jointe> - Groupes taxonomiques : <liste-des-groupes> - Fin le : <date> Informations complémentaires : - Type d'étude ou de projet : <type> - Description : <description> Souhaitez vous : - accepter cette demande : <lien-accepter> - refuser cette demande : <lien-refuser> - accéder à l'interface de gestion : <lien-vers-interface> Cordialement,
Si la demande est acceptée un email de confirmation sera ensuite envoyé par le compte "admin/ne-pas-repondre@silene.eu" et contiendra un texte de la forme suivante :
*** Ceci est un message généré automatiquement *** Bonjour <Prénom> <NOM>, Votre demande de permissions d'accès à <nom-du-sinp> vient d'être acceptée. Adresse du site : <https://expert.silene.eu> Votre identifiant de connexion : <identifiant> Vos permissions sont valables jusqu’au <date>. Rappel de votre demande : - Accès aux observations privés précises : oui - Accès aux observations sensibles précises : <oui-ou-non> [champ paramétrable selon le SINP régional] Accès limités par : - Zones géographiques : <liste-des-zones> - Groupes taxonomiques : <liste-des-groupes> Votre demande de données concerne des données sensibles, données visées à l'article L. 124-4 §8 du code de l'environnement, dont la consultation ou la communication peut porter atteinte à la protection de l'environnement. Par conséquent, elles sont floutées géographiquement lors de leur diffusion. [Champ paramétrable selon le SINP régional] Pour plus d'information n'hésitez pas à nous contacter, <email-ou-lien-vers-formulaire>. Bien cordialement, L'administrateur.
Si la la demande est refusée un email de confirmation sera ensuite envoyé par le compte "admin/ne-pas-repondre@silene.eu" et contiendra un texte de la forme suivante :
*** Ceci est un message généré automatiquement *** Bonjour <Prénom> <NOM>, Votre demande de permissions d'accès à <nom-du-sinp> vient d'être refusée. Raison du refus : <texte-explicatif> Pour plus d'information n'hésitez pas à nous contacter, <email-ou-lien-vers-formulaire>. Bien cordialement, L'administrateur.
Les 2 formulaires précédents vont fournir des données qui seront ensuite accessibles par les administrateurs dans 2 outils distincts.
Concernant l'inscription, les informations de l'utilisateur seront visible dans UsersHub. Pour les demandes de permissions d'accès, elles seront gérables via le menu "Admin" de GeoNature.
Les demandes d’inscriptions des utilisateurs à GeoNature seront par défaut stockées dans la table utilisateurs.temp_users
, cela correspond à un état en attente de validation d'inscription. L’administrateur en validant l’inscription d’un utilisateur devra l’associer à un groupe : “Pro” ou “Adhérent”.
Ces groupes auront des permissions définies en fonction de la charte.
Les administrateurs de GeoNature seront prévenus de la nouvelle inscription par l'envoi d'un email. Ce dernier contiendra un lien pour accéder directement à l'interface permettant d'accepter/refuser l'inscription.
Cette interface de validation des utilisateurs se trouvera dans UsersHub. Un menu "Demandes de compte" proposera d'accéder à la liste des inscriptions en attente/refusées. Par défaut, un premier onglet affichera un tableau avec la liste des inscriptions en attente. Un second onglet permettra d'accéder au tableau des inscriptions refusées.
La possibilité de renseigner une raison au refus sera proposée à l'administrateur. Cette information sera stockée dans le champ "Commentaire" de l'utilisateur. La date d'acceptation/refus devra aussi être stockée.
Lorsque l'inscription est accepté/refusé un email est envoyé à l'utilisateur pour le prévenir.
Notes techniques : les infos seront stockées dans une table ("temp_users" ⇒ à renommer, si possible) du schéma "utilisateurs" de la base de données.
La gestion des demandes de permissions aura lieu dans l'outil GeoNature et va demander une refonte de l'interface du sous-module "Administration des permissions" présent dans le module "Admin".
Les administrateurs de GeoNature seront prévenus de la nouvelle demande par l'envoi d'un courriel. Ce dernier contiendra un lien pour accéder directement à l'interface permettant d'accepter/refuser la demande.
L'acceptation/refus de la demande de permissions générera un courriel automatique à destination de l'utilisateur.
Cette interface de validation des demandes de permissions se trouvera dans GeoNature, module « Admin ». Un menu « Administration des permissions » proposera 2 menus principaux :
Au niveau de ces interfaces, nous utiliserons les termes suivant :
L'interface de gestion des permissions contiendra un tableau des utilisateurs et groupes intitulé « Permissions des utilisateurs et groupes » avec les champs :
t_roles
.Ce tableau pourra être paginé et filtré. Par défaut, le tableau sera trié par Type avec les groupes en premier, puis le trie s'effectuera sur le champ Nom. Les lignes des groupes auront un fond coloré distinct de celui des utilisateurs.
L'interface de consultation des permissions d'un utilisateur ou groupe contiendra une liste paginée de permissions classées par module. La présentation sera semblable à l'interface du module Métadonnées. Elle aura pour titre « <nom> -Permissions relatives aux modules ». Un bouton « Ajouter une permission » sera présent au dessus de la liste. Cette interface étant chargé dans une nouvelle page, un bouton « Retour » en haut à gauche permettra de revenir sur l'interface précédente. Dans la liste, un clic sur un nom de module permettra de dérouler la liste des permissions qui s'affichera avec les champs suivant :
L'interface de modification/ajout de permissions se basera sur la nouvelle table cor_module_action_object_filter
. L'interface contiendra un assistant fournissant progressivement l'accès à des champs en fonction des choix précédents et des options disponibles dans la table cor_module_action_object_filter
. Les champs seront :
t_actions
) et des ressources disponibles pour ce module tel qu'indiqué dans la table cor_module_action_object_filter
.cor_role_action_filter_module_object
et de retourner à l'interface précédente ("Permissions relatives aux modules").L'interface possédera un titre « Demande de permissions d'accès ». Au dessous, 2 onglets contiendront des tableaux paginés des demandes de permissions d'accès aux données géo-confidentielles :
Les tableaux des 2 onglets contiendront les colonnes communes suivante :
Le tableau des demandes « En attente » contiendra en supplément :
Le tableau des demandes "Traitées" contiendra en supplément les colonnes suivantes:
L'interface de consultation détaillée de la demande, intitulée « Détail demande de permissions - <Prénom> <NOM> (<Organisme>) », affichera l'ensemble des informations saisie par l'utilisateur. Une fois traitée par un administrateur des informations complémentaires pourront y être mentionné (raison du refus).
Si la demande n'a pas encore été traitée une bouton "Définir le statut" sera affichée dans l'entête de l'interface de consultation détaillée. Il permettra d’accéder à un menu avec 2 choix « Accepter » et « Refuser ». Ces menus auront le même fonctionnement que les boutons icônes du tableau des demandes « En attentes ». Si la demande a été traitée, le bouton (nommé "Changer le statut") permettra d'inverser la décision ou de "Placer en attente" la demande. La mise en attente d'une demande comme le refus implique une suppression des permissions associés.
Lors du changement de statut d'une demande un email sera automatiquement envoyé à l'utilisateur pour le prévenir du changement de statut de sa demande.
Les permissions permettant d’accéder aux données géo-confidentielles nécessitent des modifications dans la base de données. À priori, les modifications envisagées sont :
gn_permissions
: t_requests
permettant de stocker les demandes d'accès, les informations liées à la motivation de cette demande (description du projet, type d'étude, durée…) et leur acceptation/refus (date).cor_role_action_filter_module_object
gathering
permettant de cumuler des filtres pour un même droit (Ex. : Accès aux observations sensibles pour le taxon X et la commune Y).end_date
permettant d'indiquer une date de fin au droit. Si NULL pas de fin prévu au droit.id_filter
par id_filter_type
et ajout du champ complémentaire value_filter
. Le champ value_filter
sera type text
et pourra contenir un id, une chaîne ou autre en fonction du type de filtre. Nous créerons autant d’enregistrements que nécessaire pour éviter de devoir stocker plusieurs valeurs dans ce champs. Les valeurs possibles en fonction du type de filtre sont les suivantes :cd_nom
de la table ref_taxonomy.taxref
. La chaine de caractère correspond à une liste de cd_nom
séparés par des virgules.id_area
de la table ref_geo.l_area
; la chaine de caractère à une de id_area
séparés par des virgules ; la géométrie correspond à une zone dessiné depuis une carte ou l'import d'un fichier.t_filters
dû à la modification de la table cor_role_action_filter_module_object
(ajout champ value_filter
). cor_role_action_filter_module_object
et en supprimant la relation avec la table t_filter
.t_actions
(CRUVED)t_objects
est retenue. Elle permettra de stocker les « ressources » des modules sur lesquelles une action (CRUVED) agit. Les « sous-modules » actuellement stockés dans cette table peuvent être considérés comme des ressources du module « Admin » de GeoNature.cor_module_action_object_filter
pour indiquer les actions possibles vis à vis d'un objet pour un module donnée et les types de filtres applicables.cor_object_module
, cor_filter_type_module
. La géo-confidentialités des observations liée aux observations sensibles et au niveau de diffusion des données privées se traduira sur les interfaces de consultation et d'export par un floutage de l'information géographique.
Dans un premier temps, afin de respecter les Chartes des SINP régionaux, tous les jeux de données seront considérés comme privés. Les permissions d’accès attribuées aux utilisateurs permettront alors de définir le niveau de précision géographique accessible.
Ce floutage impacte les types d'interfaces suivant :
Les modules et applications de GeoNature concernés sont :
Dans le cadre de la première version de l'utilisation de GeoNature pour Silene et le PIFH, nous concentrerons nos développements sur le module "Synthèse" qui sera le seul à pouvoir faire apparaitre des informations précises. Nous réaliserons les développements nécessaires sur les modules dans l'ordre de la liste précédente.
: la possibilité d’une représentation différenciée des observations en fonction de leur niveau de précision sera étudiée dans un second temps.
Nous ne tiendrons compte que du cas des observations de type « inventorielles » (voir attribut natureObjetGeo
du standard DEE). Nous ne flouterons que les champs contenant des données géographiques. Les champs textuels comme comment_context
ou comment_description
pouvant contenir des informations complémentaires sur la localisation (ex. lieu-dit) seront diffusés.
Le niveau de sensibilité des observations sera calculé à l’aide des règles de sensibilité définies dans le cadre du SINP régional et intégrées à GeoNature (voir « Calcul automatique sensibilité des données »). Ces règles seront à définir au niveau régional en se basant sur les recommandations du guide technique « Définition et gestion des données sensibles sur la nature dans le cadre du SINP », et devront être validées par le Conseil Scientifique Régional du Patrimoine Naturel.
Les 4 types possibles d'objet géographique correspondant à des niveaux de floutage sont :
Les champs d'une observation présents dans la table synthese
permettent de calculer les géométries correspondantes aux critères de géo-confidentialité.
Le croisement de l'info présente dans le champ the_geom_4326
avec les géométries de la table l_areas
en fonction d'un type d'objet géographique déterminé par les valeurs des champs id_nomenclature_diffusion_level
pour les jeux de données privés (champ id_nomenclature_data_origin
, table gn_meta.t_dataset
) et id_nomenclature_sensitivity
pour les observations sensibles permettra de déterminer la géométrie à utiliser pour chacun des critères.
Ainsi, les développements consisteront principalement à rajouter 2 champs à la table synthese
:
the_geom_4326_diffusion_level
: contiendra l'id d'un objet géographique dont le type est en correspondance avec la valeur du champ id_nomenclature_diffusion_level
the_geom_4326_sensitivity
: contiendra l'id un objet géographique dont le type est en correspondance avec la valeur du champ id_nomenclature_sensitivity
Ces champs seront pré-calculés et un trigger les maintiendra à jour. Ils contiendront un id provenant la table ref_geo.l_areas
. Les informations (dont la géométrie) de la table ref_geo.l_areas
seront ensuite utilisées pour l'affichage dans les différents types d'interface listés ci-dessus. Il sera peut-être nécessaire de rajouter un champ à la table ref_geo.l_areas
qui contiendra la géométrie au format SRID 4326.
Tableau du type d'objet géographique utilisé en fonction des critères de géo-confidentialité (https://github.com/PnX-SI/Nomenclature-api-module/issues/39#issuecomment-773492258):
Type | Sensibilité (id_nomenclature_sensitivity) | Obs. Privée - Niveau de diffusion (id_nomenclature_diffusion_level) |
---|---|---|
Précision max. | 0 ou NULL/vide | 5 ou NULL/vide |
Commune ou Znieff | 1 | 1 ou 0 |
Maille 10x10km (5x5km pour Silene) | 2 | 2 |
Département | 3 | 3 |
Non consultable - Aucune diffusion | 4 | 4 |
Exemple issu du document "Diffusion des données par niveaux de restitution dans GINCO" :
Une donnée ayant une sensibilité de 2 (Maille) et un niveau de diffusion de 3 (Département) sera floutée au département pour un utilisateur sans permissions particulières (c'est le caractère privé qui l'emporte parce qu'il impose un floutage plus important). Par contre si l'utilisateur a le droit de voir les données privées, l'observation sera floutée à la maille. Le critère de sensibilité étant le seul à s'appliquer. Enfin, si l'utilisateur a également le droit de voir les données sensible, l'observation ne sera pas floutée pour lui.
Par défaut, dans le module Synthèse aucune données n'est visible par un utilisateur à part les siennes (s'il en a saisie via le module OccTax). Dans le cadre des SINP, par défaut, nous appliquerons aux utilisateurs le droit pour le module "GeoNature" (l'application dans son ensemble) de voir toutes les données de tous les organismes (CRUVED ⇒ R=3).
Ainsi, dans le cas du module "Synthèse", cela permettra à l'utilisateur d'accéder à toutes les observations non sensibles des jeux de données publiques. Les règles SINP de géo-confidentialités s'appliqueront aux observations :