Server.EnumWindowsGroupInfo Method
Enumerates a list of information about all Microsoft Windows groups that have explicitly granted access to the instance of SQL Server.
Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
Syntax
'Declaration
Public Function EnumWindowsGroupInfo As DataTable
'Usage
Dim instance As Server
Dim returnValue As DataTable
returnValue = instance.EnumWindowsGroupInfo()
public DataTable EnumWindowsGroupInfo()
public:
DataTable^ EnumWindowsGroupInfo()
member EnumWindowsGroupInfo : unit -> DataTable 
public function EnumWindowsGroupInfo() : DataTable
Return Value
Type: System.Data.DataTable
A DataTable system object value that contains a list of Windows groups that have explicitly granted access to the instance of SQL Server. The table describes the different columns of the returned DataTable.
| Column | Data type | Description | 
| account name | The name of the Windows NT user. NT AUTHORITY\SYSTEM, for example. | |
| type | The type of user. This specifies whether the user is an individual account or a group account. | |
| privilege | The privilege level assigned to the Windows NT group. | |
| mapped login name | The SQL Server login account to which the Windows NT group is mapped. | |
| permission path | The permission path for the Windows NT group. | 
Examples
C#
Server srv = new Server("(local)");
DataTable d = srv.EnumWindowsGroupInfo();
foreach (DataRow r in d.Rows)
{
   Console.WriteLine("============================================");
   foreach(DataColumn c in d.Columns)
   {
      Console.WriteLine(c.ColumnName + " = " + r[c].ToString());
   }
}
PowerShell
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$d = $srv.EnumWindowsGroupInfo()
foreach ($r in $d.Rows)
{
   Write-Host "============================================"
   Foreach ($c in $d.Columns)
   {
      Write-Host $c.ColumnName "=" $r[$c]
   }
}
See Also