Use a autenticação e a autorização na rede

Concluído

Apenas os usuários e os serviços autenticados e autorizados devem acessar recursos de rede como servidores e aplicativos. Cabe a você verificar se o acesso é condicional na autenticação e na autorização.

Nesta unidade, exploraremos como usar a autenticação de rede para autenticar usuários e serviços na rede. Examinaremos também a autorização de rede como um método para verificar se um usuário ou um serviço específico tem acesso ao recurso.

Autenticação de rede

Você deve configurar a autenticação de rede para verificar se os usuários são quem alegam ser. A autenticação é a forma como a rede separa o acesso legítimo do acesso suspeito. Usamos métodos diferentes para implementar a autenticação no nível da rede. Vamos dar uma olhada em alguns desses tipos de autenticação.

Autenticação de senha

A autenticação de senha é a forma de autenticação mais conhecida. O usuário insere um valor secreto, que apenas ele conhece, para obter acesso à rede. As senhas seguras precisam atender a critérios, como ter caracteres em letras minúsculas e maiúsculas, juntamente com números e símbolos (como ?, % ou $). Também recomendamos tornar as senhas as mais longas possíveis.

Autenticação de dois fatores

Diagram depicting two-factor authentication where the authentication token is sent to a mobile device.

A autenticação de dois fatores é um mecanismo que permite que os usuários verifiquem uma tentativa de autenticação. O usuário precisa fornecer um código único enviado ao seu dispositivo como uma confirmação de autenticação. Por exemplo, eles podem receber um código por meio de uma mensagem de texto ou um código gerado por meio de um aplicativo em seu telefone, como o Microsoft Authenticator.

Autenticação por token

A autenticação baseada em token é semelhante à autenticação de dois fatores. No entanto, em vez de usar um telefone celular, que pode ser comprometido, uma empresa pode optar por usar um dispositivo criado especificamente para autenticação. Esse token pode ser um dispositivo habilitado para USB ou um cartão inteligente que o usuário usa para uma autenticação bem-sucedida. Ao usar a autenticação baseada em token, a empresa deverá verificar se o usuário retornará o dispositivo se ele não precisar mais de acesso.

Autenticação biométrica

A autenticação biométrica usa os atributos físicos do usuário para autenticação. Esses atributos são características exclusivamente humanas, como impressões digitais e características faciais ou voz. No entanto, a autenticação baseada em biometria pode ser cara de ser implementada devido ao tipo específico de scanners necessários para lidar com essas informações. As preocupações de privacidade do usuário também podem apresentar problemas.

Autenticação transacional

É possível que você nem sempre queira confiar somente nas informações fornecidas por um usuário. Em vez disso, a autenticação transacional permite examinar as características do usuário. Você pode, por exemplo, esperar que os usuários acessem regularmente a rede dos Estados Unidos durante as horas de trabalho. No entanto, se houver uma conexão do outro lado do mundo à meia-noite, a conta do usuário será sinalizada e o sistema poderá solicitar etapas de verificação adicional do usuário antes da autenticação.

A autenticação transacional fornece uma camada adicional de proteção para a rede.

Autenticação de reconhecimento do computador

A autenticação de reconhecimento do computador examina o dispositivo que está sendo usado para acessar a rede. Uma pequena parte do software é instalada no dispositivo no primeiro uso. Esse software contém um marcador de dispositivo criptográfico. Quando o usuário se conecta, o marcador de dispositivo é verificado para ver se ele está usando o dispositivo autorizado. A autenticação de reconhecimento do computador é especialmente útil se os usuários têm permissão apenas para se conectar em um só dispositivo. Esse método poderá dificultar as coisas se os usuários trocarem de dispositivo regularmente.

CAPTCHA

Screenshot depicting a CAPTCHA test.

O CAPTCHA (teste público de Turing totalmente automatizado para diferenciar seres humanos de computadores) é usado para verificar se a entidade que está tentando acessar um sistema é um humano.

Os invasores podem criar aplicativos que podem automatizar as etapas de logon em contas. Um CAPTCHA apresenta uma imagem ofuscada de um cenário, letras ou números e pede ao usuário para explicar o que vê. Em comparação com humanos, os aplicativos têm dificuldade em identificar fotos, letras e números distorcidos. Os humanos normalmente conseguem distinguir o que é mostrado em uma imagem distorcida.

Entretanto, tenha em mente que esse método pode impor dificuldades para os usuários com deficiência visual.

Logon único

Com o logon único, os usuários podem inserir suas credenciais uma vez para permitir a autenticação em vários aplicativos e ferramentas. Por exemplo, um usuário pode entrar no aplicativo de email e ser automaticamente autenticado nas ferramentas que usa para gerenciar o armazenamento e a segurança da rede. O logon único economiza tempo para os usuários. Esse método também gera um risco de que um só logon único também possa ajudar um invasor a obter acesso a várias plataformas, ferramentas e aplicativos acessando um deles com êxito.

