Pages: 1
- Sujet précédent - QGIS 3.22: Authentification QGIS et base Postgres/Postgis - Sujet suivant
#1 Wed 21 February 2024 10:26
- EMI_BDD
- Juste Inscrit !
- Date d'inscription: 12 Sep 2022
- Messages: 7
QGIS 3.22: Authentification QGIS et base Postgres/Postgis
Bonjour,
je rencontre un problème relatif à l'authentification d'un projet dont les données sont stockées dans Postgres.
de manière générale mes données sont stockées dans une base de données Postgres. Mes utilisateurs ont accès à la base en lecture avec un profil utilisateur individuel (connecté à l'Active Directory de la structure) liés à un groupe lecteur.
j'ai déployé des projets avec mon profil Postgres dans lequel j'ai déployé des données issues de ma base Postgres. Dans le fichier .qgs du projet, mes identifiants et mot de passes sont inscrits en clair (je sais c'est très mauvais d'un point de vue sécu). Mes utilisateurs ont bien les droits de lecture sur ces données et peuvent afficher les données.
Mon souci se situe à deux niveaux.
Premièrement, à l'ouverture du projet, la fenêtre d'authentification s'ouvre avec mes paramètres de connexion. l'utilisateur est obligé de réécrire les siens. Y aurait il un moyen via la gestion des authentifications ou les paramètres du projet de faire en sorte que l'interface de connexion n'affiche rien ou affiche par défaut les paramètres de connexion de l'utilisateur? Voire, soyons fou, existe-t-il un moyen d'enregistrer les paramètres afin que l'utilisateur se connecte sans interaction ?
Deuxièmement, lors du lancement du projet, la fenêtre authentification s'ouvrent au moins 3 fois imposant à l'utilisateur de réécrire ses paramètres autant de fois. quelqu'un a t il une idée sur la source de cette demande multiple d'authentification ? Je précise que les données proviennent toutes d'une seule base de données. précision numéro deux le module cadastre est appelé dans le projet pour afficher les données cadastrales.
Merci par avance pour vos retours et vos idées.
Bonne journée a tous.
Hors ligne
#2 Fri 23 February 2024 08:55
- LPlante
- Participant occasionnel
- Date d'inscription: 17 Nov 2021
- Messages: 41
Re: QGIS 3.22: Authentification QGIS et base Postgres/Postgis
Bonjour,
Expérience personnelle qui ressemble à ta situation:
Sur QGIS, dans l’édition de connexion Postgis, tu as enregistré/stocké les identifiants et code de chaque utilisateur dans l'onglet "De base" ou tu les as converti en Configuration?
Dans le cas de la configuration, celle ci fait référence à un ID ( Visible depuis le crayon jaune "modifier la configuration")
Ce même ID d'authentification est utilisé pour l'ouverture des couches, tu le retrouve dans les Propriétés/Général/Sources de ta couche.
Sur l'ordinateur de tes utilisateurs, j'imagine que tu as également fait une connexion Postgis avec leurs codes personnels mais tu remarqueras que l'ID de configuration d’authentification n'est pas le même et ne correspond pas l'ID dans la source de ta couche... D'où l'ouverture fenêtre authentification
Premièrement: modifie et uniformise l'ID de configuration d’authentification ( avec le verrou) de tes utilisateurs par celui de TON projet QGis
Secondo: Reintègre toutes tes couches du projet pour qu'elles ai le même ID d'authentification dans sa source. ( Cause de la fenêtre authentification qui s'ouvrent 3 fois)
Hors ligne
#3 Mon 26 February 2024 17:12
- Michael ALLAIN
- Participant occasionnel
- Lieu: Mont-de-Marsan (40)
- Date d'inscription: 31 Oct 2016
- Messages: 22
Re: QGIS 3.22: Authentification QGIS et base Postgres/Postgis
La solution de LPlante est la même que celle que j'utilise.
Aussi, pour éviter de devoir reimporter toutes les couches du projet (et de refaire les styles ou thèmes par exemple), il est possible d'assigner le nouvel ID unique à toutes les couches.
En enregistrant le projet en format .qgs et en l'ouvrant sur notepad++, il faut remettre cet ID dans chaque requête de table entre les valeurs de sslmode et key :
<Layer provider="postgres" name="***" source="dbname='***' host=*** port=*** sslmode=disable authcfg=nouvelID key='***' srid=2154 type=MultiLineString
Puis il faut rouvrir le projet et le réenregistrer en .qgz si nécessaire.
Hors ligne
Pages: 1
- Sujet précédent - QGIS 3.22: Authentification QGIS et base Postgres/Postgis - Sujet suivant