Vinícius, tudo bem?
As sessões funcionam um pouquinho diferente do que você propôs ai.
Wikipédia:
Em ciência da computação, em particular em rede de computadores, uma sessão é um intercâmbio de informações interativas semi-permanente, também conhecida como um diálogo, uma conversação ou uma reunião entre dois ou mais dispositivos comunicantes, ou entre um computador e um usuário
Para lidar com isso, devemos falar sobre sistemas de login/logout, que iniciam uma comunicação entre dois dispositivos. No geral, hoje em dia, é mais comum usarmos tokens do que cookies para a authenticação de usuários, visto que o window.localStorage
no javascritp é muito mais simples de lidar.
Usava-se muito os cookies na época dos sites PHP mais antigos, onde as informações de login e preferências eram guardadas também no navegador em um arquivo de até 4 mb. Eles eram bons por que podiam ser usados para identificar se um usuário estava logado, mas tinham problemas maiores de segurança
As sessions são mais usadas para chats, onde o usuário precisa logar, mas o acesso dele acaba rapidamente. Eles são bons por permitirem uma autenticação rápida e que ao término do uso, desaparece. Isso seja ao fechar o navegador ou ao atingir um tempo limite, definido no timestamp dentro de um cookie ou de um token.
Para entender melhor: