Sobes.tech
Junior — Middle

Como é que realizaste o processo de verificação da autenticidade do utilizador?

sobes.tech IA

Resposta da IA

Em C# para verificar a autenticidade do utilizador, muitas vezes utiliza-se o mecanismo de autenticação através do ASP.NET Identity ou JWT (JSON Web Tokens). O processo geralmente inclui os seguintes passos:

  1. O utilizador insere o nome de utilizador e a palavra-passe.
  2. O servidor verifica esses dados comparando-os com os armazenados na base de dados (as palavras-passe são armazenadas em forma de hashes).
  3. Se os dados estiverem corretos, o servidor cria um token (por exemplo, JWT) ou estabelece um cookie de autenticação.
  4. Em pedidos subsequentes, o servidor verifica a presença e validade do token ou cookie para confirmar a autenticidade.

Exemplo de criação de JWT em C# usando a biblioteca System.IdentityModel.Tokens.Jwt:

var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("chave_secreta"));
var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256);

var token = new JwtSecurityToken(
    issuer: "seudominio.com",
    audience: "seudominio.com",
    claims: claims, // lista de afirmações sobre o utilizador
    expires: DateTime.Now.AddHours(1),
    signingCredentials: credentials);

string tokenString = new JwtSecurityTokenHandler().WriteToken(token);

Assim, a verificação de autenticidade reduz-se a validar os dados inseridos e emitir um token que confirma que o utilizador está autorizado.