Protocolos de autenticação

Um protocolo de autenticação é um conjunto de regras compartilhado para a troca de informações entre dispositivos eletrônicos. Dois dos protocolos de autenticação usados com mais frequência são o Kerberos e os protocolos TLS/SSL.

Kerberos

O Kerberos é um protocolo de autenticação usado em diferentes sistemas operacionais. O Windows usa o Kerberos como o protocolo de autenticação padrão. O Linux e os sistemas operacionais Mac OS também podem usar o Kerberos.

Diagram that shows the process flow of Kerberos authentication.

O protocolo de autenticação Kerberos depende de um servidor confiável chamado KDC (Centro de Distribuição de Chaves). Um KDC é composto por alguns componentes:

  • Um servidor de autenticação que autentica e emite tíquetes para entidades de segurança, como um usuário ou serviço
  • Um banco de dados que contém informações sobre as entidades de segurança e as respectivas chaves secretas
  • Outro servidor que concede tíquetes de serviço com base nos tíquetes iniciais que as entidades de segurança apresentam

No Kerberos, as entidades de segurança obtêm tíquetes que concedem a eles tíquetes de serviço do KDC. Eles usam esses tíquetes de serviço para acessar recursos, serviços ou aplicativos. Esse processo permanece invisível para o usuário.

TLS/SSL

O TLS e o SSL mais antigo são protocolos para criptografar informações enviadas pela Internet. Como os dados são criptografados, os invasores não podem ver o que é enviado por TLS/SSL.

Muitas vezes, você verá um ícone de cadeado no navegador quando um site fizer uso de uma conexão segura. Esse símbolo significa que o site está usando uma sessão TLS/SSL segura com o navegador. O TLS/SSL também é usado para transferências de arquivos, VoIP e email.

O SSL é o antecessor do TLS e está obsoleto. Frequentemente encontraremos os dois termos sendo usados de maneira intercambiável. Os protocolos funcionam da seguinte maneira:

Diagram that shows the process flow of SSL/TLS process authentication.

  1. O cliente envia uma mensagem "ClientHello" para o servidor. Essa mensagem inclui informações como a versão do SSL/TLS e os algoritmos de criptografia compatíveis com o cliente.

  2. O servidor envia uma mensagem "ServerHello" de volta que inclui o algoritmo escolhido da lista de algoritmos compatível com o cliente. A mensagem também inclui uma ID de sessão, o certificado digital do servidor e a chave pública dele.

  3. O cliente usa o certificado digital para verificar a identidade do servidor com uma autoridade de certificado. Dessa forma, o cliente pode ter certeza de que está lidando com um servidor confiável.

  4. Uma troca de chaves do cliente acontece, em que o cliente envia uma chave compartilhada criptografada com a chave pública do servidor para o servidor.

  5. O cliente envia uma mensagem "concluída" criptografada com a chave compartilhada.

  6. O servidor envia a própria mensagem "concluída" criptografada com a chave compartilhada. Desse ponto em diante, o cliente e o servidor podem continuar trocando mensagens criptografadas com a chave criptografada compartilhada.

Autorização de rede

Quando a autenticação é concluída com sucesso, é preciso garantir que o usuário ou cliente autenticado esteja autorizado a acessar os recursos ou serviços que está solicitando. A autorização pode ser granular. Por exemplo, um usuário de banco de dados específico pode ter permissão para acessar e fazer alterações em um banco de dados individual. Entretanto, o usuário não pode acessar nenhum outro banco de dados por não ter permissões.

As permissões podem incluir leitura, gravação, exclusão, entre outros. Use as permissões certas para o usuário ou o cliente certo. Se um usuário ou um cliente trocar de funções, você poderá alterar as permissões dele para que elas correspondam ao novo nível de acesso. Você deve conceder a cada usuário ou cliente o número mínimo de permissões necessárias para realizar o trabalho. Nunca conceda a um usuário ou um cliente nenhuma permissão que não seja necessária.

Diferenças entre autenticação e autorização

Autenticação Autorização
Confirma se o usuário ou o cliente é quem ele alega ser. Confirma se o usuário ou o cliente pode executar uma ação em um recurso ou um serviço.
Solicita credenciais como nome de usuário ou senha. Verifica as permissões anexadas à conta em segundo plano e, às vezes, indica a permissão necessária.
Deve ocorrer antes da autorização. Ocorre após a autenticação bem-sucedida.
Por exemplo, um membro do RH entra no aplicativo de RH. O membro do RH tenta excluir um usuário do departamento incorreto por engano. A ação foi negada, porque ele não tem as permissões certas para esse departamento.

Verificar seu conhecimento

1.

Que função a autorização desempenha durante um evento de entrada?

2.

Quais das situações a seguir ocorre no processo de handshake do protocolo SSL/TLS?