Get-SqlLogin

Returns Login objects in an instance of SQL Server.

Syntax

Get-SqlLogin [[-Path] <String>] [-LoginName <String>] [-Disabled] [-Locked] [-PasswordExpired] [-HasAccess]
 [-RegEx] [-Wildcard] [-LoginType <LoginType>] [-InformationAction <ActionPreference>]
 [-InformationVariable <String>] [<CommonParameters>]
Get-SqlLogin [[-InputObject] <Server>] [-LoginName <String>] [-Disabled] [-Locked] [-PasswordExpired]
 [-HasAccess] [-RegEx] [-Wildcard] [-LoginType <LoginType>] [-InformationAction <ActionPreference>]
 [-InformationVariable <String>] [<CommonParameters>]
Get-SqlLogin [[-ServerInstance] <String[]>] [-LoginName <String>] [-Disabled] [-Locked] [-PasswordExpired]
 [-HasAccess] [-RegEx] [-Wildcard] [-LoginType <LoginType>] [-InformationAction <ActionPreference>]
 [-InformationVariable <String>] [-Credential <PSCredential>] [-ConnectionTimeout <Int32>] [<CommonParameters>]

Description

The Get-SqlLogin cmdlet returns Login objects in an instance of SQL Server. If you specify the name of the Login object, the cmdlet removes that specific object.

Examples

Example 1: Get all Login objects for an instance

PS C:\> Get-SqlLogin -ServerInstance "MyServerInstance"
Name                                          Login Type    Created
----                                          ----------    -------
##MS_PolicyEventProcessingLogin##             SqlLogin      4/30/2016 12:46 AM
##MS_PolicyTsqlExecutionLogin##               SqlLogin      4/30/2016 12:46 AM
NT AUTHORITY\SYSTEM                           WindowsUser   6/16/2016 10:29 AM
NT Service\MSSQLSERVER                        WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLSERVERAGENT                     WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLTELEMETRY                       WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLWriter                          WindowsUser   6/16/2016 10:29 AM
NT SERVICE\Winmgmt                            WindowsUser   6/16/2016 10:29 AM
sa                                            SqlLogin      4/8/2003 9:10 AM

This command returns all Login objects in the instance of SQL Server named MyServerInstance.

Example 2: Get Login objects that match a regular expression

PS C:\> Get-SqlLogin -ServerInstance "MyServerInstance" -LoginName "\bNT.*" -RegEx
Name                                          Login Type    Created
----                                          ----------    -------
NT AUTHORITY\SYSTEM                           WindowsUser   6/16/2016 10:29 AM
NT Service\MSSQLSERVER                        WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLSERVERAGENT                     WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLTELEMETRY                       WindowsUser   6/16/2016 10:29 AM
NT SERVICE\SQLWriter                          WindowsUser   6/16/2016 10:29 AM
NT SERVICE\Winmgmt                            WindowsUser   6/16/2016 10:29 AM

This command returns Login objects that have names that match the regular expression \bNT.* in the instance of SQL Server named MyServerInstance.

Example 3: Get Login objects of a type

PS C:\>Get-SqlLogin -ServerInstance "MyServerInstance" -LoginType SqlLogin
Name                                          Login Type    Created
----                                          ----------    -------
##MS_PolicyEventProcessingLogin##             SqlLogin      4/30/2016 12:46 AM
##MS_PolicyTsqlExecutionLogin##               SqlLogin      4/30/2016 12:46 AM
sa                                            SqlLogin      4/8/2003 9:10 AM

This command returns Login objects that are of type SqlLogin in the instance of SQL Server named MyServerInstance.

Parameters

-LoginName

Specifies an array of names of Login objects that this cmdlet gets. The case sensitivity is the same as that of the instance of SQL Server.

Type:String
Aliases:Name
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Disabled

Indicates that this cmdlet gets only disabled Login objects.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Locked

Indicates that this cmdlet gets only locked Login objects.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PasswordExpired

Indicates that this cmdlet gets only Login objects that have expired passwords.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-HasAccess

Indicates that this cmdlet gets only Login objects that have access to the instance of SQL Server.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-RegEx

Indicates that this cmdlet treats the value of the LoginName parameter as a regular expression.

Type:SwitchParameter
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Wildcard

Indicates that this cmdlet interprets wildcard characters in the value of the LoginName parameter.

Type:SwitchParameter
Aliases:Like
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-LoginType

Specifies the type of the Login objects that this cmdlet gets. The acceptable values for this parameter are:

- AsymmetricKey

  • Certificate
  • SqlLogin
  • WindowsGroup
  • WindowsUser

Type:LoginType
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Path

Specifies the path of the SQL Server on which this cmdlet runs the operation. The default value is the current working directory.

Type:String
Required:False
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InformationAction

Specifies how this cmdlet responds to an information event.

The acceptable values for this parameter are:

- Continue

  • Ignore
  • Inquire
  • SilentlyContinue
  • Stop
  • Suspend

Type:ActionPreference
Aliases:infa
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InformationVariable

Specifies an information variable.

Type:String
Aliases:iv
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InputObject

Specifies a SQL Server Management Objects (SMO) object the SQL Server for which this cmdlet gets Login objects.

Type:Server
Required:False
Position:1
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-ServerInstance

Specifies the name of an instance of SQL Server. For the default instance, specify the computer name. For named instances, use the format ComputerName\InstanceName.

Type:String[]
Required:False
Position:1
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-Credential

Specifies a PSCredential object for the connection to SQL Server. To obtain a credential object, use the Get-Credential cmdlet. For more information, type Get-Help Get-Credential.

Type:PSCredential
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ConnectionTimeout

Specifies the number of seconds to wait for a server connection before a time-out failure. The time-out value must be an integer between 0 and 65534. If 0 is specified, connection attempts do not time out.

Type:Int32
Required:False
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False