View
209
Download
2
Category
Preview:
Citation preview
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 1
PCS5716 - Segurança da Informação:
Políticas, Defesas e Sistemas
Tecnologias para Imposição de Politicas
(Policy Enforcement) de Segurança
para Serviços Web Geoespaciais
Wilian França Costa Professor Responsável: Wilson Ruggiero
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 2
Conteúdo
• Estrutura da apresentação 1. Introdução
2. O que são Serviços Web Geopespaciais
3. XACML e GeoXACML: Controle de acesso baseados em papéis, regras e reescrita.
4. Implementação:
Web Security Service (WSS) 52° North
5. Estudo de Caso: Segurança em uma Infraestrutura de Serviços Geoespaciais para Agricultura de Precisão
6. Considerações e Conclusão
Referências
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 3
1. Introdução
– Em uma Infraestrutura Orientada a Serviços o
acesso autorizado ao recurso é um aspecto
importante para a utilização devida dos dados
disponíveis ou inseridos.
– Em Serviços Web em que a informação
geográfica é utilizada, a segurança também deve
possuir definições específicas a este tipo de dado.
– Aspectos comerciais e políticos demandam de
requisitos de proteção a informação (alguns
países possuem leis específicas de acesso a dados
geográficos que independem de aspectos
comerciais).
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 4
1. Introdução
Assim, é necessário a definição de padrões
que possam ser aplicados para a imposição
(enforcement) de politicas de controle de
acesso a infra estruturas de informações
geoespaciais, considerando todos os aspectos
relevantes a este tipo de dado.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 5
2. O que são Serviços Web Geopespaciais
OGC Web Services (OWS)
– Especificação definida utilizando padrões de
Internet não-proprietários, a saber: World Wide
Web (WWW) sobre o protocolo HTTP, Uniform
Resource Locators (URLs), definição de tipos
Multipurpose Internet Mail Extensions (MIME) e
Extensible Markup Language (XML).
– Padrões de Serviços:
» WMS (mapas),
» WFS (features – vetores, poligonos, pontos)
» WCS (raster: imagens – tiff, jpeg, etc)
» WPS (Serviços de Geoprocessamento)
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 6
2. O que são Serviços Web Geopespaciais
– Sensor Web Enablement (SWE)
» Iniciativa da Open Geoespacial Consortiun (OGC)
» Interfaces interoperáveis e codificação de metadados
» Integração com dados de redes heterogêneas de
sensores em tempo real em uma infraestrutura de
informação.
» Padrões de Serviços:
– SOS (Serviços para Observação de Sensores)
– SPS (Programação e configuração)
– SES (Assinaturas de eventos e alertas)
» Padrões atuais SWE para metadados
– Observation & Measurements
– SensorML
– SWE Common
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 7
2. O que são Serviços Web Geopespaciais
OGC Web Services (OWS) e OCG- SWE
– Interface comum de funções (GetCapabilities,
GetResourceByID)
– Padrões definidos para implementações RESTful
e SOAP.
– Implementações de serviços inicialmente
definidos para o padrão RESTFul.
– Implementações em SOAP são mais recentes.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 8
3. XACML e GeoXACML: Controle de
acesso baseados em papéis, regras e reescrita.
XACML é um padrão OASIS definido como uma linguagem
para descrição tanto de politicas de segurança quanto de decisão
de controle de acesso baseado em requisições/resposta escritas
em XML.
– A linguagem para definição de políticas é utilizada para descrever os
requisitos gerais de controle de acesso.
– A linguagem de requisições/respostas é utilizada para consultar quais os
recursos estão acessíveis. São retornados um dos quatro valores: Permit,
Deny, Intermediate (Ex.: quando um erro por falta de parâmetro é
informado) ou Not Applicable (o serviço não pode responder a requisição)
– Dividido em componentes com responsabilidades diferentes para cada
aspecto envolvendo as politicas de segurança, sendo os principais:
» Policy Enforcement Point (PEP) – Obtém a requisição e a envia para o PDP.
» Policy Decision Point (PDP) – Verifica a existência uma politica que se aplique a
requisição
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 9
3. XACML e GeoXACML: Controle de
acesso baseados em papéis, regras e reescrita.
Geospatial eXtensible Access Control
Markup Language (GeoXACML)
– Extensão da XACML com suporte a declarações
e enforcement de restrições de acesso a
informações geográficas.
– São definidos para o GeoXACML: » Valores para atributos geometricos.
» Funções de teste para relações topológicas entre geometrias.
» Open GIS Web Service e designadores específicos para atributos
CRS (Datum).
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 10
3. XACML e GeoXACML: Controle de
acesso baseados em papéis, regras e reescrita.
PAP Policy Administration Point
PDP Policy Decision Point
PEP Policy Enforcement Point
PIP Policy Information Point
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 11
3. XACML e GeoXACML: Controle de
acesso baseados em papéis, regras e reescrita.
• São primariamente um sistema ABAC (Attribute Based
Access Control) no qual atributos associados a usuários
/ações/recursos são entradas do PDP.
• Implementam os modelos RBAC0 e RBAC1 (Role-
Based Access Control) definidos pelo NIST como
uma especialização do ABAC. • RBAC0 é o modelo base, definido através de usuários,
papéis e permissões.
• RBAC1 incluí as definições de RBAC0 e incorpora
hierarquias como relação de ordem parcial entre papéis.
http://docs.oasis-open.org/xacml/3.0/xacml-3.0-rbac-v1-spec-cd-03-en.html
http://www.opengeospatial.org/standards/geoxacml
http://csrc.nist.gov/groups/SNS/rbac/faq.html
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 12
3. XACML e GeoXACML: Controle de
acesso baseados em papéis, regras e reescrita.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 13
4. Implementação:
Web Security Service (WSS) 52° North
O WSS faz parte dos projetos desenvovidos
pela comunidade Security & Geo-Rights
Management
[http://52north.org/communities/security/index.html]
– Esta comunidade tem por objetivo prover
protótipos e softwares para utilização em
infraestruturas compostas de serviços e
dados geoespaciais.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 14
4. Implementação:
Web Security Service (WSS) 52° North
– É parte de uma infraestrutura de segurança
composta pelos serviços:
» WAS (Web Authentication Service): Responsável
pela autenticação de usuários e retorno de tickets
SAML.
» WSS (Web Security Service): Restringe acesso aos
Serviços Web OGC.
» WSC.Web (Web Security Client Web: Integração com
Portal para acesso a serviços protegidos) e
WSC.Desktop (Cliente para aplicações Desktop)
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 15
4. Implementação:
Web Security Service (WSS) 52° North
O WSS é um Serviço Web criado para enforcement de
políticas de acesso a serviços OGC. A validação do
acesso é feita através de:
– Tickets enviados em Security Assertion Markup
Language (SAML) – (padrão aberto para troca de
informações de autenticação e autorização) enviados por
uma aplicação autenticadora externa.
» Ex.: Serviço WAS 52° North
[http://52north.org/communities/security/was/2.0/index.html]
– Via HTTP Basic Authentication.
– Protocolo WSS (proprietário) via WSC.
– Sem autenticação (usuário anônimo)
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 16
4. Implementação:
Web Security Service (WSS) 52° North
Fonte: http://52north.org/communities/security/wss/2.2/index.html
Cada serviço OGC possui seu
próprio interceptador implementado
(WMS, WFS, SOS, WPS) http://52north.org/communities/security/api/2.0/interceptors.html
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 17
4. Implementação:
Web Security Service (WSS) 52° North
Arquitetura Básica 52N WSS
Politicas podem ser especificadas em: • 52n-proprietary Simple Permissions XML format (aqui utilizado como exemplo)
• XACML files using the XACML 1.0/1.1 format.
• dedicated Policy Decision Service (PDP) that supports the XACML 1.0/1.1
Context "protocol" over SOAP.
Fonte: http://52north.org/communities/security/wss/2.2/index.html
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 18
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
Arquitetura de referência para
um sistema de informação baseado
em serviços para a integração de
dados obtidos a partir de RSSF
especificada para o Projeto
FINEP/MCT PROSENSAP
desenvolvido pelo Laboratório de
Automação Agrícola da Poli-USP
em parceria com o Laboratório de
Agricultura de Precisão da
ESALQ-USP e Jacto Máquinas
Agrícolas.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 19
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
Servidor WSS
– http://10.0.10.1:8080/wss
Serviços a serem protegidos via WSS
– manga_wms:
http://10.0.10.2:8080/geoserver/wms
– sos_eko:
http://10.0.10.3:8080/52nSOSv3_WAR/sos
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 20
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
10.0.10.2
10.0.10.3
http://10.0.10.1:8080/wss/site/manage.html
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 21
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
Testes de acesso:
manga_wms: – http://serverwss.dominio.br:8080/wss/service/manga_wms/httpauth?SERVICE=
WMS&REQUEST=GetCapabilities
– http://serverwss.dominio.br:8080/wss/service/manga_wms/noauth?SERVICE=W
MS&REQUEST=GetCapabilities
sos_eko: – http://serverwss.dominio.br:8080/wss/service/sos_eko/httpauth?SERVICE=SOS&
REQUEST=GetCapabilities
– http://serverwss.dominio.br:8080/wss/service/sos_eko/noauth?SERVICE=SOS&R
EQUEST=GetCapabilities
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 22
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
Testes de acesso:
Usuários e Papéis criados:
Usuário: wilian
Papel: admin
Usuário: allan
Papel: main (mantenedor)
Usuário: guest
Papel: guest (usuário padrão utilizado pelo acesso noauth)
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 23
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
Testes de acesso:
Direitos de acesso:
wilian: sem restrição de acesso
allan: somente acesso a layers começando pela palavra agroportal.
executa apenas as operações: GetMap, GetFeatureInfo e GetCapabilities
guest:
Somente layers começando com a palavra topp.
executa apenas as operações: GetMap, GetFeatureInfo e Get Capabilities
Com restrição de visualizar dados apenas da região delimitada pelos
pontos (-74.0130,40.7070,-74.0097,40.7100) EPSG:4326 (WGS84).
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 24
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
users.xml:
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 25
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
permissions.xml:
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 26
5. Estudo de Caso: Segurança em uma
Infraestrutura de Serviços Geoespaciais
para Agricultura de Precisão
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 27
6. Considerações e Conclusão
Considerações As implementações das especificações ainda encontram-se em versões
beta, portanto ainda possuem alguns problemas.
A documentação ainda é um pouco incompleta e são necessários tutoriais,
principalmente sobre especificação de políticas em GeoXACML.
Na versão utilizada para este teste, o servidor WSS necessitava ser
reiniciado para toda e qualquer modificação nas definições de usuários
(user.xml) e politicas de acesso (permissions.xml)
A aplicação WSC.Web não conseguiu autenticar no Serviço WSS.
As aplicações Cliente WMS e WFS uDig e QuantumGIS necessitam
serem reiniciadas para se efetuar o acesso aos serviços com usuários
diferentes.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 28
6. Considerações e Conclusão
Conclusão
Os serviços desenvolvidos para gerenciamento de políticas de
segurança desenvolvidos pela comunidade 52North fornecem
uma boa a solução para proteção básica de serviços Web
OGC.
A adoção destas ferramentas em uma infraestrutura de
serviços Web baseada em portais só é possível com
desenvolvimento específico pois devido a características de
implementação estas soluções precisam ser adaptadas para
funcionarem com inserção dinâmica de usuários, papéis e
políticas.
PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 29
Referências
RISSANEN E. Xacml v3.0 core and hierarchical role based access control (rbac)
profile version 1.0. Oasis committee specification, Organization for the Advancement
of Structured Information Standards (OASIS), August 2010.
HERRMANN J. AND MATHEUS A. Geospatial extensible access control markup
language (geoxacml), version 3.0. Ogc implementation standard, document stage:
Working draft, Open Geospatial Consortium (OGC), Oct 2011.
HERRMANN J. “Administration of (Geo)XACML policies for spatial data
infrastructures”, in Proceedings of the 4th ACM SIGSPATIAL International
Workshop on Security and Privacy in GIS and LBS, New York, NY, USA, 2011, p.
53–59.
OGC. “OGC Reference Model (ORM) ”. [Online]. Available:
http://www.opengeospatial.org/standards/orm. [Accessed: 15-maio-2012].
52NORTH. “52°North WSS User Guide”. [Online]. Available:
http://52north.org/communities/security/general/user_guide_intro.html. [Accessed:
28-ago-2012].
________ “52°North Security & GeoRM Community”. [Online]. Available:
http://52north.org/communities/security/index.html. [Accessed: 28-ago-2012].
Recommended