Um Tribunal Regional do Trabalho está implementando uma API ...

Próximas questões
Com base no mesmo assunto
Q3290590 Segurança da Informação
Um Tribunal Regional do Trabalho está implementando uma API RESTful para permitir que advogados acessem informações de processos judiciais de maneira segura, sigilosa e eficiente. Para proteger a API RESTtful, a prática mais adequada é  
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Para resolver essa questão, precisamos compreender o tema central: autenticação em APIs RESTful. Esse é um conceito fundamental na área de segurança da informação, especialmente para aqueles que trabalham com desenvolvimento e suporte em TI.

As APIs RESTful são amplamente utilizadas para comunicação entre sistemas de forma eficiente e padronizada. No entanto, garantir a segurança e a confidencialidade das informações transmitidas é crucial, especialmente em contextos jurídicos, como o acesso a processos judiciais.

A prática mais adequada para proteger uma API RESTful é a utilização de tokens JWT (JSON Web Tokens) para autenticação, que é a alternativa D.

Justificativa da Alternativa Correta (D): Utilizar JSON Web Tokens (JWT) é uma prática segura e eficiente para autenticação em APIs RESTful. JWTs são compactos, seguros e podem ser transmitidos via URL, parâmetros de POST ou em um cabeçalho HTTP. Eles possibilitam a verificação de identidade do usuário e a integridade das informações com uma assinatura. Conforme descrito na documentação da RFC 7519, JWTs são uma escolha robusta para autenticação, garantindo que apenas usuários autorizados acessem as informações.

Análise das Alternativas Incorretas:

A - Utilizar apenas HTTPS: Embora o HTTPS seja crucial para proteger a comunicação entre o cliente e o servidor, garantindo a confidencialidade e a integridade dos dados em trânsito, ele não cobre a autenticação por si só. A segurança de uma API requer mecanismos adicionais para autenticação e autorização.

B - Implementar autenticação básica com nome de usuário e senha em texto claro: Esta prática é inadequada porque expõe credenciais sensíveis, tornando-as suscetíveis a interceptações. Mesmo com HTTPS, armazenar ou transmitir senhas em texto claro é considerado inseguro.

C - Permitir acesso anônimo e monitorar acessos suspeitos manualmente: Isso comprometeria a segurança da aplicação, pois não há controle sobre quem acessa os dados, além de ser impraticável e ineficiente realizar monitoramentos manuais em um ambiente complexo.

E - Armazenar senhas de usuários em cookies não criptografados: Esta é uma prática extremamente insegura. Cookies são frequentemente alvos de ataques, e armazenar informações sensíveis como senhas sem criptografia coloca os dados em risco.

Portanto, a alternativa que melhor atende aos requisitos de segurança para a autenticação em APIs RESTful é a alternativa D, que utiliza tokens JWT.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Utilizar JSON Web Tokens (JWT) para autenticação envolve um processo onde, após um usuário se autenticar, o servidor gera um JWT que contém informações sobre o usuário. Este token é então enviado ao cliente, que o utiliza em solicitações subsequentes para acessar recursos protegidos. O servidor verifica a integridade e a validade do token antes de conceder acesso. 

Processo detalhado:

  1. Login do usuário: O cliente envia credenciais de login para o servidor. 
  2. Geração do JWT: Se as credenciais forem válidas, o servidor cria um JWT contendo informações sobre o usuário (payload) e o assina digitalmente. 
  3. Envio do token: O JWT é enviado de volta ao cliente. 
  4. Armazenamento do token: O cliente armazena o JWT, normalmente no localStorage ou em um cookie. 
  5. Solicitações protegidas: Para acessar rotas protegidas, o cliente inclui o JWT no cabeçalho da solicitação (geralmente no campo  com o valor ). 
  6. Verificação do token: O servidor verifica o JWT, extraindo as informações do usuário e validando a assinatura para garantir a autenticidade e a validade do token. 
  7. Acesso ao recurso: Se o token for válido, o servidor processa a solicitação e concede acesso ao recurso. 

Vantagens do JWT:

  • Autenticação sem estado:
  • O servidor não precisa armazenar informações de sessão, o que facilita a escalabilidade. 
  • Segurança:
  • Os tokens são assinados digitalmente, garantindo a sua autenticidade e integridade. 
  • Portabilidade:
  • Os JWTs podem ser utilizados em diferentes plataformas e tecnologias. 
  • Flexibilidade:
  • Permitem a inclusão de dados personalizados no token, permitindo uma autorização granular. 

Outras considerações:

  • Segurança: É importante proteger o segredo da chave utilizada para assinar os JWTs. 
  • Tempo de vida do token: O JWT deve ter um tempo de vida limitado para garantir a segurança. 
  • Reutilização de tokens: Se o token for roubado, ele pode ser usado por um invasor para acessar recursos protegidos. É importante implementar mecanismos para revogar tokens invalidos. 
  • HTTPS: É altamente recomendável utilizar HTTPS para proteger a transmissão dos JWTs. 
  • Armazenamento do token: O local onde o token é armazenado (localStorage, cookie, etc.) pode influenciar a segurança da aplicação. 

E lá vamos nós novamente! CPU-PE #78 DIAS

Acho essa questão errada, JWT é correto, mas toda a troca de dados em um processo de autenticação seguro é por HTTPS, não teria sentido fazer alguma troca por outro protocolo. A letra A é simplesmente mais geral, mais certa que a D, embora ambas estejam certas.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo