0Pricing
Flask Academy · Aula

login_user, logout_user e sessões

Autentique e desconecte usuários de uma sessão.

login_user, logout_user e sessões é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.

Fazendo login de alguém

Depois que a senha é validada, informe ao Flask-Login que o usuário entrou no sistema chamando login_user. Essa única chamada configura a sessão para o senhor.

from flask_login import login_user
login_user(user)

Uma rota de login típica

Em uma tela de login, encontre o usuário, verifique a senha e então chame login_user. Depois disso, redirecione-o para uma página real, como o painel.

if user and user.check_password(pw):
    login_user(user)
    return redirect(url_for("dashboard"))

O que login_user armazena

login_user não salva o objeto inteiro. Ele grava o identificador do usuário no cookie da sessão, e seu carregador_de_usuário reconstrói o usuário posteriormente.

Lembrar de mim

Passe remember=True para manter o usuário conectado depois que o navegador for fechado. O Flask-Login define um cookie de longa duração, em vez de um cookie válido apenas durante a sessão.

login_user(user, remember=True)

Acessando current_user

Em qualquer tela, o senhor pode ler current_user para obter a pessoa conectada. Ele é um representante que sempre aponta para o usuário da solicitação ativa.

from flask_login import current_user
name = current_user.username

Usuários anônimos

Se ninguém estiver conectado, current_user será um objeto de usuário anônimo. Seu is_authenticated será False, portanto o senhor poderá usar essa condição com segurança.

if current_user.is_authenticated:
    show_dashboard()

Saindo da conta

Para desconectar um usuário, chame logout_user. Isso remove o identificador dele da sessão, para que a próxima solicitação volte a tratá-lo como anônimo.

from flask_login import logout_user
logout_user()

Uma rota de saída

Uma tela de saída é pequena: chame logout_user e depois redirecione para a página inicial. Não há senha a verificar, apenas a sessão a limpar.

@app.route("/logout")
def logout():
    logout_user()
    return redirect(url_for("index"))

Chave secreta obrigatória

As sessões são transportadas em um cookie assinado, portanto seu aplicativo precisa de uma SECRET_KEY. Sem ela, login_user gera um erro e nada funciona.

app.config["SECRET_KEY"] = "a-long-random-value"

As sessões são individuais

Cada navegador recebe seu próprio cookie assinado, portanto dois usuários nunca veem a sessão um do outro. O Flask-Login mantém tudo devidamente separado.

Cumprimentando o usuário

Nos modelos, o senhor também pode usar current_user, pois o Flask-Login o injeta. Assim, criar uma barra de navegação personalizada se resume a uma linha.

<p>Hello, {{ current_user.username }}</p>

Verificação rápida

Um usuário clica em Sair. Qual chamada encerra a sessão dele?

Recapitulação

Agora, o senhor chama login_user depois de verificar a senha, lê current_user em qualquer lugar e chama logout_user para encerrar uma sessão. Uma SECRET_KEY mantém tudo conectado. 🔑

Perguntas Frequentes

A aula “login_user, logout_user e sessões” é grátis?

Sim — o texto completo de “login_user, logout_user e sessões” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.

O que vou aprender em “login_user, logout_user e sessões”?

Autentique e desconecte usuários de uma sessão. Você pratica Flask Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Flask Academy?

Nenhuma experiência prévia é necessária. Flask Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “login_user, logout_user e sessões”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Flask Academy?

Sim. Cada aula de Flask Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Faça hash das senhas, nunca armazene texto simples
  2. Carregador de usuários e UserMixin
  3. login_user, logout_user e sessões
  4. Proteja visualizações com login_required
← Voltar para Flask Academy