O HTTP é sem memória (stateless): cada requisição é independente, o servidor não lembra da anterior. Então como o site sabe que você continua logado ao clicar na próxima página?
Resposta: cookies. Quando você faz login, o servidor devolve um cookie (Set-Cookie: sessao=abc123). O navegador guarda e reenvia automaticamente esse cookie em toda requisição seguinte. É o seu "crachá" que prova, a cada porta, que você já passou pela recepção.
login OK ──▶ servidor manda: Set-Cookie: token=ABC
próxima req ──▶ navegador manda de volta: Cookie: token=ABC ──▶ "ah, é você de novo"
Segurança dos cookies — três "flags" que você vai procurar (Ex. 10.3):
HttpOnly— o JavaScript da página não consegue ler o cookie. Isso protege o crachá de ser roubado por um ataque de XSS (0.12).Secure— o cookie só viaja por HTTPS (nunca em texto puro).SameSite— controla se o cookie é enviado quando outro site faz um pedido ao seu. Defesa contra CSRF (fazer o navegador da vítima agir sem ela saber). (Ex. 14)
Por que importa: roubar ou forjar o "crachá" = virar outra pessoa (muitas vezes o admin). Metade dos ataques de autenticação gira em torno disto.