SlideShare uma empresa Scribd logo
1 de 34
Segurança de Dados
Gerência de Identidades Federadas
em Nuvens
Introdução:
• Ao Final da década de 90 as
  organizações, sejam elas empresas ou
  universidades empregavam serviços de
  autenticação de forma centralizada com o
  intuito de facilitar o gerenciamento e
  unificar o controle de acesso, recurso
  conhecido como SSO (Single Sign-On).

• Este é um modelo ainda bastante
  utilizado,     e    funciona   bem     em
  organizações que se limitam ao seu único
  serviço de diretórios, porem as limitações
  deste modelo surgem a partir do
  momento em que a organização precise
  utilizar serviços compartilhados.
Introdução:
• A principal falha deste modelo
  centralizado é prender os usuários
  ao domínio de sua organização, ou
  seja, limitar o utilizador ao
  contexto de uma única aplicação.
  Com o surgimento da Web 2.0 o
  gerenciamento de Identidades
  (IdM) tornou-se ainda mais
  complexo, devido aos conceitos de
  colaboração,     interoperabilidade
  entre          aplicações         e
  compartilhamentos de informações
  na internet
Introdução:
• A gerência de identidades federadas (Federated
  IdM) têm como desafio oferecer uma infraestrutura
  que permita tanto aos usuários uma experiência de
  SSO, quanto aos administradores um mecanismo de
  autenticação e controle de acesso aos recursos
  federados entre parceiros.

• Podendo ser caracterizada também por possuir
  principalmente       os     seguintes     elementos:
  autenticação, autorização, logging, provisionamento
  de         usuários,         automação          com
  workflow, delegação, federação, SSO e mecanismo
  de password reset oferecido aos usuários
Considerações Gerais:
Para entendermos o que é Gerencia de Identidade
em nuvens precisamos entender dois conceitos:

 Computação em Nuvem

 Gerência de Identidade
Computação em nuvem:
• É um modelo de computação
  distribuída      que    deriva
  características da computação
  em grades, no que diz respeito
  à provisão de informação sob
  demanda       para   múltiplos
  usuários concorrentes.
Computação em nuvem:
• Um domínio oferece aplicações na nuvem sem se
  preocupar com o local onde os serviços estão
  sediados ou como eles são oferecidos. Fatias do
  poder computacional dos nós da rede são
  oferecidas, reduzindo os custos para fornecer
  uma infraestrutura própria para prover os
  serviços.
Computação em nuvem:
• A computação em nuvem pode ser definida
  também          a       partir     dos       seus
  serviços, características e atributos, a seguir
  estão listadas alguns itens que a mesma integra:

 Serviço sob demanda
 Amplo acesso aos recursos computacionais
 Transparência
 Elasticidade
 Gerenciamento
Computação em nuvem:
• Provedores de serviços de computação em
  nuvem podem oferecer diferentes tipos de
  planos de serviço, no qual cada usuário solicita o
  plano que se encaixe melhor em suas
  necessidades, a seguir podemos conferir alguns
  dos planos.

 IaaS (Infrastructure as a Service)
 PaaS (Plataform as a Service)
 SaaS (Software as a Service):
Computação em nuvem:
• Provedores de serviços de computação em
  nuvem podem oferecer diferentes tipos de
  planos de serviço, no qual cada usuário solicita o
  plano que se encaixe melhor em suas
  necessidades, a seguir podemos conferir alguns
  dos planos.

 IaaS (Infrastructure as a Service)
 PaaS (Plataform as a Service)
 SaaS (Software as a Service):
Sistemas Open-Source C. Nuvem:
• Nimbus: disponibiliza um
  toolkit de código aberto para
  oferecer um ambiente de
  cluster como uma IaaS.
  Também são oferecidas
  interfaces que seguem ) para
  o acesso à base de dados de
  recursos e escalonamento de
  VMs por meio de uma
  interface de gerência.
