$relatorio = $null
$tabela = $null
$data = Get-Date -format "dd/MM/yyyy" # Data no formato DIA/MÊS/ANO
$arquivo = "ad-lista.html" # Arquivo gerado em HTML
$total = (Get-ADUser -filter *).count # Total de Usuários no Active Directory
$dominio = (Get-ADDomain).Forest # Nome do Domínio
$analista = "Nome consultor" # Nome do Analista
$empresa = "nome empresa" # Nome da Empresa
Import-Module ActiveDirectory
#--LISTA DE USUÁRIOS------------------------------------------------#
$tabela += "<center><h3><b>TOTAL DE USUÁRIOS - <font color=red>$total</font></b></h3></center>"
$usuarios = @(Get-ADUser -filter * -Properties Company, SamAccountName, Name, Mail, Department, Title, PasswordNeverExpires, Enabled, Created, LastLogonDate)
# Lista todas as Propriedades do Usuário
#PS C:\AD> Get-ADUser marcos -Properties *
$resultado = @($usuarios | Select-Object Company, SamAccountName, Name, Mail, Department, Title, PasswordNeverExpires, Enabled, Created, LastLogonDate)
# Ordenar pela Empresa (Company) A-Z
$resultado = $resultado | Sort "Company"
# Comente esta linha para não exibir o resultado durante a execução do script.
#$resultado | ft -auto
$tabela += $resultado | ConvertTo-Html -Fragment
$formatacao=
"
<html>
<body>
<style>
BODY{font-family: Calibri; font-size: 12pt;}
TABLE{border: 1px solid black; border-collapse: collapse; font-size: 12pt; text-align:center;margin-left:auto;margin-right:auto; width='1000px';}
TH{border: 1px solid black; background: #F9F9F9; padding: 5px;}
TD{border: 1px solid black; padding: 5px;}
H3{font-family: Calibri; font-size: 12pt;}
</style>
"
$titulo=
"
<table width='100%' border='0' cellpadding='0' cellspacing='0'>
<tr>
<td bgcolor='#F9F9F9'>
<font face='Calibri' size='10px'>Active Directory - Lista de Usuários</font>
<H3 align='center'>Empresa: $empresa - Domínio: $dominio - Relatório: $data - Responsável: $analista</H3>
</td>
</tr>
</table>
</body>
</html>
"
$mensagem = "</table><style>"
$mensagem = $mensagem + "BODY{font-family: Calibri;font-size:20;font-color: #000000}"
$mensagem = $mensagem + "TABLE{margin-left:auto;margin-right:auto;width: 800px;border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}"
$mensagem = $mensagem + "TH{border-width: 1px;padding: 0px;border-style: solid;border-color: black;background-color: #F9F9F9;text-align:center;}"
$mensagem = $mensagem + "TD{border-width: 1px;padding: 0px;border-style: solid;border-color: black;text-align:center;}"
$mensagem = $mensagem + "</style>"
$mensagem = $mensagem + "<table width='349px' heigth='400px' align='center'>"
$mensagem = $mensagem + "<tr><td bgcolor='#DDEBF7' height='40'>AUDITORIA</td></tr>"
$mensagem = $mensagem + "<tr><td height='80'>Lista completa de todos os <b>usuários</b> do Active Directory</td></tr>"
$mensagem = $mensagem + "<tr><td bgcolor='#DDEBF7' height='40'>SEGURANÇA DA INFORMAÇÃO</td></tr>"
$mensagem = $mensagem + "</table>"
$relatorio = $formatacao + $titulo + $tabela
#--GERAR O HTML-----------------------------------------------------#
$relatorio | Out-File $arquivo -Encoding Utf8
# Exportar para o formato CSV (ad-lista.csv)
$resultado | Sort Company | Export-Csv ad-lista.csv -NoTypeInformation -Encoding Utf8
#--ENVIAR RELATÓRIO VIA E-MAIL--------------------------------------#
$de = "email de "
$para = "email para"
$assunto = "Active Directory - $data"
$smtp = "ip server"
$porta = "25"
Send-MailMessage -From $de -To $para -Subject $assunto -Attachments $arquivo,ad-lista.csv -bodyashtml -Body $mensagem -SmtpServer $smtp -Port $porta