Skip to main content

Bloquear minha conta ("não fui eu")

Tela de autoatendimento para quando a pessoa recebe um alerta de acesso à sua conta que não reconhece. Ao confirmar, o Portal bloqueia a conta e encerra todas as sessões ativas — só o suporte consegue reverter depois.

Tela de confirmação com o título Bloquear minha conta, o aviso sobre o acesso não reconhecido e os botões Bloquear conta e Cancelar

:::caution Achado real: botão "Cancelar" ilegível (bug de contraste, não é falha de captura) O botão Cancelar usa a variante outlined do PrimeNG (security-lock-account.component.html) — borda visível, mas o texto fica praticamente invisível sobre o fundo escuro desta página (que, diferente das outras telas de autenticação, não tem o cartão branco de fundo). O mesmo acontece com o botão Ir para o login no estado "Link inválido" (mesma variante outlined, mesmo case "error" do componente). Reproduzido nas duas capturas desta página — não é um problema do levantamento, é um bug de contraste real. A confirmar — responsável: time de frontend; data: 24/09/2026. :::

Antes de começar​

  • Rota: /security/lock-account?token=<token> (sem :tenant no caminho).
  • Componente: SecurityLockAccountComponent (@pages/authentication/security-lock-account).
  • É preciso ter um token assinado na URL, recebido no e-mail de alerta de acesso ("alguém acessou sua conta"). Esse e-mail é disparado por uma verificação de acesso suspeito (ex.: novo dispositivo/local) — o gatilho exato desse alerta é de outro módulo, fora do escopo deste levantamento (que cobriu o frontend de autenticação).
  • A confirmar — responsável: time de frontend; data: 24/09/2026.: como e quando esse e-mail de alerta é disparado. Não foi possível gerar um e-mail de alerta real nesta rodada para obter um token de produção — o comentário no código-fonte do componente descreve o cenário ("item 9, não fui eu") mas o gatilho em si não foi localizado nem reproduzido.

Permissões e acesso​

Pública — de propósito. O comentário no código explicita que não há authGuard: o token assinado da URL é a própria credencial, porque o dono real da conta pode não ter (ou não querer) uma sessão válida no momento em que percebe o acesso indevido. A rota fica fora do grupo de rotas autenticadas (tem data: { skipMfaRequired: true }, isentando-a também do redirecionamento de "MFA obrigatório").

Caminho principal​

  1. A pessoa clica no link do e-mail de alerta de acesso.
  2. A tela mostra a confirmação: "Alguém acessou sua conta. Se não foi você, bloqueie sua conta agora — isso encerrará todas as sessões ativas e você precisará contatar o suporte para recuperar o acesso."
  3. Se for engano (foi a própria pessoa que acessou), clica em Cancelar e vai para a home.
  4. Se não reconhece o acesso, clica em Bloquear conta.
  5. Em sucesso, a tela muda para "Conta bloqueada" e oferece um botão para ir à tela de login.

Estados e mensagens​

EstadoQuando aparecePrint
ConfirmaçãoToken presente na URLTela de confirmação com aviso sobre acesso não reconhecido e os botões Bloquear conta e Cancelar
Link inválidoSem token na URLTela mostrando a mensagem Link de bloqueio inválido ou expirado, com o botão Ir para o login
Erro ao bloquearA chamada à API falhaToast de erro Não foi possível bloquear a conta. Tente novamente, sobre a tela de confirmação
Bloqueado com sucessoA API confirma o bloqueioNão observado nesta rodada — ver nota abaixo

:::caution Endpoint indisponível neste ambiente Ao testar o botão Bloquear conta neste levantamento (com um token de teste, sem validade real), a chamada POST /api/v1/default/security/lock-account respondeu 404 neste ambiente — o que fez a tela cair no estado de erro genérico ("Não foi possível bloquear a conta. Tente novamente."), capturado acima. Isso confirma que a tela trata falhas da API corretamente, mas não foi possível confirmar o estado de sucesso real ("Conta bloqueada") nem a rota de backend correspondente neste ambiente. A confirmar — responsável: time de backend (IAM); data: 24/09/2026.: se o endpoint /api/v1/:tenant/security/lock-account está implantado neste ambiente e, se sim, por que respondeu 404. :::

Validações e falhas de backend​

SituaçãoOnde é validadaComportamentoComo se recupera
Token ausente na URLVerificado no próprio componente, antes de chamar a APIMostra direto "Link de bloqueio inválido ou expirado"Usar o link do e-mail de alerta mais recente
Falha ao chamar a API (token inválido, endpoint indisponível, etc.)POST /api/v1/:tenant/security/lock-accountVolta ao estado de confirmação e mostra toast de erroTentar novamente; se persistir, contatar o suporte

Regras de negócio​

IDRegraO que a tela reflete
RN-01Bloqueio encerra todas as sessões ativasO aviso na tela informa isso antes de a pessoa confirmar
RN-02Reversão exige suporteA tela não oferece nenhuma forma de desfazer o bloqueio sozinho

A confirmar — responsável: time de backend (IAM); data: 24/09/2026.: esta rota (/api/v1/:tenant/security/lock-account) não pertence ao módulo identity/authentication reescrito recentemente (documentado em Authentication — visão geral) — é um endpoint de estilo mais antigo (prefixo /api/v1/:tenant/...). Não existe página de referência de API para ele nesta documentação ainda.

Informações técnicas​

Rota da tela: /security/lock-account · Acesso: Público (token assinado na URL)

Rotas de API consumidas:

MétodoRotaQuando é chamada
POST/api/v1/:tenant/security/lock-accountAo clicar em Bloquear conta

→ Referência de API: A confirmar — responsável: time de backend (IAM); data: 24/09/2026. (não localizada nesta documentação).

Relacionado​