Come proteggere i servizi WFS?


13

Al momento sono incaricato di trovare un modo per distribuire i servizi WFS a numerosi clienti. I servizi potrebbero essere utilizzati da entrambi i software desktop GIS, ad esempio MapInfo / ArcGIS o soluzioni Web GIS.

È possibile, per un servizio WFS, definire ad esempio nome utente / password o token da trasmettere per la verifica dei diritti di accesso? (non è necessaria la massima sicurezza)

Ho cercato nelle specifiche WFS OGC, ma non riesco a trovare alcuna informazione rilevante al riguardo.


1
Deve essere impostato a livello di server / dominio. Un proxy inverso può anche essere utilizzato per proteggere server e servizi importanti - en.wikipedia.org/wiki/Reverse_proxy
Mapperz

Vedi anche le risposte qui: gis.stackexchange.com/questions/5686/…
mwalker

Risposte:


11

WFS non ha la sicurezza come parte dello standard, ma è possibile utilizzare HTTPS senza problemi. La specifica di implementazione di OpenGIS Web Feature Service (WFS) (04-094) [s. 6.3.4] dice:

L'uso di HTTPS non influisce sulla descrizione delle richieste e delle risposte descritte in questa specifica, ma può richiedere ulteriori azioni da intraprendere sia sul client che sul servizio al fine di avviare la comunicazione sicura.

Quindi, in pratica, dipende interamente da te implementare qualsiasi funzionalità HTTPS. Mapserver è in grado di gestire HTTPS per quanto ne so , ma non l'ho mai provato. In effetti sarei molto interessato a vedere cosa ti viene in mente.


Grazie per la tua risposta MerseyViking. Tornerò e posterò un aggiornamento con i miei risultati.
user2847

7

Se desideri gestire l'accesso a questo servizio in modo discreto, tramite un'unica soluzione di accesso puoi implementare quanto segue. Attualmente non ci sono servizi open source che implementano questo tipo di soluzione di sicurezza.

La prima parte è un servizio Web che funge da mediatore tra WFS e l'utente. Questo servizio Web gestirà l'accesso dell'utente ai livelli WFS ed eseguirà i controlli incrociati necessari con un controllo di accesso di Active Domain o Kerberos Authentication. Questo servizio passerà al server WFS le richieste autenticate e consentite. Questo è un servizio web di marshalling.

La seconda parte è imporre al server WFS di fidarsi solo delle richieste del servizio di marshalling. Questa è una funzione del server Web che limita gli IP da cui accetterà connessioni / richieste.

Ci sono servizi di marshalling in vendita. Personalmente ho scritto il mio per proteggere un'istanza di GeoServer in modo che potesse integrarsi in un negozio Microsoft molto grande. È consentito assegnare utenti a gruppi e gestire l'accesso ai set di dati tramite il servizio di marshalling.

Garantito per essere sicuro e non influire sulle prestazioni della comunicazione.

Se vuoi diagrammi di questa infrastruttura per una comprensione più chiara o i nomi di alcuni fornitori fammelo sapere (e-mail). Non sono affiliato in alcun modo con i venditori, conosco solo i loro nomi. Preferisco scrivere il mio;)

Questo potrebbe essere un buon progetto Open source :) :)


sono assolutamente d'accordo, ma come nel 2018, a nessuno importava :(
Ilya Yevlampiev il

l'unica soluzione possibile è proteggere il servlet dal server gwt-openlayers fornito con gwt-openlayers e fornire come autenticazione di base sicura dal servlet al wfs-t (ma niente oauth e altre buone [pratiche dal mondo del cloud di primavera dockerizzato)
Ilya Yevlampiev il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.