MIDDLEWARE PARA AUTORIZAO DISTRIBUDA UTILIZANDO XACML Mestre Orientador
MIDDLEWARE PARA AUTORIZAÇÃO DISTRIBUÍDA UTILIZANDO XACML Mestre – Orientador: Paulo Fernando da Silva Orientando: Jailson Volnei dos Santos
ROTEIRO APRESENTAÇÃO �Introdução; �Objetivo; �Fundamentação Teórica; �Desenvolvimento do Middleware; �Resultados e Discussões; �Conclusão; �Extensões;
INTRODUÇÃO � Após a explosão da internet em 1993, uma referência descentralizada que ficou conhecida foram os sistemas distribuídos; � Escalabilidade e abertura X transparência e facilidade; � Camada adicional de software heterogênea; � Atualmente os sistemas distribuídos são muito utilizados em ambientes que necessitam ter escalabilidade, alto desempenho, tolerância a falhas e heterogeneidade;
INTRODUÇÃO �A autorização de acesso e modificação a recursos é estipulada através de políticas de controle de acesso, são um meio de restringir o acesso a objetos protegidos; � Geralmente cada sistema utiliza uma linguagem ou padrão próprio para definição de suas políticas de acesso. . . � XACML;
INTRODUÇÃO � Problemas referentes preocupação sobre a segurança da informação e a autorização relacionada com a alta capacidade de compartilhamento de recursos e escalabilidade dos sistemas distribuídos; � Genericidade do XACML que requer alto conhecimento das funcionalidade e sintaxe. . .
OBJETIVO �O objetivo deste trabalho é o desenvolvimento de um middleware para gerir a autorização distribuída e controle de acesso através de políticas de controle utilizando a norma extensível e genérica definida pela OASIS – XACML.
FUNDAMENTAÇÃO TEÓRICA
MIDDLEWARE � Middleware é uma categoria de produtos ou módulos de software que esconde da aplicação a rede, a comunicação e plataformas; � Abstração do funcionamento, plataforma e tecnologias, evitando o redesenvolvimento; � As primeiras procedurais. . � plataformas utilizavam técnicas Atualmente tem surgido no mercado alternativas não orientadas a objetos. . . � Web Service (WS)
AUTORIZAÇÃO E POLÍTICAS DE CONTROLE DE ACESSO � Autorização ou Controle de acesso; � Políticas de controle de acesso; � Linguagens e padrões para especificação de políticas;
XACML - INTRODUÇÃO � Um padrão que define uma linguagem declarativa (XML), utilizada para a descrição de políticas de controle de acesso e uma linguagem para formular consultas e obter respostas; � O modelo de arquitetura utilizado pelo XACML; � PAP, PIP, PEP e PDP;
XACML - ESTRUTURA
XACML – POLÍTICA XML
TRABALHOS CORRELATOS � Controle de Acesso para Sistemas Distribuídos (SOUZA, 2010); � Sistema Gerenciador de Políticas de Controle de Acesso (LIMA, 2008); � Conformance Checking of Access Control Policies Specified in XACML (HU et al. , 2007).
DESENVOLVIMENTO DO MIDDLEWARE
REQUISITOS PRINCIPAIS �o middleware deverá permitir criar, editar e excluir políticas de controle (RF); � o middleware deve permitir entrada de dados (solicitações de acesso – request) (RF); � o middleware deve possibilitar a designação de resultados (response), a partir de decisões sob as políticas de controle de acesso (RF); � o middleware disponibilizará de uma interface web service para acesso a seus recursos (RF);
ESPECIFICAÇÃO � Caso de Uso – Ator Software Cliente:
ESPECIFICAÇÃO � Diagrama de Classes – Estrutura Central
ESPECIFICAÇÃO � Diagrama de Classes – Manipulação de políticas
ESPECIFICAÇÃO � Diagrama de Classes – Tratamento das requisições e respostas da autorização de acesso e pela análise sob as políticas de controle de acesso.
IMPLEMENTAÇÃO
TECNOLOGIAS E FERRAMENTAS UTILIZADAS � Linguagem de Programação Java para desenvolvimento do Middleware; � Web Service – interface de comunicação entre software cliente e Middleware; � Banco de dados My. SQL 5. 1;
TECNOLOGIAS E FERRAMENTAS UTILIZADAS � Sun. XACML 1. 2 para desenvolvimento do gerenciamento de políticas XACML, pedidos e respostas; � Apache Axis 1. 4 para gerar o WS a partir de uma classe Java, gerar o WSDL, processar e interpretar as mensagens SOAP e para apoiar na criação dos stubs de acesso do cliente.
OPERACIONALIDADE
SOFTWARE CONSUMIDOR DE TESTES � Testar e demonstrar as funcionalidades do middleware;
SOFTWARE CONSUMIDOR DE TESTES � Gerenciador principal das Políticas:
SOFTWARE CONSUMIDOR DE TESTES � Política - Criar ou Alterar
SOFTWARE CONSUMIDOR DE TESTES � Alvos - Criar ou Alterar � Atributos Complementares
SOFTWARE CONSUMIDOR DE TESTES � Regra - Criar ou Alterar
SOFTWARE CONSUMIDOR DE TESTES � Simular Requisição
RESULTADOS E DISCUSSÃO �O trabalho através das aplicações desenvolvidas alcançou os resultados esperados; � Qualquer aplicação pode incorporar os serviços implementados; � Abstração das questões de sintaxe e funcionamento do XACML;
RESULTADOS E DISCUSSÃO � Cadastro e alteração de políticas de controle de maneira simples; � Gerência de políticas de controle de acesso para recursos e sujeitos variados; � Implementação do PIP Policy. Inform. Point. Finder. Module. MDW; – Classe
RESULTADOS E DISCUSSÃO � Quadro comparativo entre o trabalho desenvolvido e os trabalhos correlatos:
CONCLUSÃO
CONCLUSÃO � Os objetivos previstos no trabalho foram alcançados. � Gerência de políticas de controle de acesso, pedidos de acesso e designação respostas de acesso a recursos; �A partir de frameworks e bibliotecas (Apache Axis, Sun. XACML). . .
CONCLUSÃO � Possibilidade acesso; de centralizar as políticas de controle de � Desacoplamento e Heterogeneidade; � Utilização de padrão XACML para especificação de políticas, pedidos e respostas; � Agilidade no desenvolvimento de softwares;
EXTENSÕES Para dar continuidade ao middleware desenvolvido, propõe-se como extensão: � permitir o cadastro e todo o processo de gerência de conjuntos de políticas (Policy. Set) para um dado recurso, sujeito ou ação; � permitir que o middleware incorpore os novos recursos utilizados por versões XACML recentes; � implementar de conflitos; no middleware algoritmos de verificação
EXTENSÕES � alteração das políticas permanecendo a abstração atual em relação ao XML do XACML, porém alterar a implementação fazendo com que a solicitação das regras e alvos das políticas não seja sequencial, mas sim indexada; � possibilitar que uma condição para regra tenha um número dinâmico de expressões lógicas. � implementar interface web para gerenciamento dos repositórios, listagem e manutenção das políticas e seus elementos, responses e requests, permitindo a visualização em árvores para maior legibilidade estrutural.
OBRIGADO!!!
DEMONSTRAÇÃO DA IMPLEMENTAÇÃO
- Slides: 39