Server.EnumWindowsUserInfo Method (String, Boolean)

Enumerates a list of information about all Microsoft Windows users that have explicitly granted access to the instance of SQL Server and with the option to list all the permissions paths (groups) through which the user has been 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 EnumWindowsUserInfo ( _
    account As String, _
    listPermissionPaths As Boolean _
) As DataTable
'Usage
Dim instance As Server 
Dim account As String 
Dim listPermissionPaths As Boolean 
Dim returnValue As DataTable 

returnValue = instance.EnumWindowsUserInfo(account, _
    listPermissionPaths)
public DataTable EnumWindowsUserInfo(
    string account,
    bool listPermissionPaths
)
public:
DataTable^ EnumWindowsUserInfo(
    String^ account, 
    bool listPermissionPaths
)
member EnumWindowsUserInfo : 
        account:string * 
        listPermissionPaths:bool -> DataTable
public function EnumWindowsUserInfo(
    account : String, 
    listPermissionPaths : boolean
) : DataTable

Parameters

  • account
    Type: System.String
    A String value that specifies a Windows user account on which to limit the results.
  • listPermissionPaths
    Type: System.Boolean
    A Boolean value that specifies whether to list the all the permissions paths (other groups) through which the user has been granted access to the instance of SQL Server.If True, the permissions paths are listed.If False, the permissions paths are not listed.

Return Value

Type: System.Data.DataTable
A DataTable object value that contains a list of Windows users 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

String

The name of the Windows NT user. NT AUTHORITY\SYSTEM, for example.

type

String

The type of user. This specifies whether the user is an individual account or a group account.

Examples

C#

Server srv = new Server("(local)");

DataTable d = srv.EnumWindowsUserInfo("NT AUTHORITY\\System", false);
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.EnumWindowsUserInfo("NT AUTHORITY\System", $FALSE)
foreach ($r in $d.Rows)
{
   Write-Host "============================================"
   Foreach ($c in $d.Columns)
   {
      Write-Host $c.ColumnName "=" $r[$c]
   }
}

See Also

Reference

Server Class

EnumWindowsUserInfo Overload

Microsoft.SqlServer.Management.Smo Namespace

Other Resources

Calling Methods

Managing Servers