PDND QGIS Client è un plugin QGIS che permette di:
- configurare connessioni PDND tramite file JSON
- generare automaticamente JWT e token PDND
- interrogare API OAS3
- estrarre endpoint WMS
- estrarre endpoint GeoJSON
- caricare layer WMS e GeoJSON protetti direttamente in QGIS
È pensato per enti pubblici, ricercatori e sviluppatori che devono integrare servizi geospaziali protetti tramite la Piattaforma Digitale Nazionale Dati (PDND).
Questo plugin include e utilizza in riuso il client Python PDND sviluppato dallo stesso ente (ISPRA):
| Libreria | Repository | Descrizione |
|---|---|---|
pdnd-python-client |
isprambiente/pdnd-python-client | Client Python ISPRA per autenticazione PDND (JWT + token) — riuso interno |
- Gestione connessioni PDND (clientId, privateKey, kid, apiUrl)
- Generazione JWT + richiesta token PDND
- Parsing automatico del documento OAS3
- Individuazione degli endpoint WMS e GeoJSON
- Caricamento dei layer nel progetto QGIS
- Messaggi colorati tramite QGIS MessageBar
- Gestione errori PDND (token, API, OAS3)
- Compatibile con QGIS LTR 3.44+
| Pannello PDND | Menu contestuale |
|---|---|
![]() |
![]() |
| Nuova connessione | Modifica connessione |
|---|---|
![]() |
![]() |
| Importa configurazione | Layer caricati in QGIS |
|---|---|
![]() |
![]() |
git clone https://github.com/isprambiente/pdnd-qgis-client.gitWindows
C:\Users\<utente>\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\Linux
~/.local/share/QGIS/QGIS3/profiles/default/python/plugins/MacOS
~/Library/Application Support/QGIS/QGIS3/profiles/default/python/plugins/Apri QGIS
Vai su Plugin → Gestione e installazione dei plugin...
Cerca PDND QGIS Client
Seleziona Abilita plugin
Apri il pannello PDND: Browser → PDND
Clicca su Nuova connessione
Inserisci i parametri:
- Nome connessione: nome descrittivo
- clientId: ID del tuo client PDND
- privateKey: percorso del file JSON
- kid: ID della chiave
- apiUrl: URL API PDND (es. https://pdnd.developers.italia.it/api/v1)
- ambiente: produzione | collaudo | attestazione
Il file JSON deve contenere la configurazione nel formato richiesto da PDND:
{
"<enviroment>": {
"clientId": "…",
"privateKey": "…",
"kid": "…",
"apiUrl": "https://api.pdnd/.../oas",
"debug": false,
"pretty": false,
"cache": false
}
}
Questo repository è conforme ai requisiti di PublicCode per il riuso nel settore pubblico italiano.
Questo progetto è rilasciato con licenza MIT.
Vedi il file LICENSE per i dettagli completi.
Pull request e segnalazioni sono benvenute. Apri una issue o una PR nel repository GitHub.