Sistemas Open-Source C. Nuvem:
• OpenNebula: oferece um
  toolkit de código aberto para a
  provisão        de        nuvens
  públicas, privadas e híbridas. A
  infraestrutura     do    sistema
  oferece recursos sob demanda
  para usuários finais, e foi
  projetada para ser integrada
  com     outras    soluções    de
  armazenagem e rede. As VMs
  são utilizadas em um pool de
  recursos e toda a alocação de
  recursos é baseada em políticas.
Sistemas Open-Source C. Nuvem:
• Eucalyptos: é uma plataforma
  de software de código aberto
  para a criação e gerência de
  nuvens públicas e privadas. A
  empresa
  Canonical, mantenedora da
  distribuição Ubuntu, adotou
  inicialmente                o
  Eucalyptus, juntamente com
  outros softwares de código
  aberto, como solução de nuvem
  para o Ubuntu Server Edition.
  Essa solução ficou conhecida
  como Ubuntu Enterprise Cloud
  (UEC).
Sistemas Open-Source C. Nuvem:
• Como podemos perceber nenhuma destas
  soluções integra funcionalidades para o
  gerenciamento de identidades de usuários que
  pertençam a varias nuvens. É comum adotar
  uma infraestrutura especifica para criação de
  federações, ou seja, tal recurso acaba sendo
  como um adicional no ambiente de computação
  em nuvem.
Gerência de Identidade:
• Em relação à         identidade
  podemos        ter    diferentes
  conceitos     dependendo      do
  contexto onde a mesma é
  aplicada, porem como definição
  geral podemos dizer que
  identidade é uma representação
  de uma entidade ou sujeito que
  seja suficiente para identificar
  esta entidade em um contexto
  particular.
Gerência de Identidade:
• Em relação à identidade podemos ter diferentes
  conceitos dependendo do contexto onde a
  mesma é aplicada, porem como definição geral
  podemos dizer que identidade é uma
  representação de uma entidade ou sujeito que
  seja suficiente para identificar esta entidade em
  um contexto particular.
Gerência de Identidade:
As identidades podem consistirem de:



 Identificador

 Credenciais

 Atributos
Modelos Gerência de Identidade:
• Os modelos de gerência de identidade são
  definidos a partir de sua arquitetura, onde cada
  modelo possui uma forma diferente de lidar e
  representar       o      gerenciamento          de
  identidades, abaixo estão listados quais são esses
  modelos:

 Tradicional/Isolado
 Centralizado
 Federado
 Centrado no Usuário
Gerência de Identidade:
Gerência de Identidades Federadas em Nuvens:

• Nas Instituições/Organizações ambientes de
  computação em nuvem geralmente são mantidos
  por empresas privadas, no qual os recursos dos
  serviços da nuvem ficam acessíveis através da
  Internet. Neste caso é necessário um mecanismo a
  fim de prover autenticação e autorização de usuários
  no acesso destes recursos, tanto para usuários
  pertencentes ao mesmo domínio/empresa como
  usuários parceiros. Para que a cooperação seja
  realizada com êxito, as entidades parceiras devem
  definir políticas para o compartilhamento de
  recursos junto aos domínios federados .
Gerência de Identidades Federadas em Nuvens:

• Esse processo envolve mecanismos de SSO para
  que, uma vez que o usuário esteja autenticado em
  seu domínio de origem, ele possa acessar recursos
  em quaisquer outros domínios federados, desde que
  esse usuário esteja inserido no contexto de
  autorização do domínio em questão. Em domínios
  não-federados, o mesmo usuário precisaria ter
  credenciais em ambos os domínios para ter
  permissões de acesso aos recursos distribuídos.
  Estes recursos são oferecidos através dos padrões
  abertos acordados entre os domínios
Padrões e Soluções para Implantação
de Gerência de Identidades Federadas

Padrões:
     Autenticação
     Autorização
Soluções:
     Shibboleth
     Higgins
     OpenAM
Autenticação
• O termo autenticação está inteiramente ligado
  de como é tratado o problema de determinar se
  um usuário ou entidade devem ou não ser
  autorizados a acessar determinado sistema.
