Reino OIDC

Aprenda OAuth 2.0 e OpenID Connect atrav�s de uma Aventura

Educacional Interativo OAuth 2.0 OIDC

Bem-vindo ao Reino OIDC!

Uma terra m�gica onde a autentica��o e autoriza��o ganham vida atrav�s de personagens, aventuras e magia. Aqui, conceitos complexos de OAuth 2.0 e OpenID Connect se transformam em uma jornada �pica de aprendizado!

Projeto Educativo
Gamifica��o de Conceitos T�cnicos

A Hist�ria do Reino

Era Uma Vez...

H� muito tempo, em uma terra distante, existia o Reino OIDC, onde todos os cidad�os precisavam se identificar para acessar diferentes locais e servi�os.

?? O Problema do Reino

No in�cio, cada estabelecimento tinha seu pr�prio sistema de identifica��o. Os cidad�os precisavam carregar dezenas de cart�es diferentes - um para a biblioteca, outro para o banco, outro para o hospital...

Isso n�o era muito pr�tico, n�o � mesmo?

? A Solu��o M�gica

Ent�o surgiu a Grande Alian�a OIDC - um sistema onde voc� se identifica uma vez com o Guardi�o das Identidades e ele garante sua entrada em todos os estabelecimentos aliados!

Paralelo T�cnico

O Reino OIDC � uma met�fora completa para o funcionamento real de sistemas de autentica��o modernos:

?? Reino OIDC
?
Ecosystem OAuth/OIDC
??? Guardi�o das Identidades
?
Authorization Server (AS)
?? Cidad�o/Aprendiz
?
Resource Owner (User)
?? Estabelecimentos
?
Resource Servers
?? Pergaminho de Acesso
?
Access Token
?? Medalh�o de Identidade
?
ID Token (JWT)

Personagens do Reino

Guardi�o das Identidades

Authorization Server

Poder: Verificar identidades e conceder acessos

Personalidade: Rigoroso mas justo, nunca erra uma identifica��o

Papel T�cnico: Implementa OAuth 2.0/OIDC flows, gera tokens JWT, mant�m registro de clients

Autentica��o Autoriza��o JWT Tokens

O Aprendiz (Voc�!)

Resource Owner / End User

Jornada: Aprender os segredos da autentica��o

Objetivo: Dominar os flows OAuth e OIDC

Papel T�cnico: Usu�rio final que autoriza acesso a seus recursos atrav�s de consent screens

Curiosidade Aprendizado Experimenta��o

Comerciantes Aliados

Client Applications

Servi�os: Biblioteca, Banco, Hospital, Loja

Necessidade: Verificar identidade sem gerenciar senhas

Papel T�cnico: Aplica��es que confiam no Authorization Server para autenticar usu�rios

Confian�a Integra��o Especializa��o

Guardi�es dos Tesouros

Resource Servers

Responsabilidade: Proteger dados e recursos valiosos

M�todo: S� aceitam pergaminhos v�lidos (tokens)

Papel T�cnico: APIs que validam tokens e servem recursos protegidos

Valida��o Prote��o Recursos

A Jornada do Aprendiz

Siga os passos do nosso her�i atrav�s dos diferentes flows OAuth/OIDC:

1

Chegada ao Reino

Cen�rio: O Aprendiz chega ao Reino e precisa se registrar

Conceito: Client Registration - como aplica��es se registram no AS

Implementa��o:
// Client Registration
{
  "client_name": "Biblioteca Real",
  "redirect_uris": ["https://biblioteca.reino.com/callback"],
  "grant_types": ["authorization_code"],
  "scope": "openid profile email"
}
2

Primeira Identifica��o

Cen�rio: Aprendiz se apresenta ao Guardi�o das Identidades

Conceito: Authorization Code Flow - fluxo mais seguro

Authorization Request:
GET /auth?
  response_type=code&
  client_id=biblioteca_real&
  redirect_uri=https://biblioteca.reino.com/callback&
  scope=openid+profile&
  state=xyz123
3

Recebendo o Pergaminho

Cen�rio: Guardi�o entrega pergaminho m�gico ap�s verifica��o

Conceito: Token Exchange - trocar authorization code por tokens

Token Response:
{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGc...",
  "id_token": "eyJ0eXAiOiJKV1QiLCJhbGc...",
  "refresh_token": "8xLOxBtZp8",
  "expires_in": 3600,
  "token_type": "Bearer"
}
4

Visitando Estabelecimentos

Cen�rio: Usando pergaminho para acessar diferentes servi�os

Conceito: Resource Access - usar tokens para acessar APIs protegidas

API Request:
GET /api/livros HTTP/1.1
Host: biblioteca.reino.com
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGc...
5

Renovando Poderes

Cen�rio: Pergaminho expira, precisa de renova��o autom�tica

Conceito: Refresh Token Flow - renovar acesso sem re-autenticar

Refresh Request:
POST /token
grant_type=refresh_token&
refresh_token=8xLOxBtZp8&
client_id=biblioteca_real

