Get AD Group Members Recursively
Get-ADGroupMember -Identity <group_name> -Recursive |
Select-Object Name, SamAccountName
Find Inactive Enabled User Accounts
$tspan = (New-TimeSpan -Days 90)
$inacUser = Search-ADAccount -AccountInactive -TimeSpan $tspan -UsersOnly |
Where-Object { $_.Enabled -eq $true } |
Select-Object Name, DistinguishedName, LastLogonDate
Write-Host "$($inacUser.Count) inactive enabled user accounts found" -ForegroundColor Green
$inacUser
Get Users Created in the Last 7 Days
$week = (Get-Date).AddDays(-7)
$ADuserInWeek = Get-ADUser -Filter { whenCreated -ge $week } -Properties WhenCreated |
Select-Object Name, WhenCreated, DistinguishedName
Write-Host "$($ADuserInWeek.Count) users created in the last 7 days" -ForegroundColor Green
$ADuserInWeek
Verify DC DNS SRV Records
Resolve-DnsName -Type ALL -Name "_ldap._tcp.dc._msdcs.$env:USERDNSDOMAIN"
List All Installed Software
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |
Format-Table -AutoSize
Get All Active Users with Last Logon Timestamp
Get-ADUser -Filter { Enabled -eq $true } -Properties LastLogonTimeStamp |
Select-Object Name, @{
Name = "LastLogon"
Expression = { [DateTime]::FromFileTime($_.LastLogonTimeStamp).ToString('dd-MM-yyyy HH:mm:ss') }
} | Sort-Object LastLogon -Descending
Backup All GPOs
Backup-GPO -All -Path "C:\Temp\AllGPO"