Implementação do Sistema Single-Sign-On em um Ambiente de Nuvem usando SimpleSAML

Documentos relacionados
Armazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos,

Guia rápido do usuário. Cliente de Web

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

Considerações a serem feitas antes da implantação.

VVS Sistemas (21)

Sistema Gerenciador de Conteúdo OpenCms: um caso de sucesso no CEFET-MG

gladiador INTERNET CONTROLADA

SISTEMAS DISTRIBUÍDOS

Governança de TI. ITIL v.2&3. parte 1

MONTAGEM DE PROCESSO VIRTUAL

Firewall. Alunos: Hélio Cândido Andersson Sales

Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

LINGUAGEM DE BANCO DE DADOS

UM NOVO CONCEITO EM HOSPEDAGEM DE DOMÍNIO

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

Informática - Prof. Frank Mattos

O sistema que completa sua empresa Roteiro de Instalação (rev ) Página 1

Entendendo como funciona o NAT

Política de Utilização da Rede Sem Fio (Wireless)

Atualizaça o do Maker

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Engenharia de Software III

INTRODUÇÃO: 1 - Conectando na sua conta

BlackBerry Mobile Voice System

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Requisitos para a Federação de um serviço web. Serviço Utilizador RCTS Janeiro de 2010

Sistemas Operacionais

BlackBerry Mobile Voice System

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Registro e Acompanhamento de Chamados

Projeto Arquitetural do IEmbedded

ESTUDO DE CASO: IMPLEMENTAÇÃO DE UM SERVIÇO DE PARA O DEPARTAMENTO DE COMPUTAÇÃO

GUIA DE CONFIGURAÇÃO AUTENTICAÇÃO DE REDES WIFI COM CAPTIVE PORTAL

EQUIPE: ANA IZABEL DAYSE FRANÇA JENNIFER MARTINS MARIA VÂNIA RENATA FREIRE SAMARA ARAÚJO

2.0.0.X. Storage Client. TecnoSpeed. Tecnologia da Informação. Manual do Storage Client

ROTEIRO PARA INSTALAÇÃO DO BITVISE, CONFIGURAÇÃO DE CHAVES SSH, DEFINIÇÃO DAS PORTAS PARA OS TÚNEIS SSH E CONFIGURAÇÃO DO THUNDERBIRD

SEGURO DESEMPREGO ON-LINE.

Web Services. Autor: Rômulo Rosa Furtado

Configurando o DDNS Management System

Tutorial de Instalação do CentOS Versão 3.3

TCE-Login. Manual Técnico

VPN entre Unimed Federação do Paraná e Singulares do Paraná. Gustavo Kochan Nunes dos Santos. Curso de Especialização em Redes e Segurança de Sistemas

MANUAL DE INSTALAÇÂO E OPERAÇÃO DO SOFTWARE

Padrão ix. Manual de Instalação do Q-Ware Server Versão

Guia do Administrador de Licenças de Usuários Autorizados do IBM SPSS Modeler

Manual Replicação Manual VPN

Assinatura Digital: problema

Sistemas de Produtividade

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Na tela dele, clique no sinal de + ao lado do nome do seu computador, para expandi-lo. A seguir, expanda também o item "Sites da web".

Manual do PolicyKit-kde. Daniel Nicoletti Tradução: Luiz Fernando Ranghetti

Nettion Security & Net View. Mais que um software, gestão em Internet.

Capítulo 5 Métodos de Defesa

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

Manual de Instalação ( Client / Server ) Versão 1.0

Sistemas Distribuídos

Relatorio do trabalho pratico 2

Manual de Utilização do Sistema GRServer Cam on-line (Gerenciamento de Câmeras On-line)

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

SIORP Sistema de Informação de Órgão Publico 2012

O QUE VOCÊ PRECISA SABER SOBRE DOMÍNIOS

REGISTRANDO DOMÍNIOS, COMO PUBLICAR UM SITE? DIRECIONANDO O DNS. Professor Carlos Muniz

Roteiro 3: Sistemas Linux arquivos e diretórios

Proposta de estudo CNC

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Arquitetura de Rede de Computadores

Introdução ao GED Simone de Abreu

Manual de Instalação do Agente Citsmart

