Conceito e lógica do sistema de login?

Quero saber o processo que normalmente os aplicativos Web seguem para manter o login entre várias solicitações e também como eles gerenciam as coisas usando COOKIES.

No meu formulário de login, estou fornecendo o recurso "Lembrar-me".

Quando o login do usuário, eu verifico a validade do nome de usuário e senha do banco de dados. Se for válido, verifico se "Lembrar de mim" está selecionado; se sim, armazena o nome de usuário e a senha na sessão, no formato criptografado. E, finalmente, armazenando nome de usuário e senha em SESSION.

Quando o usuário navega de uma página para outra, primeiro eu executo o script de verificação de login que verifica se existe algum valor nos cookies e, em seguida, valida esse nome de usuário e senha do banco de dados, para verificar sua validade. Se não houver valor no cookie e houver algum valor na sessão, estou buscando o valor da sessão e não o verificando no db.

Não estou verificando o valor da sessão no formulário db para não bater no db desnecessariamente, acelerar as coisas. No caso de cookies, eles podem ser modificados, portanto, é necessário verificar.

Este é o meu conceito, certo? É o caminho a percorrer e, normalmente, o site diminui o SO, e outros trabalhos sobre esse tipo de método?

Ou os sites verificam a autenticidade do login em cada carregamento da página, não importa a sessão ou os cookies?

Por favor, verifique e dê seus pensamentos e conceitos para este cenário.

Obrigado!

questionAnswers(1)

yourAnswerToTheQuestion