Entendendo Autenticação e Autorização

Marcio Nizzola
5 min readAug 5, 2022

--

Implementar segurança nas API´s é um passo fundamental quando falamos em desenvolvimento de aplicações abertas ao acesso na internet.

A autenticação verifica a identidade de um usuário ou serviço, e a autorização determina seus direitos de acesso.

Autenticação

Autenticação é o famoso cara crachá, identificando quem você é !

Autenticação (AuthN) é um processo que verifica se alguém ou algo é quem diz ser. Os sistemas de tecnologia normalmente usam alguma forma de autenticação para proteger o acesso a um aplicativo ou seus dados. Por exemplo, quando você precisa acessar um site ou serviço online, geralmente precisa digitar seu nome de usuário e senha. Então, nos bastidores, ele compara o nome de usuário e a senha que você digitou com um registro que ele possui em seu banco de dados. Se as informações enviadas corresponderem, o sistema assumirá que você é um usuário válido e concederá acesso. A autenticação do sistema neste exemplo pressupõe que somente você saberia o nome de usuário e a senha corretos. Ele, portanto, autentica você usando o princípio de algo que só você saberia.

Objetivo de utilizar a autenticação

O objetivo da autenticação é verificar se alguém ou algo é quem ou o que afirma ser. Existem muitas formas de autenticação. Por exemplo, o mundo da arte tem processos e instituições que confirmam que uma pintura ou escultura é obra de um determinado artista. Da mesma forma, os governos usam diferentes técnicas de autenticação para proteger sua moeda da falsificação. Normalmente, a autenticação protege itens de valor e, na era da informação, protege sistemas e dados de acesso indevido.

Tipos de Autenticação

Os sistemas podem usar vários mecanismos para autenticar um usuário. Normalmente, para verificar sua identidade, os processos de autenticação usam: — algo que você conhece — algo que você tem — ou algo que você é

Senhas e perguntas de segurança são dois fatores de autenticação que se enquadram na categoria algo que você sabe. Como somente você saberia sua senha ou a resposta a um conjunto específico de perguntas de segurança, os sistemas usam essa suposição para conceder acesso a você.

Outro tipo comum de fator de autenticação usa algo que você possui. Dispositivos físicos como tokens de segurança USB e telefones celulares se enquadram nessa categoria. Por exemplo, quando você acessa um sistema e ele lhe envia um One Time Pin (OTP) via SMS ou um aplicativo, ele pode verificar sua identidade porque é o seu dispositivo.

O último tipo de fator de autenticação usa algo que você é. Os mecanismos de autenticação biométrica se enquadram nesta categoria. Como as características físicas individuais, como impressões digitais, são únicas, a verificação de indivíduos usando esses fatores é um mecanismo de autenticação seguro.

Autorização

Autorização é o controle de acesso ao que pode ser acessado, você até pode entrar numa empresa, mas nem tudo lá dentro pode ser acessado por você !

A autorização é o processo de segurança que determina o nível de acesso de um usuário ou serviço.

Em tecnologia, usamos autorização para dar aos usuários ou serviços permissão para acessar alguns dados ou realizar uma determinada ação.

Olhando para uma empresa, temos níveis diferentes de funcionários, com papéis diferentes.

Por exemplo: José é funcionário do setor de vendas, e Maria é gestora de vendas. José pode fazer e visualizar suas vendas. Já Maria, também poderá ter acesso aos totais diários de vendas, custos de produtos, e de todos os vendedores. Como José e Maria têm empregos diferentes, o sistema usaria sua identidade verificada para fornecer a cada usuário permissões individuais.

É vital observar aqui a diferença entre autenticação e autorização. A autenticação verifica o usuário (Maria) antes de permitir o acesso e a autorização determina o que ele pode fazer depois que o sistema conceder acesso (ver informações restritas de vendas).

Tipos comuns de autorização

Os sistemas de autorização existem de várias formas em um ambiente de tecnologia típico.

Por exemplo, as Listas de Controle de Acesso (ACLs) determinam quais usuários ou serviços podem acessar um determinado ambiente digital.

Eles realizam esse controle de acesso impondo regras de permissão ou negação com base no nível de autorização do usuário.

Por exemplo, em qualquer sistema, geralmente existem usuários gerais e superusuários ou administradores.

Se um usuário padrão quiser fazer alterações que afetem sua segurança, uma ACL pode negar o acesso. Por outro lado, os administradores têm autorização para fazer alterações de segurança, portanto, a ACL permitirá que eles o façam.

Outro tipo comum de autorização é o acesso aos dados.

Em qualquer ambiente corporativo, normalmente você tem dados com diferentes níveis de sensibilidade.

Por exemplo, você pode ter dados públicos encontrados no site da empresa, dados internos acessíveis apenas aos funcionários e dados confidenciais que apenas alguns indivíduos podem acessar.

Neste exemplo, a autorização determina quais usuários podem acessar os vários tipos de informações.

A diferença entre autenticação e autorização

Autenticação e autorização podem parecer semelhantes, mas cada uma desempenha um papel diferente na segurança de sistemas e dados. Infelizmente, as pessoas costumam usar ambos os termos de forma intercambiável, pois ambos se referem ao acesso ao sistema.

No entanto, são processos distintos. Simplificando, um verifica a identidade de um usuário ou serviço antes de conceder acesso, enquanto o outro determina o que eles podem fazer uma vez que tenham acesso.

A melhor maneira de ilustrar as diferenças entre os dois termos é com um exemplo simples:

Digamos que você decida visitar a casa de um amigo. Na chegada, você bate na porta e seu amigo abre. Ela te reconhece (autenticação) e te cumprimenta. Como sua amiga o autenticou, ela agora se sente à vontade para deixá-lo entrar na casa dela.

No entanto, com base em seu relacionamento, há certas coisas que você pode fazer e outras que não pode (autorização). Por exemplo, você pode entrar na área da cozinha, mas não pode entrar no escritório particular dela. Em outras palavras, você tem autorização para entrar na cozinha, mas o acesso ao escritório particular dela é proibido.

Quais são as semelhanças entre autorização e autenticação?

Autenticação e autorização são semelhantes, pois são duas partes do processo subjacente que fornece acesso.

Consequentemente, os dois termos são frequentemente confundidos em segurança da informação, pois compartilham a mesma abreviação “auth”. Autenticação e autorização também são semelhantes na maneira como ambas alavancam a identidade.

Um verifica uma identidade antes de conceder acesso, enquanto o outro usa essa identidade verificada para controlar o acesso.

O que vem primeiro, autenticação ou autorização?

A autenticação e a autorização dependem da identidade.

Como você não pode autorizar um usuário ou serviço antes de identificá-los, a autenticação sempre vem antes da autorização.

Novamente, podemos nos referir ao nosso exemplo da empresa para ilustrar esse ponto.

Como mencionado, os vendedores podem apenas criar e visualizar pedidos, enquanto os gerentes também podem acessar os dados diários de vendas. Se o sistema POS não puder identificar qual usuário está acessando o sistema, ele não poderá fornecer o nível de acesso correto.

A autenticação fornece as necessidades de autorização de identidade verificada para controlar o acesso. Quando José ou Maria entram no sistema, o aplicativo sabe quem entrou e qual função deve atribuir à identidade deles.

Gostou do artigo? clique no ícone👏e também me siga para ver as próximas publicações !!

--

--

Marcio Nizzola
Marcio Nizzola

Written by Marcio Nizzola

Microsoft MVP | Software Architect na CI&T | Prof. da Etec Itu | Membro Fundador da Comunidade Itu Developers.

No responses yet