Documento de Análise e Projeto VideoSystem

Procedimentos para Reinstalação do Sisloc

Aplicação Prática de Lua para Web

Visão geral híbrida de Serviços Corporativos de Conectividade do SharePoint 2013

POLÍTICA DE PRIVACIDADE SEGUROS UNIMED

TVVILAEMBRATEL.WEBS.COM 1 Uma experiência com sistemas de CMS

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Docas do Pará - Guia de Instalação

XDOC. Solução otimizada para armazenamento e recuperação de documentos

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 4)

1 Sumário O Easy Chat Conceitos Perfil Categoria Instalação O Aplicativo HTML...


Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

Política de Uso do JEMS para a CAFe

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

Firewall. Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta

WINDOWS NT SERVER 4.0

Eberhardt Comércio e Assist. Técnica. Ltda.

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima

Procedimentos para Instalação do Sisloc

SCPIWeb. SCPIWebDespRec Aplicação Web para Consulta de Despesas e Receitas ( Lei Complementar nº 131 de 27 Maio de 2009 )

Transcrição:

Implementação do Sistema Single-Sign-On em um Ambiente de Nuvem usando SimpleSAML Jonathan Iury Araujo dos Santos, Luiz Aurélio Batista Neto, Higo Felipe Silva Pires, Zair Abdelouahab Universidade Federal do Maranhão - UFMA 1 Departamento de Informática Universidade Federal do Maranhão (UFMA) Caixa Postal 65080-805 Bacanga São Luis MA Brazil darkjontex@hotmail.com Abstract. Aplicar o funcionamento e desenvolvimento de entidades federadas em Single-Sign-On em ambientes de nuvem. O uso acadêmico e comerciais entidades como Shibboleth, OpenAM e SimpleSAML para definir-se um ambiente federado. Todos estes citados tem um bom suporte para suas implementações federadas, contudo nenhum suporte ou implementação voltado para ambientes em nuvem. Temos como contribuição o funcionamento de um ambiente federado em Single-Sign-On em um ambiente de nuvem controlado usando-se o Eucalyptus. Palavras-chave: Segurança da Informação, Computação em Nuvem, Gerenciamento de Identidades, SimpleSAML, Implementação. 1. Introdução Existem diversos aplicativos e serviços que hoje com o avanço da internet, permitem que diversas tarefas possam ser operadas e desenvolvidas sem a necessidade de instalar o serviço localmente para utiliza-lo. Desde vídeos que podem ser assistidos online até documentos que podem ser editados online. Contudo estes serviços muitas das vezes é preso ao recurso de autenticação que deve ser feito em cada tipo de serviço que o usuário for utilizar na web. Pensando Neste ponto que surgem as entidades de gerenciamento de identidade. Elas têm o papel de intermediar o acesso aos serviços e aplicações web de modo a evitar que o usuário precise se re-autenticar em cada serviço que for utilizar em uma mesma federação. Além disso, temos o desenvolvimento do ambiente de nuvem que consiste em oferecer serviços com o propósito de evitar custos Locais para os usuários, ou seja, tudo é operado e feito na nuvem e o usuário recebe o produto de seu desenvolvimento nas aplicações. Evidentemente, desta maneira é possível alinhar os benefícios do ambiente de nuvem e uma entidade de gerenciamento de identidades para aprimorar suas aplicações e funcionalidades em ambiente de desenvolvimento e produtividade. 2. Trabalhos Relacionados Com base no artigo [?], O Single-Sign-On é um recurso oferecido por aplicações web que tem uma relação de confiança, mas não necessariamente em uma mesma companhia, com o objetivo de prover informação de autenticação para todas as aplicações web em uma relação de confiança. Se utilizando do artigo [?], A atual solução para gerenciamento de identidades federadas para redes abertas não resolve o problema escalar dos usuários em

