Quick script to resolve sql server windows groups to show who is in said groups. This uses SQLPSX and Quests’ QAD cmdlets (which is apparently owned by dell now?).
param( [string]$serverInstance = {throw "You must enter a sql server instance name"} ) Import-Module SqlServer if ( (Get-PSSnapin -Name quest.activeroles.admanagement -ErrorAction SilentlyContinue) -eq $null ) { Add-PsSnapin quest.activeroles.admanagement } $outputs = @(); $srv = Get-SqlServer -sqlserver $serverInstance $logins = $srv.Logins | where{$_.LoginType -eq [Microsoft.SqlServer.Management.Smo.LoginType]::WindowsGroup} foreach($login in $logins) { $qadUsers = Get-QADGroupMember $login.Name | select Name, NTAccountName # | sort Name | Format-Table -AutoSize foreach($user in $qadUsers) { $output = New-Object -TypeName PSObject -Property @{ ServerName = $srv GroupName = $login.Name Name = $user.Name AccountName = $user.NTAccountName } $outputs += $output } } $outputs | SELECT ServerName, GroupName, Name, AccountName #| Format-Table -AutoSize