📊 Slides: Cap 20 — Login na Arena: Auth e Tokens

📖 Ver Cap 20 completo

Resumo visual da aula, em blocos — use como roteiro de revisão ou apresentação.


🟦 Slide 1: Objetivo da Aula


🟦 Slide 2: O Cenário Prático

Hackers tentam burlar o ranking enviando pontuações falsas como se fossem outros jogadores. Crie a Trava de Segurança: login com senha → recebe um “Cartão de Acesso” (Token) → servidor só aceita com esse cartão.


🟦 Slide 3: Dicionário do Programador

Termo Significado
Autenticação Provar quem você é (login e senha)
Token JWT “Crachá Digital” — dados criptografados + assinatura
Bearer Token “Eu sou o portador deste token, me deixe entrar”

🏗️ Checklist: cabeçalho Authorization: Bearer <SEU_TOKEN> em toda chamada Retrofit


🟦 Slide 4: Do Login ao Crachá

graph TD
    A["App: Envia Senha"] --> B["Servidor: Valida"]
    B --> C["Entrega Crachá: JWT"]
    C --> D["App: Salva o Crachá"]
    D --> E["Próxima Chamada: Mostra Crachá"]

🟦 Slide 5: Exemplo — O Interceptor Real

fun prepararCabecalho(token: String): String {
    return "Bearer $token"
}

class AuthInterceptor(private val token: String) : Interceptor {
    override fun intercept(chain: Interceptor.Chain): Response {
        val requisicaoOriginal = chain.request()

        val requisicaoComToken = requisicaoOriginal.newBuilder()
            .addHeader("Authorization", prepararCabecalho(token))
            .build()

        return chain.proceed(requisicaoComToken)
    }
}

🟦 Slide 6: Prática e Próximos Passos


⬅️ Voltar para Slides