seu gerenciamento, deste modo, se propõe um Painel de Identidade (Identity Dashboard) como componente de controle principal para o usuário, possibilitando aos usuários com a ferramenta de modo eficiente gerenciar suas próprias identidades. Com isso, a proposta deste artigo é a aplicação de um sistema federado SimpleSAML, que configurado em uma VM do ambiente de nuvem Eucalyptus, oferece o serviço de Single-Sign-On (SSO) para aplicações web que estão dentro da relação de confiança do IDP(Identity Provider) e SP(Service Provider) dentro do ambiente de nuvem. Segundo o artigo [?], O objetivo é um modelo para a autenticação e a autorização em sistemas orientados a serviços, em ambientes de larga escala. Principalmente através do padrão SAML e do conceito de identidades federadas, onde o modelo concretiza a autenticação e a autorização considerando domínios administrativos com diferentes tecnologias de segurança, de forma transparente e funcional. [?] o artigo cita Indivíduos não autorizados podem ser aceitos no sistema e usuários legítimos podem ter seus acessos negados. Logo neste artigo, introduz uma abordagem de tolerância a intrusões que visa garantir o comportamento correto na autenticação em grandes sistemas. Obtendo como resultado a garantia de tolerância a intrusões sobre um gerenciador de identidades e sua(as) relação(ões) de confiança. Neste artigo com relação ao [?], nossa implementação vai além, tendo o serviço de SSO(Single- Sign-On) na nuvem, podendo oferecer serviços tanto da federação como os da nuvem se relacionados a relação de confiança da federação. Sobre o artigo [?], Nossa idéia aprimora o atendimento de usuários da federação pois agora o problema de gerenciamento do usuário e múltiplos acessos é extinto pela versatilidade que o ambiente de nuvem oferece para o sistema federado SimpleSAML, além de fornecer um gerenciamento de melhor performace para o ambiente federado com os recursos oferecidos pela nuvem. Com base no artigo [?], obtivemos como resultado positivos nos pontos de que a implementação em larga escala de um ambiente federado na nuvem apresenta maior segurança, contribuindo na aplicação do novo padrão de segurança SAML2.0 para sistemas federados em ambientes da nuvem. 3. Fundamentos Este artigo tem o objetivo de demonstrar as possibilidades existentes do uso do gerenciador de identidades SimpleSAML em um ambiente de nuvem de modo a ser estruturado como provedor de identidade e provedor de serviço para atender requisições dos usuários da nuvem na autenticação e utilização de aplicações web relacionados. A fim de complementar as definições sobre o gerenciador de identidade como o centro do domínio para o usuário que realizará múltiplos acessos no sistema federado com base no artigo [?], e fazendo uso com o fundamento do papel do gerenciador de identidades, que promove seu uso e privacidade a qual a federação oferece. Segundo o artigo[?], cujo a abordagem sobre a arquitetura deste gerenciamento e o papel da identidade, também exerce uma identidade do domínio, contribue no entendimento do recurso Single-Sign-On para ambientes de nuvem. Esta estrutura de comunicação e disposição entre um IDP(Identity Provider) e SP(Service Provider) é chamado de federação, pois esta estrutura permite que o usuário possa acessar ao sistema sem precisar criar novas contas para se identificar na rede, precisando somente uma única conta no domínio do sistema e o endereço de acesso do mesmo. Como ilustra a figura acima, uma federação consiste de um IDP e um SP e entre eles existir uma relação de confiança para se comunicarem e satisfazer a autenticação operacional do usuário na federação. Seguindo uma ordem de como procede o acesso do usuário a federação: (1) O usuário acessa o endereço do SP, (2) O SP redireciona o acesso

Figure 1. Federated Authentication para o IDP que pede autorização, (3) O usuário realiza seu login e em caso de sucesso ele é direcionado para o SP, (4) o SP oferece para o usuário o acesso ao serviço que este disponibiliza. 3.1. Segurança da Informação O uso do SimpleSAML consiste em ser estruturado em uma federação composta por um provedor de identidade e um provedor de serviço, que ao se comunicarem entre sí, podem gerenciar o recurso de Single-Sign-On e oferecer eficaz uso das aplicações web para o usuário sem a necessidade de constantes logins, precisando-se do usuário autenticar-se uma única vez. Além de eficiente, o sistema de Single-Sign-On oferecido pelo SimpleSAML, também se mostra seguro em sua comunicação com o provedor de serviço, garantido-se uma relação de confiança entre IDP(Identity Provider) e SP(Service Provider) que somente entre eles é possível esta comunicação. Esta garantia é feita por conta do modo que esta relação de confiança é configurado, pois existe um arquivo no SimpleSAML chamado de authsource.php localizado dentro da pasta config do SimpleSAML, onde neste arquivo é citado seu funcionamento(idp ou SP), chave privada que deve ser citada sua localização para a relação de confiança e comunicação entre IDP e SP, o certificado que especifíca o tipo de segurança e criptografia que essa relação utiliza como X509, e os endereços do IDP e SP para acesso. Com todas estas informações, o fundamental para garantia de segurança é a criptografia utilizada pelo SimpleSAML, pois você pode configurar outras criptografias para comunicar-se com outras entidades como OpenAM ou Shibboleth. Deste modo, essa criptografia é feita em uma sequência alfanumérica extensa tornando-se difícil de ser quebrada ou acessada de maneira irregular, além de que a restrição do acesso é paralela aos endereços pertencentes a relação de confiança, ou seja, mesmo que se tenha a criptografia da relação, é preciso que o endereço de sua máquina esteja inserido na relação de confiança, caso contrário o acesso não é permitido. Isto impede qualquer tipo de ação irregular ou imprópria por qualquer motivo decorrente. Após estas configurações e a comunicação IDP e SP funcionando perfeitamente, é possível acessa o produto desta configuração e comunicação em um arquivo XML dentro da pasta metadata que mostra em detalhes todas as configurações da comunicação entre IDP e SP, além da criptografia e a autenticação que está sendo passada entre eles. 3.2. Computação em Nuvem A aplicação com base no desenvolvimento do SimpleSAML em um ambiente de nuvem foi realizada de modo a configura-lo em uma VM local, para em seguida transferi-la para

uma VM do ambiente de nuvem. Neste caso foi utilizado o Eucalyptus como ambiente de nuvem para teste de funcionamento do serviço de Single-Sign-On e comunicação IDP/SP do SimpleSAML. O teste permitiu comprovar que o uso de entidades federadas em ambientes da nuvem permite o usuário se comunicar com uma federação, sem necessariamente esta requisitar se manter fisicamente em outro computador ou rede, consolidando os benefícios do SSO(Single-Sign-On) com os recursos da federação acoplada ao ambiente de nuvem Eucalyptus. 3.3. Gerenciamento de Identidades Uma identidade é uma representação de uma entidade em uma aplicação especifica do domínio. Por exemplo, os dados pessoais registrados de um cliente do banco, nestes dados podem conter nome, número da conta, endereço e até traços físicos ou foto do cliente. Uma entidade é normalmente relacionada com as entidades do mundo real. Outro ponto importante de uma entidade é que não podem existir clones ou réplicas desta entidade, pois cada entidade possui características únicas, assim como as pessoas e suas características [?]. Com esta definição é possível perceber que a necessidade e existência de um sistema para gerenciar essas entidades é necessária, pois imagine em um banco ou em uma empresa, quantos clientes ou usuários devem existir para fazerem uso de aplicações ou serviços web disponibilizados pelo provedor de serviço, porém requerendo autorização para seu devido uso. Doravante, o uso de um gerenciador de identidades é indispensável para tornar funcional e eficaz a autorização destes usuários para a rede de confiança que a relação de confiança que uma federação fornece. 4. Implementação Abaixo apresento uma breve descrição dos softwares utilizados para a implementação ambiente e sistema: Eucalyptus: Sistema para gerar ambientes na nuvem com serviços de segurança e funcionamento com máquinas virtuais (VM) onde é possível criar réplicas de uma ou mais VMs, a fim de assumir tarefas de outras VMs em funcionamento caso uma apresente problemas ou irregularidades em sua execução ou processo, garantindo seu funcionamento na nuvem. Tomcat: Software para configurar os endereços das aplicações web junto com a padronização do ambiente em nuvem ou de uma rede local. KVM: Software para se criar uma VM para instalação de um SO junto com aplicações ou configurações para ambientes de desenvolvimento controlado (simulações). SimpleSAML: É um software que oferece recursos para criação de provedores de identidades e provedores de serviços, resultando em uma federação e que esta pode ser interagir com outras federações caso deseje, como OpenAM ou Shibboleth. Todos estes softwares estão rodando em uma máquina com Sistema Operacional Linux da distribuição Debian. Primeiramente foi desenvolvido o ambiente federado SimpleSAML em máquinas vituais dentro do KVM. Em seguida foram-se estruturadas as VM s de modo a se comunicarem com o Tomcat para definir os endereços destas na rede e serem acessadas pelas aplicações web. O SimpleSAML esta presente em 2 VM s

