30
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

Apresentação WSS 52North

Embed Size (px)

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].

PCS5716 - Segurança da Informação: Políticas, Defesas e Sistemas 30

OBRIGADO

[email protected]