Cloud

O Modelo de Responsabilidade Compartilhada da Nuvem

O Modelo de Responsabilidade Compartilhada da Nuvem

Conteúdo

Introdução

Este será um dos meus primeiros posts do site, e de todos os temas que eu poderia escolher da minha área, resolvi abordar este: a responsabilidade compartilhada na nuvem. O tema pode parecer familiar para alguns, corriqueiro até… mas para quem está iniciando suas atividades com a nuvem, ou não está familiarizado com o tema, é de extrema importância conhecer.

Eu vou descrever aqui neste post o modelo de responsabilidade compartilhada da nuvem de forma bem direta e sucinta. Portanto, será um post curto e que servirá de referência para outros posts, inclusive o próximo, qual já estou desenvolvendo em paralelo.

Fique a vontade e aprecie a leitura.

O Que é a Responsabilidade Compartilhada

Se tem algo em que a maioria das pessoas têm familiaridade hoje, é com a nuvem. E claro, querendo ou não todos acabam utilizando algum serviço em nuvem hoje, seja armazenando e recuperando fotos, streamings ou sistemas inteiros acessíveis através do navegador.

O que poucas pessoas sabem, em especial aquelas que trabalham diretamente com provedores de nuvem AWS, é que existe um acordo de uso da nuvem. Um acordo do qual você concorda a partir do momento que passa a usar.

Este acordo é o modelo de responsabilidade compartilhada, e a depender do nível do serviço em nuvem que você está usando, ele vai definir o que é de sua responsabilidade em questão de segurança, e o que é de responsabilidade do provedor do serviço. Mas uma coisa é certa, os seus dados e o acesso ao serviço, serão sempre responsabilidades suas.

Direitos e Deveres

Usarei aqui dois exemplos práticos, de grandes provedores de serviços em nuvem para mostrar como a responsabilidade compartilhada funciona.

Modelo de Responsabilidade Compartilhada Google Cloud

Para entender completamente o modelo de responsabilidade compartilhada segundo o Google Cloud Plataform (GCP), vou te explicar rapidamente os três modelos de serviços em nuvem. Eles basicamente se dividem pelo nível de controle e responsabilidade do usuário sobre os recursos computacionais.

  • IaaS (Infraestrutura Como Serviço): o usuário tem acesso a recursos de infraestrutura, como armazenamento, computação, rede e virtualização, mas é responsável pelo sistema operacional, máquinas virtuais, middleware e aplicações. O provedor de nuvem gerencia a rede, servidores e recursos de virtualização e armazenamento.
    Provedores de nuvem pública, como AWS, Microsoft Azure e Google Cloud, são exemplos de IaaS.
  • PaaS (Plataforma Como Serviço): o usuário tem acesso a uma plataforma para desenvolver, executar e gerenciar aplicações, sem precisar criar e manter a infraestrutura. O provedor hospeda os componentes de hardware e software na sua própria infraestrutura.
    Alguns exemplos de PaaS são o AWS Elastic Beanstalk, o Heroku e o Red Hat OpenShift.
  • SaaS (Software Como Serviço): o usuário tem acesso a uma aplicação baseada na nuvem, pronta para uso, que é gerida pelo fornecedor de serviços. O usuário só precisa se conectar à aplicação através de um dashboard de controle ou uma API.
    Dropbox, Salesforce, Google Apps e Red Hat Insights são alguns exemplos de SaaS.

Com base nos modelos acima, e observando o diagrama abaixo, você poderá perceber o nível de comprometimento de cada parte envolvida com o serviço de nuvem.

Modelo de Responsabilidade Compartilhada segundo o Google Cloud Plataform.
Diagrama das responsabilidades do usuário e do provedor de serviços de nuvem. Fonte: Responsabilidades compartilhadas e destino compartilhado Google Cloud  |  Cloud Architecture Center

Modelo de Responsabilidade Compartilhada AWS

Levemente diferente do que apresenta o modelo do GCP, o modelo de responsabilidade compartilhada fornecido pela Amazon Web Services (AWS) é baseado na ideia de “Responsabilidade DA Nuvem” e “Responsabilidade NA Nuvem”.

Modelo de Responsabilidade Compartilhada segundo a AWS.
Diagrama das responsabilidades do cliente e da AWS no ambiente da nuvem. Fonte: Modelo de Segurança Compartilhada :: Modelo de maturidade de segurança da AWS

Como é possível ver, o modelo apresentado pela AWS exibe uma responsabilidade mais direta do usuário, o que no modelo do GCP ocorre quando em um IaaS.

