Área 51 — Loja
Menu

Fronteiras de controle e validação de segurança

O pacote Área 51 separa fronteira on-premises (infraestrutura local) de configuração OIDC (protocolo) e executa validações repetíveis antes de promover ambientes críticos.

Desacoplamento de variáveis de ambiente

flowchart TB
    subgraph FR["Fronteira — AREA51_FRONTIER_*"]
        F1["Perfil lab / homolog / prod"]
        F2["Host e porta do IdP"]
        F3["Host, porta e URL pública da app"]
    end
    subgraph OIDC["Cliente OIDC — OIDC_*"]
        O1["Realm e client_id"]
        O2["redirect_uri e scopes"]
        O3["Segredos via secret manager"]
    end
    subgraph OUT["Saída validada"]
        V["Configuração pronta
para homologação"] end FR --> OIDC OIDC --> V

Controlos de segurança no fluxo

flowchart LR
    A["Authorization request"] --> B{"PKCE S256?"}
    B -->|Sim| C{"state válido?"}
    B -->|Não| X["Rejeitar baseline"]
    C -->|Sim| D["Troca de code"]
    C -->|Não| X
    D --> E{"JWT assinatura
exp e audiência?"} E -->|Sim| F["Sessão / API protegida"] E -->|Não| X

Pipeline de validação da baseline

sequenceDiagram
    autonumber
    participant EQ as Equipa licenciada
    participant BL as Validação baseline
    participant KC as Keycloak lab

    EQ->>BL: Fase dev — testes automatizados
    Note over BL: Scripts OIDC e protocolo OAuth 2.1
    EQ->>BL: Fase config — Google e Entra
    Note over BL: Parâmetros PKCE e redirect_uri
    EQ->>BL: Fase env — fronteira + OIDC
    Note over BL: Esquema on-premises desacoplado
    opt IdP activo
        EQ->>BL: Fase operational
        BL->>KC: validate_oidc_flow
        Note over KC: Discovery, code, tokens
    end
    BL->>EQ: Evidência para auditoria interna
                

Controlos incluídos na baseline

Controle Ameaça tratada Como validar
PKCE (S256) Interceptação do authorization code Testes dev + fluxo operacional
Parâmetro state CSRF em redirects Validação na troca de tokens
Assinatura JWT Token adulterado Testes integrados e API protegida
Expiração de token Replay prolongado Parâmetros documentados nos guias
Cookie HTTP-only (exemplo) Exposição via script no browser App de referência Flask
HTTPS em produção Redirect em claro Perfil prod exige redirect HTTPS
Transparência: a baseline cobre lab e homologação assistida. Produção exige hardening, políticas internas e, frequentemente, Suporte Área 51 contratado.