Cadernos de Questões

Provas Favoritas

Filtros Salvos

Foi encontrada 1 questão.
#3690047

Considere a seguinte situação hipotética:
Um desenvolvedor PHP deseja implementar uma autenticação segura de usuários. Para tanto, implementou o trecho de código para armazenamento seguro da senha, conforme a seguir.
$hash = password_hash($senha, PASSWORD_BCRYPT);
$stmt = $pdo->prepare("INSERT INTO users (user, password) VALUES(?, ?)");
$stmt->execute([$user, $hash]);


Após a etapa de cadastro, é preciso implementar a funcionalidade de autenticação. Considerando o Open Worldwide Application Security Project (OWASP), assinale a opção que representa a IMPLEMENTAÇÃO MAIS SEGURA para inicialização da sessão de usuário:

  • OPÇÃO 1 $stmt = $pdo->prepare("SELECT password FROM users WHERE user = ?"); $stmt->execute([$user]); $row = $stmt->fetch(); if (password_verify($senha, $row['password'])) {  session_start();  session_regenerate_id();  $_SESSION['user'] = $user; }
  • OPÇÃO 2 $row = mysqli_fetch_assoc(mysqli_query($conn, "SELECT password FROM users WHERE user = '".$conn- >real_escape_string($user)."'")); if (password_verify($senha, $row['password'])) {  session_start();  session_regenerate_id(true);  setcookie(session_name(), session_id(), 0, "/", "", false, false);  $_SESSION['user'] = $user; }
  • OPÇÃO 3 $row = mysqli_fetch_assoc(mysqli_query($conn, "SELECT password FROM users WHERE user = '$user'")); if (md5($senha) === $row['password']) {  session_start();  $_SESSION['user'] = $user; }
  • OPÇÃO 4 $row = $pdo->query("SELECT password FROM users WHERE user = '$user'")->fetch(); if (hash('sha1', $senha) === base64_decode($row['password'])) {  session_start();  $_SESSION['user'] = $user; }
Fale com IAgo
IAgo - Assistente IAProva
IA
Olá! Sou o IAgo, seu assistente aqui no IAProvatec 😊
Veja como posso te ajudar:
Agora