do KVM em uma única máquina, de modo que uma VM tem sua instalação configurada como Provedor de Identidade (IDP) e a outra VM como Provedor de Serviço (SP). Em seguida é configurado o arquivo openssl.cnf na VM IDP. Este arquivo tem como parâmetros a serem definidos o nome da organização, informações sobre a federação e HOSTNAME da máquina, para gerar os arquivos simplesaml.key, simplesaml.crt e simplesaml.p12 para colocar na pasta autenticacao-federada/cert, onde será garantido a relação de confiança e autenticação para esta federação. Doravante, é realizado testes na federação para garantir seu funcionamento para transferi-lo a VM do sistema Eucalyptus e concretizar seu funcionamento no ambiente de nuvem como ilustra a figura abaixo: Figure 2. Representação da Arquitetura O que constou resultados positivos e proporcionando possibilidades para implementações federadas futuras para o sistema federado em nuvem. 5. Testes Os testes realizados para medir o desempenho do SimpleSAML no ambiente de nuvem foi a instalação da aplicação web RoundCube, um servidor de emails que dentro da federação em nuvem fornece acesso a aplicação diretamente, desde que o usuário já tenha se autenticado na federação. Isto permite verificar se o Single-Sign-On é realizado como esperado tanto entre o IDP e o SP do SimpleSAML. Assim como entre aplicações web relacionadas no Eucalyptus. Com uso do Tomcat para gerir os endereços do SimpleSAML, o resultado foi positivo para o acesso a aplicação RoundCube sem necessitar de qualquer informação a mais para o usuário. Além disso, foi verificado que com o uso do Tomcat para a aplicação web em outra VM dentro do Eucalyptus, a segurança para uma tentativa de ataque de invasão por homem do meio se torna complexa, já que a chave que você consegue interceptar não fornece acesso por conta do tempo da chave de segurança interceptada ser diferente do tempo real do usuário na VM e do laço de confiança ser diferente do estabelecido no openssl.cnf, possibilitando maior segurança do SSO em ambientes federados na nuvem. Isto reforça os benefícios que o próprio 6. Conclusão Com o desenvolvimento e configuração da federação SimpleSAML utilizando-se da VM do Eucalyptus, foi possível realizar o objetivo proposto de desenvolver serviços oferecidos pela federação dentro do ambiente da nuvem para o usuário, fornecendo SSO na federação e suas aplicações web, garantido-lhe segurança aprimorada pelo ambiente em

nuvem integrado aos recursos de Single-Sign-On de um sistema federado a aplicações web acopladas ao relacionamento de confiança da federação SimpleSAML. Isto abre possibilidades para o avanço da tecnologia na nuvem e suas extensões para novos projetos. References [1] Ionut Andronache and Claudiu Nisipasiu. Web single sign-on implementation using the simplesamlphp application. Journal of Mobile, Embedded and Distributed Systems, 3(1):21 29, 2011. [2] Luciano Barreto, Frank Siqueira, Joni da Silva Fraga, and Eduardo Feitosa. Gerenciamento de identidades tolerante a intrusões. 2013. [3] Edson T de Camargo, Michelle S Wangham12, Joni Fraga, and Emerson R de Mello. Autenticaç ao e autorizaç ao em arquiteturas orientadas a serviço através de identidades federadas. 2007. [4] Audun Jøsang and Simon Pope. User centric identity management. In AusCERT Asia Pacific Information Technology Security Conference, page 77. Citeseer, 2005. [5] Audun Jøsang, Muhammed Al Zomai, and Suriadi Suriadi. Usability and privacy in identity management architectures. In Proceedings of the fifth Australasian symposium on ACSW frontiers-volume 68, pages 143 152. Australian Computer Society, Inc., 2007. [6] Jonathan Scudder and Audun Jøsang. Personal federation control with the identity dashboard. In Policies and Research in Identity Management, pages 85 99. Springer, 2010.