Padrões - Autenticação
• SAML
 ▫ SAML é um padrão aberto baseado em XML para
   troca de informações seguras de autenticação e
   autorização em círculo de confiança, independente
   da arquitetura dos domínios integrados.
 ▫ O SAML trabalha com base em um documento
   XML que é gerado pelo IdP contendo regras que
   são utilizadas pelo SP para tomar decisões a
   respeito do controle de acesso aos recursos
   protegido.
Padrões - Autenticação
• OpenID
 ▫ É um protocolo aberto utilizados por grandes
   provedores de identidades como a Google, que
   permite      uma      forma    de   autenticação
   centralizada, onde o usuário/aplicação com
   autenticação única possa consumir serviços em
   sites que utilizam o protocolo HTTPS em um ciclo
   de confiança.
Autorização
• A autorização diz respeito às quais ações um usuário
  autenticado pode realizar.
Padrões - Autorização
• XACML – Extensible Access Control Markup
  Linguage
 ▫ O XACML é um padrão aberto que utiliza uma
   linguagem de marcação XML declarativa, onde
   são definidas as políticas de acesso. Logo, quando
   um usuário autenticado tenta realizar alguma
   ação, as regras são consultadas para verificar se a
   mesma é ou não permitida.
Padrões - Autorização
• OAuth
 ▫ Padrão de autenticação aberto que permite que
   usuários/aplicações compartilhem recursos com
   terceiros sem compartilhamento de credenciais.
   Na arquitetura Cliente-Servidor o OAuth introduz
   um terceiro papel a este modelo: o proprietário do
   recurso.
 ▫ Ao contrário das credenciais, as permissões (em forma
   de token e uma chave secreta) podem ser emitidas com
   um âmbito restritivo e de vida útil limitada, e
   revogadas de forma independente
Soluções
• A seguir será apresentado algumas soluções
  abertas que podem ser utilizadas para
  implantação de computação em nuvem
  federada.
Soluções
• Shibboleth
 ▫ Padrão de autenticação aberto que permite que
   usuários/aplicações compartilhem recursos com
   terceiros sem compartilhamento de credenciais.
   Na arquitetura Cliente-Servidor o OAuth introduz
   um terceiro papel a este modelo: o proprietário do
   recurso.
Soluções
• Higgins
 ▫ Desenvolvido pela empresa Eclipse Foundation, o
   projeto foi criado com o objetivo de integrar através de
   componentes extensíveis identidades, perfis e
   informações relacionadas a redes sociais entre
   diversos sites, aplicações e dispositivos.

 ▫ Para tratar e evitar estas questões o projeto Higgins
   apresenta um framework que permite o controle de
   como os dados pessoais são compartilhados com
   amigos/organizações dentro de um ciclo de confiança.
Soluções
• O OpenAM é mantido pelo grupo ForgeRock e
  tem o código aberto. Disponibiliza serviços de
  autenticação                                  e
  autorização, federação, SSO, monitoração, loggi
  ng e provisão de identidades. Possui a
  arquitetura cliente/servidor desenvolvido na
  linguagem java e é disponibilizado em forma de
  uma aplicação Web J2EE.
Soluções
• O OpenAM também dar suporte para agente que
  funcionam como um filtro instalado no web
  container interceptando as requisições e
  encaminha para o OpenAM como mostrado na
  figura a seguir:
Conclusão
• Com a constante evolução no mundo onde o
  imediatismo já faz parte do cotidiano das pessoas, a
  implementação de aplicações nas nuvens é cada vez
  mais necessária dentro deste contexto, para trazer
  integração entre pessoas, aplicações, corporações e
  serviços.
• Não é uma tarefa fácil trabalhar com identidades
  federadas, mas ela tem acompanhado a grande
  evolução tecnológica, incorporando soluções cada
  vez      mais     viáveis     tanto     para     os
  desenvolvedores, quanto para os usuários.

Mais conteúdo relacionado

Mais procurados

Capítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - CoulourisCapítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - CoulourisWindson Viana
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosMessias Batista
 
Sistemas Distribuídos - Comunicação Distribuída – SOA
Sistemas Distribuídos - Comunicação Distribuída – SOASistemas Distribuídos - Comunicação Distribuída – SOA
Sistemas Distribuídos - Comunicação Distribuída – SOAAdriano Teixeira de Souza
 
Sistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realSistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realRogério Cardoso
 
Artigo Sistemas Distribuidos
Artigo Sistemas DistribuidosArtigo Sistemas Distribuidos
Artigo Sistemas DistribuidosAdilmar Dantas
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisWindson Viana
 
AAB309 - SQL Azure Database - wcamb
AAB309 - SQL Azure Database - wcambAAB309 - SQL Azure Database - wcamb
AAB309 - SQL Azure Database - wcambguest34ed8ec
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaFrederico Madeira
 
Saa s software como serviço (slides)
Saa s   software como serviço (slides)Saa s   software como serviço (slides)
Saa s software como serviço (slides)Daniela Nunes
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Messias Batista
 
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Ministério Público da Paraíba
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoAdriano Teixeira de Souza
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosHélio Jovo
 
Cloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasCloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasRafael Bandeira
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosGustavo Monteiro
 

Mais procurados (20)

Capítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - CoulourisCapítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - Coulouris
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
 
Sistemas Distribuídos - Comunicação Distribuída – SOA
Sistemas Distribuídos - Comunicação Distribuída – SOASistemas Distribuídos - Comunicação Distribuída – SOA
Sistemas Distribuídos - Comunicação Distribuída – SOA
 
Sistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realSistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo real
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
Cap4 v2
Cap4 v2Cap4 v2
Cap4 v2
 
Artigo Sistemas Distribuidos
Artigo Sistemas DistribuidosArtigo Sistemas Distribuidos
Artigo Sistemas Distribuidos
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
 
AAB309 - SQL Azure Database - wcamb
AAB309 - SQL Azure Database - wcambAAB309 - SQL Azure Database - wcamb
AAB309 - SQL Azure Database - wcamb
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
Saa s software como serviço (slides)
Saa s   software como serviço (slides)Saa s   software como serviço (slides)
Saa s software como serviço (slides)
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
 
Artigo virtualização
Artigo virtualizaçãoArtigo virtualização
Artigo virtualização
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Cloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações PráticasCloud Computing - Conceitos e Aplicações Práticas
Cloud Computing - Conceitos e Aplicações Práticas
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas Distribuídos
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 

Semelhante a Gerência de identidades federadas em nuvens

Transferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiançaTransferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiançaCisco do Brasil
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em NuvemVitor Savicki
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdfDimas Francisco
 
Cloud computing - Apresentação
Cloud computing - ApresentaçãoCloud computing - Apresentação
Cloud computing - ApresentaçãoAna Paula Novello
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stvwilson_lucas
 
Tech segurança na nuvem
Tech   segurança na nuvemTech   segurança na nuvem
Tech segurança na nuvemCarlos Goldani
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxChadidoDiogo1
 
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...Marcelo Veloso
 
Cloud conceitos, segurança e migração
Cloud   conceitos, segurança e migraçãoCloud   conceitos, segurança e migração
Cloud conceitos, segurança e migraçãoAllen Informática
 
