IAM Identity and access manager

O gerenciamento de identidades e acesso é um recurso da AWS usado para atribuir permissões para usuários e recursos na AWS.

Categoria de Tecnologia

Postado em 22 janeiro 2024

Atualizado em 22 janeiro 2024

Palavras-chave: aws,amazon,iam,identidade,acesso,gerenciamento,nuvem,cloud

Visualizações: 1983



Atualmente, a AWS (Amazon Web Services) é a plataforma de nuvem mais utilizada mundialmente. Esse plataforma fornece uma grande quantidade de recursos que podem ser utilizados sob demanda ou como instâncias reservadas.

Pelo fato da AWS poder ser acessada por múltiplos usuários de uma empresa ou grupo de desenvolvedores, ela precisa ser administrada estrategicamente para que não cause problemas como acesso indevido de outros usuários em relação a recursos específicos. O IAM (Identity and Access Management) é o recurso responsável pelo gerenciamento de usuários. É essencial para projetos que tem múltiplos programadores trabalhando na nuvem em uma mesma conta.

O que é IAM na AWS?

IAM é um acrônimo para Gerenciamento de Identidade e Acesso. Esse recurso permite adicionar, editar ou remover permissões de usuários em relação a outros recursos da AWS. Por exemplo, podemos permitir que o usuário A possa apenas visualizar uma lista de usuários, mas ele não poderá adicionar ou editar usuários dessa lista. Para o usuário A ter permissão para adicionar ou editar usuários, ele precisa que tais permissões sejam atribuídas a ele. O usuário que poderá atribuir permissões para esse usuário A é o usuário raiz (root user) ou um usuário com permissões elevadas (como um usuário administrador).

exemplo de gerenciamento de identidade e acesso iam aws

Com excessão do usuário raiz, todos os usuários são IAM users. Os IAM Users são usuários que podem ser adicionados posteriormente e são vinculados ao usuário raiz que possui a conta da AWS.

O que é um IAM User?

Assim como o usuário raiz, o IAM user também precisa de credenciais como nome de usuário e senha. Entretanto, esse usuário precisa do ID da conta do usuário raiz para poder acessar o recurso IAM. Os IAM users possuem relação com com a conta do usuário raiz, por isso devem ser criados pelo próprio usuário raiz (a menos que o usuário raiz crie um usuário IAM com permissão para criar outros usuários IAM). O limite de usuários IAM que podem ser criados para uma conta na AWS é de até 5000.

Não é possível criar usuários IAM vinculados a outros usuários IAM (sub-usuários IAM). Todos os usuários serão criados a partir da conta do usuário raiz. Por exemplo, mesmo se um usuário IAM com permissão para criar outros usuários criar um, esse novo usuário será do domínio do usuário raiz.

O que são os groups, roles e politics no IAM?

No IAM, o gerenciamento de permissões é realizado usando três elementos:

  • Grupos de usuários (Groups)
  • Funções (Role)
  • Políticas (Politics)

Políticas

Nas políticas são definidos as permissões. As permissões de ler, escrever, editar e apagar permissões de um determinado recurso ou recursos são realizados nas políticas. Para as políticas terem efeito sobre um usuário ou recurso, elas devem ser selecionadas e atribuídas pelo usuário raiz ou usuário com permissões de administrador. A atribuição de políticas pode ser realizada em grupos de usuários ou em funções.

Funções

As funções são atribuídas diretamente em um recurso ou usuário. Uma função pode ser usada quando precisamos que um recurso ou usuário tenha permissão temporária sobre outro recurso. Um exemplo de função é permitir que o EC2 acesse outro recurso como o S3.

Grupos de usuários

Invés de atribuir políticas diretamente ao usuário, inseri o usuário dentro de um grupo com as políticas já definidas. Exemplos de grupos podem ser desenvolvedores, administradores ou testadores. Agiliza o trabalho de atribuição de permissões, pois necessita apenas uma ação: adicionar usuário em um determinado grupo.

Não é possível adicionar um usuário a múltiplos grupos. Porém, podemos adicionar políticas diretamente a um usuário, contornando esse problema.

Posso acessar o IAM por um software?

Sim, é possível acessar o IAM através de um SDK do AWS disponível para diversas linguagens de programação. A AWS também permite acesso pelo terminal.

Conclusão

O IAM é um serviço disponibilizado pela AWS para gerenciamento de usuários em uma única conta. O gerenciamento é feito através de grupos de usuários, funções e políticas. As permissões podem ser atribuídas em usuários e recursos. Assim como usuários precisam de permissões para acessar determinados recursos, recursos também precisam de permissão para acessar outros recursos.

Projetos práticos

Implementando um algoritmo de pathfinding

Implementando um programa que encontra a menor distância entre dois pontos dentro de um labirinto usando o algoritmo A* (a-estrela).

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

Caixa eletrônico usando arquitetura limpa

Usando JavaFX e arquitetura limpa para criar um aplicativo de caixa eletrônico extremamente simples.

Integrando Laravel com o protocolo MQTT para comunicação entre dispositivos

Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Veja também

Os três pilares de segurança da informação são o requerimento mínimo para um serviço seguro

A quantidade de programadores só tende a aumentar com o tempo. Porém, muitos programadores ainda não conhecem os três pilares de segurança da informação.

Pessoas sem um endereço não podem utilizar os correios. Dispositivos sem um endereço não podem acessar a internet.

Quando nos conectamos à internet, nós recebemos um endereço IP. O endereço IP é o nosso endereço virtual que vai servir como localização para a transferência de dados na internet

ERP Enterprise Resource Planning

Software que possibilita o gerenciamento de todos os recursos da empresa em um só sistema. Esses recursos são capital, pessoas, coisas e informações.

Financiamento coletivo

Foca principalmente em projetos com potencial e projetos que despertam o interesse de investidores, não sendo necessariamente focado na carência.

Indústria 4.0

Também conhecida como quarta revolução industrial, utiliza tecnologias modernas para automatizar processos. Iniciou-se em 2011, na Alemanha.

Internet profunda (Deep web)

Camada da internet onde sistemas de busca convencionais não conseguem acessar por diversos motivos, deixando de indexar o conteúdo.