A gestão de passwords continua a ser um dos vectores de comprometimento mais frequentes em ambientes Microsoft 365. Ataques de password spray (uma password comum testada em muitas contas), brute-force e credential stuffing (uso de passwords vazadas em breaches anteriores) são diários e automatizados. O Microsoft Entra ID oferece três mecanismos complementares para endereçar este problema: SSPR (Self-Service Password Reset), Password Protection (lista de passwords banidas) e Smart Lockout.
Configurar estes três mecanismos correctamente reduz simultaneamente a carga no helpdesk (menos resets manuais) e a superfície de ataque — dois objectivos directamente alinhados com as exigências da NIS2 / DL 125/2025.
Neste artigo
- Política de password padrão do Entra ID
- Expiração de passwords — a recomendação actual da Microsoft
- SSPR — Self-Service Password Reset
- Password Protection — lista de passwords banidas
- Smart Lockout — bloqueio inteligente de ataques
- Ambientes híbridos — AD on-premises + Entra ID
- Comandos PowerShell úteis
- Checklist de configuração
1. Política de password padrão do Entra ID
O Entra ID aplica uma política de password base a todas as contas cloud. A maioria das definições não é editável pelo administrador — são fixas pela Microsoft. As que são configuráveis estão assinaladas na tabela abaixo.
| Parâmetro | Valor padrão | Configurável? |
|---|---|---|
| Comprimento mínimo | 8 caracteres | Não |
| Complexidade | 3 de 4: maiúsculas, minúsculas, números, símbolos | Não |
| Expiração | 90 dias (alterável para “nunca”) | Sim |
| Histórico de passwords | Últimas 10 não podem ser reutilizadas (administradores: 5) | Não |
| Smart lockout — tentativas antes de bloqueio | 10 tentativas falhadas | Sim (P1) |
| Smart lockout — duração inicial do bloqueio | 60 segundos (cresce progressivamente) | Sim (P1) |
| Lista de passwords banidas | Lista global da Microsoft (automática) | Sim — lista personalizada adicional (P1) |
ℹ Contas sincronizadas (híbrido): A política de password do Entra ID aplica-se apenas a contas cloud-only. Para contas sincronizadas do AD on-premises, a política aplicada é a do Active Directory local. Para estender a validação cloud (lista de passwords banidas) ao AD, é necessário instalar o Entra ID Password Protection Agent nos Domain Controllers — ver Secção 6.
2. Expiração de passwords — a recomendação actual da Microsoft
A Microsoft recomenda desactivar a expiração periódica de passwords para utilizadores com MFA activo. A investigação mostrou que forçar mudanças frequentes leva os utilizadores a escolher passwords mais fracas e previsíveis (ex: Empresa2024! → Empresa2025!). Com MFA activo, mesmo que uma password seja comprometida, o atacante não consegue aceder sem o segundo factor.
| Cenário | Recomendação | Justificação |
|---|---|---|
| Utilizadores com MFA activo | Passwords sem expiração | MFA mitiga o risco de password comprometida |
| Utilizadores sem MFA (legado) | Expiração + migração imediata para MFA | Sem MFA, a password é o único factor de protecção |
| Contas de serviço / service accounts | Passwords longas (20+ chars) sem expiração | Gerir rotação manual ou usar Managed Identities |
Como desactivar a expiração de passwords
Via portal: Microsoft 365 Admin Center → Settings → Org settings → Security & privacy → Password expiration policy → marcar “Set passwords to never expire”
Via PowerShell (para utilizadores individuais):
Connect-MgGraph -Scopes "User.ReadWrite.All" # Desactivar expiração para todos os utilizadores Get-MgUser -All | ForEach-Object { Update-MgUser -UserId $_.Id -PasswordPolicies "DisablePasswordExpiration" } # Verificar estado de um utilizador Get-MgUser -UserId "[email protected]" -Property "DisplayName,PasswordPolicies" | Select-Object DisplayName,PasswordPolicies
3. SSPR — Self-Service Password Reset
O SSPR permite que os utilizadores reponham a sua password sem contactar o helpdesk — autenticando-se através de métodos de verificação previamente registados. Reduz significativamente o volume de chamadas de suporte e é um requisito implícito da NIS2 para garantir continuidade operacional (utilizadores bloqueados = impacto na disponibilidade de serviço).
Requisitos de licença
| Funcionalidade SSPR | Licença necessária |
|---|---|
| SSPR para utilizadores cloud-only | Entra ID Free (incluído em todas as subscrições M365) |
| SSPR com password writeback (híbrido) | Entra ID P1 (M365 Business Premium, E3+) |
| SSPR com relatórios de uso e auditoria avançada | Entra ID P2 |
Configurar SSPR — passo a passo
Caminho: entra.microsoft.com → Protection → Password reset
| Definição | Valor recomendado | Nota |
|---|---|---|
| Self service password reset enabled | All | Começa com “Selected” num grupo piloto |
| Number of methods required to reset | 2 | 1 método é insuficiente para contas críticas |
| Methods available to users | Mobile app notification, Mobile app code, Email, Mobile phone | Evitar perguntas de segurança — fáceis de adivinhar |
| Registration → Require users to register | Yes | Apresentado no próximo login |
| Number of days before re-confirmation | 180 dias | Pede ao utilizador para confirmar os dados de recuperação |
| Notify users on password reset | Yes | Notifica o utilizador por email quando a password é reposta |
| Notify admins of other admin resets | Yes | Alerta todos os admins quando um admin repõe a sua password |
⚠ SSPR para administradores — regras especiais
Contas com funções de administrador ficam sujeitas a uma política de dois factores obrigatória para SSPR, independentemente da configuração do tenant. Além disso, alterações à política SSPR para administradores podem demorar até 60 minutos a entrar em efeito. O URL de self-service para utilizadores é aka.ms/sspr.
4. Password Protection — lista de passwords banidas
O Entra ID mantém automaticamente uma lista global de passwords banidas actualizada com base em telemetria de segurança da Microsoft — passwords fracas e comprometidas detectadas em ataques reais. Esta lista não é pública e é aplicada silenciosamente a todos os tenants sem necessidade de configuração.
Adicionalmente, podes definir uma lista personalizada com termos específicos da tua organização — nome da empresa, produtos, localidade, etc. — que os utilizadores tendem a usar como base de passwords previsíveis.
Como funciona a normalização
Antes de comparar com a lista banida, o Entra ID normaliza a password proposta — converte para minúsculas e substitui caracteres comuns. Isto permite que uma lista pequena bloqueie um conjunto muito maior de variações:
| Password tentada | Após normalização | Resultado |
|---|---|---|
| Empresa2024! | empresa2024! | Bloqueada (“empresa” banida) |
| Empr3s@! | empresa! | Bloqueada (3→e, @→a, substituições) |
| Bl@nK2025# | blank2025# | Bloqueada (“blank” é termo banido) |
Configurar lista personalizada de passwords banidas
Caminho: entra.microsoft.com → Protection → Authentication methods → Password protection
| Campo | Configuração recomendada |
|---|---|
| Enforce custom list | Yes |
| Custom banned password list | Um termo por linha. Exemplos para uma empresa portuguesa:empresa
|
ℹ Regras da lista personalizada
Máximo de 1 000 termos. Cada termo tem de ter no mínimo 4 caracteres. A lista não é case-sensitive — introduz os termos em minúsculas. A normalização aplica-se: basta adicionar o radical da palavra (ex: “empresa” bloqueia “Empr3s@2026!”). Não é necessário adicionar variações manualmente.
5. Smart Lockout — bloqueio inteligente de ataques
O Smart Lockout distingue entre um utilizador legítimo que esqueceu a password e um atacante a tentar passwords em força bruta. Usa inteligência de localização, IP, padrões de tentativas e hash das últimas 3 passwords falhadas para tomar esta decisão — evitando bloquear utilizadores reais enquanto bloqueia automaticamente atacantes.
Comportamento por defeito vs. configurável
| Parâmetro | Valor padrão | Recomendado (P1) |
|---|---|---|
| Lockout threshold | 10 tentativas falhadas | 5–8 (ambientes com ataques frequentes) ou 10 (padrão) |
| Lockout duration (segundos) | 60 seg (cresce progressivamente) | 300 seg (5 min) para maioria dos ambientes |
✓ Comportamento especial do Smart Lockout: O sistema memoriza os hashes das últimas 3 passwords falhadas. Se o utilizador introduzir repetidamente a mesma password errada, o contador de bloqueio não avança — evitando que um utilizador que está a tentar a mesma password errada várias vezes fique bloqueado pelo mesmo erro repetido.
ℹ Recuperação após bloqueio Smart Lockout
Após bloqueio, o utilizador tem duas opções: (1) aguardar o fim da duração do lockout e tentar novamente com a password correcta; (2) usar o SSPR em aka.ms/sspr — ao escolher “esqueci-me da password”, o contador de lockout é reposto a zero imediatamente. Se escolher “sei a minha password” no SSPR, o timer continua.
Configurar Smart Lockout (requer P1)
Caminho: entra.microsoft.com → Protection → Authentication methods → Password protection
Na mesma página da Password Protection, ajusta os campos Lockout threshold e Lockout duration in seconds. Guarda as alterações. As alterações entram em efeito imediatamente nas novas tentativas de autenticação.
6. Ambientes híbridos — AD on-premises + Entra ID
Em ambientes híbridos (AD on-premises sincronizado com Entra ID via Entra Connect), a política de password aplicada nas mudanças locais (Ctrl+Alt+Del → Alterar password, ou via ADUC) é a do Active Directory local — não a do Entra ID. Para estender a protecção do Entra ID ao AD local, é necessário instalar o Microsoft Entra Password Protection Agent nos Domain Controllers.
| Componente | Onde instalar | Função |
|---|---|---|
| DC Agent | Em todos os Domain Controllers | Valida passwords contra a lista banida no momento da mudança local |
| Proxy Service | Num servidor membro do domínio com acesso à internet | Faz a ponte entre os DC Agents e o Entra ID para descarregar a lista banida actualizada |
Modos de operação no AD
| Modo | Comportamento | Uso recomendado |
|---|---|---|
| Audit | Regista passwords fracas no Event Log mas não as bloqueia | Fase inicial — validar impacto antes de enforçar |
| Enforced | Bloqueia activamente passwords que correspondem à lista banida | Produção — após validação em modo Audit |
⚠ Smart Lockout não se aplica ao AD on-premises: O Smart Lockout personalizado é uma funcionalidade exclusiva do Entra ID cloud. As definições configuradas no portal do Entra ID não têm efeito nos Domain Controllers on-premises, mesmo com os agentes instalados. Para ambientes híbridos, o lockout local é controlado pela Account Lockout Policy do GPO.
7. Comandos PowerShell úteis
Verificar registo SSPR dos utilizadores
Connect-MgGraph -Scopes "UserAuthenticationMethod.Read.All","User.Read.All" # Listar utilizadores sem métodos de autenticação registados para SSPR Get-MgUser -All -Filter "accountEnabled eq true" | ForEach-Object { $methods = Get-MgUserAuthenticationMethod -UserId $_.Id if ($methods.Count -le 1) { [PSCustomObject]@{ DisplayName = $_.DisplayName UPN = $_.UserPrincipalName MetodosRegistados = $methods.Count } } } | Format-Table -AutoSize
Verificar expiração de passwords
# Listar utilizadores COM expiração de password activa (que deviam ter "nunca") Get-MgUser -All -Property "DisplayName,UserPrincipalName,PasswordPolicies" | Where-Object { $_.PasswordPolicies -notcontains "DisablePasswordExpiration" } | Select-Object DisplayName, UserPrincipalName, PasswordPolicies | Export-Csv "passwords-com-expiracao.csv" -NoTypeInformation
Forçar registo SSPR no próximo login
# Invalidar métodos de autenticação de um utilizador (força re-registo) # ATENÇÃO: confirma com o utilizador antes de executar Update-MgUser -UserId "[email protected]" -AdditionalProperties @{ "strongAuthenticationRequirements" = @() }
8. Checklist de configuração
| # | Tarefa | Prioridade |
|---|---|---|
| ☐ | Activar SSPR para todos os utilizadores | CRÍTICO |
| ☐ | Configurar 2 métodos de verificação obrigatórios para SSPR | CRÍTICO |
| ☐ | Activar lista personalizada de passwords banidas com termos da organização | CRÍTICO |
| ☐ | Desactivar expiração de passwords para utilizadores com MFA activo | ALTA |
| ☐ | Ajustar Smart Lockout threshold para 5–8 tentativas (requer P1) | ALTA |
| ☐ | Activar notificações de SSPR para utilizadores e admins | ALTA |
| ☐ | Auditar utilizadores sem métodos SSPR registados via PowerShell | ALTA |
| ☐ | Em ambiente híbrido: instalar DC Agent e Proxy Service nos Domain Controllers | ALTA |
| ☐ | Rever e actualizar a lista personalizada de passwords banidas a cada 6 meses | NORMAL |
Artigos relacionados no kbase.pt
