Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Script para Avisar Usuários sobre Expiração de Senha no Windows

Script:

# Este script verifica quando a senha dos usuários do domínio irá expirar e envia um aviso por e-mail se estiver dentro do limite de dias especificado.

# Importa o módulo Active Directory
Import-Module ActiveDirectory

# Define o número de dias para aviso
$diasParaAviso = 5

# Obtém a data atual
$dataAtual = Get-Date

# Obtém todos os usuários do Active Directory
$usuarios = Get-ADUser -Filter * -Properties "msDS-UserPasswordExpiryTimeComputed", EmailAddress

foreach ($usuario in $usuarios) {
    # Obtém a data de expiração da senha
    $dataExpiracao = [datetime]::FromFileTime((Get-ADUser $usuario -Properties "msDS-UserPasswordExpiryTimeComputed")."msDS-UserPasswordExpiryTimeComputed")

    # Calcula a diferença em dias entre a data de expiração e a data atual
    $diasRestantes = ($dataExpiracao - $dataAtual).Days

    # Se a senha expirar em menos ou igual aos dias especificados, envia um aviso
    if ($diasRestantes -le $diasParaAviso -and $diasRestantes -ge 0) {
        $assunto = "Aviso: Sua senha irá expirar em $diasRestantes dias"
        $mensagem = "Olá $($usuario.Name),`n`nSua senha irá expirar em $diasRestantes dias. Por favor, altere sua senha antes do prazo para evitar problemas de acesso.`n`nAtenciosamente,`nEquipe de TI"

        # Envia o e-mail (necessário configurar o servidor SMTP)
        Send-MailMessage -To $usuario.EmailAddress -From "ti@empresa.com" -Subject $assunto -Body $mensagem -SmtpServer "smtp.empresa.com"
    }
}

Como Executar o Script:

  1. Abra o PowerShell como Administrador.
  2. Salve o script acima em um arquivo com a extensão .ps1, por exemplo, AvisoExpiracaoSenha.ps1.
  3. Antes de executar, certifique-se de que o módulo Active Directory está instalado e configurado.
  4. Configure o servidor SMTP no script, substituindo "smtp.empresa.com" pelo endereço do seu servidor SMTP.
  5. Execute o script no PowerShell com o comando: .\AvisoExpiracaoSenha.ps1.
  6. Verifique se os usuários estão recebendo os e-mails de aviso.

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.