Implementa��o no Mundo Real

O Reino OIDC n�o � apenas uma hist�ria - � um projeto funcional que implementa todos os conceitos!

Authorization Server

Implementado com Flask e bibliotecas OAuth especializadas:

# app/auth_server.py
from flask import Flask
from authlib.integrations.flask_oauth2 import AuthorizationServer
from authlib.oauth2.rfc6749.grants import AuthorizationCodeGrant

app = Flask(__name__)
authorization = AuthorizationServer(app)

@app.route('/authorize', methods=['GET', 'POST'])
def authorize():
    # Implementa authorization endpoint
    return authorization.create_authorization_response()

@app.route('/token', methods=['POST'])  
def issue_token():
    # Implementa token endpoint
    return authorization.create_token_response()

Client Application

Biblioteca Real implementada como cliente OAuth:

# biblioteca/app.py
from authlib.integrations.flask_client import OAuth

oauth = OAuth(app)
reino_oidc = oauth.register(
    name='reino',
    client_id='biblioteca_real',
    client_secret='secret_super_seguro',
    server_metadata_url='https://reino.oidc.com/.well-known',
    client_kwargs={'scope': 'openid profile email'}
)

@app.route('/login')
def login():
    redirect_uri = url_for('callback', _external=True)
    return reino_oidc.authorize_redirect(redirect_uri)
Demo Interativa

Acesse https://reino.caracore.com.br para experimentar todos os flows em um ambiente controlado e educativo!

Cen�rios de Aprendizado

Iniciante

Caminho Feliz

Aprenda o fluxo b�sico OAuth sem complica��es. Perfeito para entender os conceitos fundamentais.

  • Authorization Code Flow
  • Redirect URIs
  • Access Tokens b�sicos
  • User Info endpoint
?? 30-45 minutos

Intermedi�rio

Desafios do Reino

Enfrente situa��es mais complexas com m�ltiplos clients e scopes diferentes.

  • Multiple Grant Types
  • Scope Management
  • Refresh Tokens
  • JWT Claims customizados
?? 1-2 horas

Avan�ado

Mestre do Reino

Domine conceitos avan�ados como PKCE, device flow e federa��o de identidades.

  • PKCE Extension
  • Device Authorization Grant
  • Identity Federation
  • Security Best Practices
?? 2-3 horas

Recursos Educativos

Material Did�tico

  • ?? Guia Ilustrado: Hist�ria completa com diagramas
  • ?? V�deo Tutoriais: Flows animados passo a passo
  • ?? Exerc�cios Pr�ticos: Implementa��es guiadas
  • ?? Quizzes Interativos: Teste seu conhecimento
  • ?? Certifica��o: Comprove seu aprendizado

C�digo de Exemplo

  • ?? Python/Flask: Authorization Server completo
  • ?? JavaScript: Client SPA implementation
  • ?? Mobile Examples: iOS e Android clients
  • ?? Postman Collection: Todos os endpoints test�veis
  • ?? Docker Setup: Ambiente completo em containers
Download do Reino

Todo o material est� dispon�vel no GitHub com licen�a MIT. Clone o reposit�rio e comece sua jornada:

git clone https://github.com/cara-core/reino-oidc
cd reino-oidc
docker-compose up -d
# Acesse http://localhost:3000 para come�ar!

Casos de Uso Reais

Veja como os conceitos do Reino se aplicam em cen�rios reais:

Login Social

"Login com Google" usa exatamente o mesmo flow que o Reino OIDC - Authorization Code com PKCE.

SSO Empresarial

Funcion�rios acessam m�ltiplas aplica��es internas com um �nico login - como os estabelecimentos do Reino.

APIs Mobile

Apps m�veis usam refresh tokens para manter sess�es ativas - como renovar pergaminhos no Reino.

Microservi�os

Cada servi�o valida tokens JWT independentemente - como os Guardi�es dos Tesouros.

Laborat�rio Pr�tico

Ambiente de Laborat�rio

Experimente implementar seu pr�prio Reino OIDC seguindo nosso tutorial passo a passo!

??? Construindo o Reino

  1. Setup do Projeto
    mkdir meu-reino-oidc
    cd meu-reino-oidc
    python -m venv venv
    pip install flask authlib
  2. Authorization Server M�nimo
  3. Client de Teste
  4. Resource Server
  5. Frontend Interativo

?? Experimentos

  • Flow Variations: Teste diferentes grant types
  • Security Testing: Tente ataques comuns
  • Performance: Me�a lat�ncia de valida��o
  • Customization: Adicione claims customizados
  • Integration: Conecte com providers reais

Sua Jornada Come�a Agora!

Pronto para se tornar um mestre da autentica��o no Reino OIDC?

Desafio Final

Complete todos os cen�rios do Reino e implemente seu pr�prio Authorization Server. Ao final, voc� ter� dominado OAuth 2.0 e OIDC! Pol�tica institucional: vers�o Free sem cobran�a; recursos Premium liberados somente ap�s confirma��o de pagamento e registro LGPD.