Falar desta maneira faz parecer que as plataformas atuam de maneira diferente com relação às responsabilidades, mas não. O contexto de cada plataforma faz com que a apresentação do modelo se dê de formas diferentes. O GCP como provedor de nuvem, oferece serviços que vão além da infraestrutura, como é o caso de contas de e-mail com o Gmail, armazenamento com o Drive e o Firebase como plataforma de desenvolvimento.

A Responsabilidade Compartilhada nos Diferentes Tipos de Serviços

Para entender melhor como a responsabilidade compartilhada funciona na prática, vou apresentar como ela se aplica aos diferentes tipos de serviços na nuvem:

IaaS (Infraestrutura como Serviço):

Imagine que você está utilizando uma máquina virtual (VM) na nuvem. Nesse caso, o provedor de nuvem (como AWS, Azure ou GCP) é responsável por:

  • Segurança física dos servidores: manter o data center seguro, com controle de acesso físico, sistemas de prevenção contra incêndios, etc.
  • Disponibilidade da infraestrutura: garantir que os servidores, redes e sistemas de armazenamento estejam funcionando corretamente.
  • Gerenciamento da rede: configurar e manter a rede que conecta sua VM à internet e a outros recursos.

Já você, como usuário, é responsável por:

  • Segurança do sistema operacional: instalar e configurar firewalls, antivírus e outros mecanismos de segurança no sistema operacional da sua VM.
  • Gerenciamento de acessos: controlar quem tem permissão para acessar sua VM e quais ações podem realizar.
  • Segurança das aplicações: proteger as aplicações que você instala na VM contra vulnerabilidades e ataques.

PaaS (Plataforma como Serviço):

Se você utiliza um serviço de PaaS para desenvolver e hospedar suas aplicações, o provedor de nuvem cuida de:

  • Segurança da plataforma: manter a plataforma de desenvolvimento segura, incluindo o sistema operacional, os servidores de aplicação e as ferramentas de desenvolvimento.
  • Gerenciamento da infraestrutura: gerenciar os recursos de hardware e software que suportam a plataforma.
  • Escalabilidade e disponibilidade: garantir que a plataforma esteja disponível e possa escalar para atender às suas necessidades.

Suas responsabilidades como usuário incluem:

  • Segurança do código da aplicação: desenvolver código seguro, livre de vulnerabilidades que possam ser exploradas por atacantes.
  • Gerenciamento de dados: proteger os dados que sua aplicação processa e armazena.
  • Configuração da segurança da aplicação: configurar as permissões de acesso, regras de autenticação e outros mecanismos de segurança da sua aplicação.

SaaS (Software como Serviço):

Quando você usa um software como serviço, como um sistema de email ou CRM, o provedor de nuvem assume a maior parte da responsabilidade pela segurança:

  • Segurança da infraestrutura e do software: proteger os servidores, a rede e o software que compõem o serviço.
  • Gerenciamento de acessos: controlar o acesso ao serviço e aos dados dos usuários.
  • Disponibilidade e backups: garantir que o serviço esteja disponível e que seus dados estejam protegidos contra perdas.

Mesmo assim, você ainda tem algumas responsabilidades importantes:

  • Segurança da sua conta: escolher uma senha forte, habilitar a autenticação em duas etapas e proteger suas credenciais de acesso.
  • Gerenciamento de usuários: controlar os usuários que têm acesso ao serviço dentro da sua organização.
  • Configuração das permissões de acesso: definir quais usuários podem acessar quais dados e funcionalidades dentro do serviço.

Lembre-se que a responsabilidade compartilhada é um conceito fundamental na nuvem. Ao entender as responsabilidades de cada parte, você pode garantir a segurança dos seus dados e aplicações na nuvem de forma mais eficaz.

Encerrando…

Há diversos outros provedores de serviços de nuvem no mercado, e todos eles têm em comum o modelo de responsabilidade compartilhada. Pode haver pequenas variações de uma para outro, mas sempre haverá a responsabilidade do usuário sobre seus dados e às pessoas que detêm acesso aos seus recursos computacionais. Enquanto que o provedor garantirá a integridade física e disponibilidade dos serviços.

Aproveito a oportunidade para dizer que, se este conteúdo fez sentido para você ou contribuiu de alguma forma, deixe seu comentário abaixo.

Compartilhe este conteúdo:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Antonio Augusto | DevOps Engineer | AWS Cloud Especialist | DBA | Linux

Apaixonado por tecnologia e dedicado a construir soluções que simplificam o desenvolvimento e impulsionam o projetos.

Vamos Trabalhar juntos
Vamos Trabalhar juntos

Vamos manter contato