0Pricing
Flask Academy · Aula

SECRET_KEY e cookies assinados

Entenda como o Flask assina dados da sessão com segurança.

SECRET_KEY e cookies assinados é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 2 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.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Where Sessions Live

By default Flask stores the whole session inside a cookie in the user's browser, not on your server. That has big implications.

The Tampering Problem

If data lives in the browser, a user could edit it. Flask stops that by signing the cookie so changes are detectable.

Meet the SECRET_KEY

Signing needs a secret. The SECRET_KEY is the private value Flask uses to stamp and verify every session cookie. 🔑

app.config['SECRET_KEY'] = 'change-me'

No Key, No Sessions

Touch the session without a SECRET_KEY set and Flask raises a RuntimeError. It refuses to sign with nothing.

Signed, Not Encrypted

Important: a default session cookie is signed, not encrypted. Anyone can read it, so never store true secrets inside.

How Signing Verifies

On each request Flask recomputes the signature from the cookie and the key. A mismatch means tampering, so the session is rejected.

Make It Long and Random

A strong SECRET_KEY should be long and unpredictable. Generate one with the secrets module rather than typing a word.

import secrets
key = secrets.token_hex(32)

Never Hardcode in Git

Keep the SECRET_KEY out of source control. Load it from an environment variable so each deploy has its own value.

import os
app.config['SECRET_KEY'] = os.environ['SECRET_KEY']

Rotating the Key

Change the SECRET_KEY and every existing session signature stops matching. All users get logged out at once.

Same Key Everywhere

Run several app instances behind a load balancer? They must share one SECRET_KEY or each will reject the others' cookies.

Server-Side Alternative

Need bigger or hidden session data? Extensions like Flask-Session keep it on the server and store only an id in the cookie.

Quick Check

Think about what the default Flask session cookie actually protects.

Recap

You saw that SECRET_KEY signs session cookies to catch tampering. Make it long, load it from the environment, and never commit it. 🔐

Perguntas Frequentes

A aula “SECRET_KEY e cookies assinados” é grátis?

Sim — o texto completo de “SECRET_KEY e cookies assinados” é 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 “SECRET_KEY e cookies assinados”?

Entenda como o Flask assina dados da sessão com segurança. 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 2 de 4.

Quanto tempo leva a aula “SECRET_KEY e cookies assinados”?

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. Defina e leia o dicionário session
  2. SECRET_KEY e cookies assinados
  3. Defina cookies personalizados em uma resposta
  4. Mensagens flash entre solicitações
← Voltar para Flask Academy