Atualmente, estou encarregado de encontrar uma maneira de implantar serviços WFS para vários clientes. Os serviços podem ser consumidos pelo software GIS de desktop, por exemplo, MapInfo / ArcGIS ou pelas soluções Web GIS.
É possível, para um serviço WFS, definir, por exemplo, nome de usuário / senha ou token a serem repassados para verificação dos direitos de acesso? (segurança de primeira qualidade não é necessária)
Estive procurando na especificação OGC WFS, mas não consigo encontrar nenhuma informação relevante sobre isso.
Respostas:
O WFS não tem segurança como parte do padrão, mas você pode usar o HTTPS sem problemas. A especificação de implementação do OpenGIS Web Feature Service (WFS) (04-094) [s. 6.3.4] diz:
Portanto, essencialmente depende inteiramente de você implementar qualquer funcionalidade HTTPS. Mapserver pode lidar com HTTPS, tanto quanto eu posso dizer , mas eu nunca tentei. Na verdade, eu estaria muito interessado em ver o que você cria.
fonte
Se você deseja gerenciar o acesso a esse serviço sem obstrução, por meio de uma solução de logon único, você pode implementar o seguinte. Atualmente, não há serviços de código aberto que implementem esse tipo de solução de segurança.
A primeira parte, é um serviço da web que atua como mediador entre o WFS e o usuário. Esse serviço da web gerenciará o acesso do usuário às camadas WFS e executará as verificações cruzadas necessárias com um controle de acesso Domínio Ativo ou Autenticação Kerberos. Este serviço transmitirá ao servidor WFS os pedidos autenticados e permitidos. Este é um serviço da web Marshaling.
A segunda parte é impor ao servidor WFS que apenas confie nas solicitações do Marshaling Service. Esse é um recurso do servidor da web que limita os IPs dos quais ele aceita conexões / solicitações.
Existem serviços de Marshaling disponíveis para venda. Eu escrevi pessoalmente para proteger uma instância do GeoServer para que ela pudesse se integrar a uma loja Microsoft muito grande. É permitido atribuir usuários a grupos e gerenciar o acesso a conjuntos de dados através do serviço Marshaling.
Garantido para ser seguro e não afetar o desempenho da comunicação.
Se você desejar diagramas dessa infraestrutura para um entendimento mais claro ou os nomes de alguns fornecedores, entre em contato (email). Eu não sou afiliado de forma alguma com fornecedores, apenas sei seus nomes. Eu prefiro escrever o meu próprio;)
Este pode ser um bom projeto de código aberto :) :)
fonte