[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals[Workshop] Azure Fundamentals
[Workshop] Azure FundamentalsJaqueline Ramos
 
O que é Cloud? Quem é Azure?
O que é Cloud? Quem é Azure?O que é Cloud? Quem é Azure?
O que é Cloud? Quem é Azure?Gabriel Faraday
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensicsederruschel
 
Governança de Ambientes Heterogêneos - Single Sign-On para Servidores
Governança de Ambientes Heterogêneos - Single Sign-On para ServidoresGovernança de Ambientes Heterogêneos - Single Sign-On para Servidores
Governança de Ambientes Heterogêneos - Single Sign-On para ServidoresVirtù Tecnológica
 

Semelhante a Gerência de identidades federadas em nuvens (20)

Transferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiançaTransferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiança
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf
 
Cloud computing - Apresentação
Cloud computing - ApresentaçãoCloud computing - Apresentação
Cloud computing - Apresentação
 
PHP SSO no Zentyal
PHP SSO no ZentyalPHP SSO no Zentyal
PHP SSO no Zentyal
 
Computação em Nuvem: conceitos básicos
Computação em Nuvem: conceitos básicosComputação em Nuvem: conceitos básicos
Computação em Nuvem: conceitos básicos
 
9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv9.cloud computing v3.1_wl_stv
9.cloud computing v3.1_wl_stv
 
Cloud Computing.pdf
Cloud Computing.pdfCloud Computing.pdf
Cloud Computing.pdf
 
Tech segurança na nuvem
Tech   segurança na nuvemTech   segurança na nuvem
Tech segurança na nuvem
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...
Artigo CONSAD 2013 - Cloud Computing: Necessidade e Benefícios Esperados Com ...
 
Cloud conceitos, segurança e migração
Cloud   conceitos, segurança e migraçãoCloud   conceitos, segurança e migração
Cloud conceitos, segurança e migração
 
[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals
 
Segurança Em Computaçao Na Nuvem
Segurança Em Computaçao Na NuvemSegurança Em Computaçao Na Nuvem
Segurança Em Computaçao Na Nuvem
 
O que é Cloud? Quem é Azure?
O que é Cloud? Quem é Azure?O que é Cloud? Quem é Azure?
O que é Cloud? Quem é Azure?
 
Aula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosdsAula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosds
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensics
 
Governança de Ambientes Heterogêneos - Single Sign-On para Servidores
Governança de Ambientes Heterogêneos - Single Sign-On para ServidoresGovernança de Ambientes Heterogêneos - Single Sign-On para Servidores
Governança de Ambientes Heterogêneos - Single Sign-On para Servidores
 

Gerência de identidades federadas em nuvens

  • 1. Segurança de Dados Gerência de Identidades Federadas em Nuvens
  • 2. Introdução: • Ao Final da década de 90 as organizações, sejam elas empresas ou universidades empregavam serviços de autenticação de forma centralizada com o intuito de facilitar o gerenciamento e unificar o controle de acesso, recurso conhecido como SSO (Single Sign-On). • Este é um modelo ainda bastante utilizado, e funciona bem em organizações que se limitam ao seu único serviço de diretórios, porem as limitações deste modelo surgem a partir do momento em que a organização precise utilizar serviços compartilhados.
  • 3. Introdução: • A principal falha deste modelo centralizado é prender os usuários ao domínio de sua organização, ou seja, limitar o utilizador ao contexto de uma única aplicação. Com o surgimento da Web 2.0 o gerenciamento de Identidades (IdM) tornou-se ainda mais complexo, devido aos conceitos de colaboração, interoperabilidade entre aplicações e compartilhamentos de informações na internet
  • 4. Introdução: • A gerência de identidades federadas (Federated IdM) têm como desafio oferecer uma infraestrutura que permita tanto aos usuários uma experiência de SSO, quanto aos administradores um mecanismo de autenticação e controle de acesso aos recursos federados entre parceiros. • Podendo ser caracterizada também por possuir principalmente os seguintes elementos: autenticação, autorização, logging, provisionamento de usuários, automação com workflow, delegação, federação, SSO e mecanismo de password reset oferecido aos usuários
  • 5. Considerações Gerais: Para entendermos o que é Gerencia de Identidade em nuvens precisamos entender dois conceitos:  Computação em Nuvem  Gerência de Identidade
  • 6. Computação em nuvem: • É um modelo de computação distribuída que deriva características da computação em grades, no que diz respeito à provisão de informação sob demanda para múltiplos usuários concorrentes.
  • 7. Computação em nuvem: • Um domínio oferece aplicações na nuvem sem se preocupar com o local onde os serviços estão sediados ou como eles são oferecidos. Fatias do poder computacional dos nós da rede são oferecidas, reduzindo os custos para fornecer uma infraestrutura própria para prover os serviços.
  • 8. Computação em nuvem: • A computação em nuvem pode ser definida também a partir dos seus serviços, características e atributos, a seguir estão listadas alguns itens que a mesma integra:  Serviço sob demanda  Amplo acesso aos recursos computacionais  Transparência  Elasticidade  Gerenciamento
  • 9. Computação em nuvem: • Provedores de serviços de computação em nuvem podem oferecer diferentes tipos de planos de serviço, no qual cada usuário solicita o plano que se encaixe melhor em suas necessidades, a seguir podemos conferir alguns dos planos.  IaaS (Infrastructure as a Service)  PaaS (Plataform as a Service)  SaaS (Software as a Service):
  • 10. Computação em nuvem: • Provedores de serviços de computação em nuvem podem oferecer diferentes tipos de planos de serviço, no qual cada usuário solicita o plano que se encaixe melhor em suas necessidades, a seguir podemos conferir alguns dos planos.  IaaS (Infrastructure as a Service)  PaaS (Plataform as a Service)  SaaS (Software as a Service):
  • 11. Sistemas Open-Source C. Nuvem: • Nimbus: disponibiliza um toolkit de código aberto para oferecer um ambiente de cluster como uma IaaS. Também são oferecidas interfaces que seguem ) para o acesso à base de dados de recursos e escalonamento de VMs por meio de uma interface de gerência.
  • 12. Sistemas Open-Source C. Nuvem: • OpenNebula: oferece um toolkit de código aberto para a provisão de nuvens públicas, privadas e híbridas. A infraestrutura do sistema oferece recursos sob demanda para usuários finais, e foi projetada para ser integrada com outras soluções de armazenagem e rede. As VMs são utilizadas em um pool de recursos e toda a alocação de recursos é baseada em políticas.
  • 13. Sistemas Open-Source C. Nuvem: • Eucalyptos: é uma plataforma de software de código aberto para a criação e gerência de nuvens públicas e privadas. A empresa Canonical, mantenedora da distribuição Ubuntu, adotou inicialmente o Eucalyptus, juntamente com outros softwares de código aberto, como solução de nuvem para o Ubuntu Server Edition. Essa solução ficou conhecida como Ubuntu Enterprise Cloud (UEC).
  • 14. Sistemas Open-Source C. Nuvem: • Como podemos perceber nenhuma destas soluções integra funcionalidades para o gerenciamento de identidades de usuários que pertençam a varias nuvens. É comum adotar uma infraestrutura especifica para criação de federações, ou seja, tal recurso acaba sendo como um adicional no ambiente de computação em nuvem.
  • 15. Gerência de Identidade: • Em relação à identidade podemos ter diferentes conceitos dependendo do contexto onde a mesma é aplicada, porem como definição geral podemos dizer que identidade é uma representação de uma entidade ou sujeito que seja suficiente para identificar esta entidade em um contexto particular.
  • 16. Gerência de Identidade: • Em relação à identidade podemos ter diferentes conceitos dependendo do contexto onde a mesma é aplicada, porem como definição geral podemos dizer que identidade é uma representação de uma entidade ou sujeito que seja suficiente para identificar esta entidade em um contexto particular.
  • 17. Gerência de Identidade: As identidades podem consistirem de:  Identificador  Credenciais  Atributos
  • 18. Modelos Gerência de Identidade: • Os modelos de gerência de identidade são definidos a partir de sua arquitetura, onde cada modelo possui uma forma diferente de lidar e representar o gerenciamento de identidades, abaixo estão listados quais são esses modelos:  Tradicional/Isolado  Centralizado  Federado  Centrado no Usuário
  • 20. Gerência de Identidades Federadas em Nuvens: • Nas Instituições/Organizações ambientes de computação em nuvem geralmente são mantidos por empresas privadas, no qual os recursos dos serviços da nuvem ficam acessíveis através da Internet. Neste caso é necessário um mecanismo a fim de prover autenticação e autorização de usuários no acesso destes recursos, tanto para usuários pertencentes ao mesmo domínio/empresa como usuários parceiros. Para que a cooperação seja realizada com êxito, as entidades parceiras devem definir políticas para o compartilhamento de recursos junto aos domínios federados .
  • 21. Gerência de Identidades Federadas em Nuvens: • Esse processo envolve mecanismos de SSO para que, uma vez que o usuário esteja autenticado em seu domínio de origem, ele possa acessar recursos em quaisquer outros domínios federados, desde que esse usuário esteja inserido no contexto de autorização do domínio em questão. Em domínios não-federados, o mesmo usuário precisaria ter credenciais em ambos os domínios para ter permissões de acesso aos recursos distribuídos. Estes recursos são oferecidos através dos padrões abertos acordados entre os domínios
  • 22. Padrões e Soluções para Implantação de Gerência de Identidades Federadas Padrões: Autenticação Autorização Soluções: Shibboleth Higgins OpenAM
  • 23. Autenticação • O termo autenticação está inteiramente ligado de como é tratado o problema de determinar se um usuário ou entidade devem ou não ser autorizados a acessar determinado sistema.
  • 24. Padrões - Autenticação • SAML ▫ SAML é um padrão aberto baseado em XML para troca de informações seguras de autenticação e autorização em círculo de confiança, independente da arquitetura dos domínios integrados. ▫ O SAML trabalha com base em um documento XML que é gerado pelo IdP contendo regras que são utilizadas pelo SP para tomar decisões a respeito do controle de acesso aos recursos protegido.
  • 25. Padrões - Autenticação • OpenID ▫ É um protocolo aberto utilizados por grandes provedores de identidades como a Google, que permite uma forma de autenticação centralizada, onde o usuário/aplicação com autenticação única possa consumir serviços em sites que utilizam o protocolo HTTPS em um ciclo de confiança.
  • 26. Autorização • A autorização diz respeito às quais ações um usuário autenticado pode realizar.
  • 27. Padrões - Autorização • XACML – Extensible Access Control Markup Linguage ▫ O XACML é um padrão aberto que utiliza uma linguagem de marcação XML declarativa, onde são definidas as políticas de acesso. Logo, quando um usuário autenticado tenta realizar alguma ação, as regras são consultadas para verificar se a mesma é ou não permitida.
  • 28. Padrões - Autorização • OAuth ▫ Padrão de autenticação aberto que permite que usuários/aplicações compartilhem recursos com terceiros sem compartilhamento de credenciais. Na arquitetura Cliente-Servidor o OAuth introduz um terceiro papel a este modelo: o proprietário do recurso. ▫ Ao contrário das credenciais, as permissões (em forma de token e uma chave secreta) podem ser emitidas com um âmbito restritivo e de vida útil limitada, e revogadas de forma independente
  • 29. Soluções • A seguir será apresentado algumas soluções abertas que podem ser utilizadas para implantação de computação em nuvem federada.
  • 30. Soluções • Shibboleth ▫ Padrão de autenticação aberto que permite que usuários/aplicações compartilhem recursos com terceiros sem compartilhamento de credenciais. Na arquitetura Cliente-Servidor o OAuth introduz um terceiro papel a este modelo: o proprietário do recurso.
  • 31. Soluções • Higgins ▫ Desenvolvido pela empresa Eclipse Foundation, o projeto foi criado com o objetivo de integrar através de componentes extensíveis identidades, perfis e informações relacionadas a redes sociais entre diversos sites, aplicações e dispositivos. ▫ Para tratar e evitar estas questões o projeto Higgins apresenta um framework que permite o controle de como os dados pessoais são compartilhados com amigos/organizações dentro de um ciclo de confiança.
  • 32. Soluções • O OpenAM é mantido pelo grupo ForgeRock e tem o código aberto. Disponibiliza serviços de autenticação e autorização, federação, SSO, monitoração, loggi ng e provisão de identidades. Possui a arquitetura cliente/servidor desenvolvido na linguagem java e é disponibilizado em forma de uma aplicação Web J2EE.
  • 33. Soluções • O OpenAM também dar suporte para agente que funcionam como um filtro instalado no web container interceptando as requisições e encaminha para o OpenAM como mostrado na figura a seguir:
  • 34. Conclusão • Com a constante evolução no mundo onde o imediatismo já faz parte do cotidiano das pessoas, a implementação de aplicações nas nuvens é cada vez mais necessária dentro deste contexto, para trazer integração entre pessoas, aplicações, corporações e serviços. • Não é uma tarefa fácil trabalhar com identidades federadas, mas ela tem acompanhado a grande evolução tecnológica, incorporando soluções cada vez mais viáveis tanto para os desenvolvedores, quanto para os usuários.