Get-PSSessionCapability

Gets the capabilities of a specific user on a constrained session configuration.
Get-PSSessionCapability [-ConfigurationName*] <String> [-Username*] <String> [-Full] [<CommonParameters>]

The Get-PSSessionCapability cmdlet gets the capabilities of a specific user on a constrained session configuration. Use this cmdlet to audit customized session configurations for users.

Starting in Windows PowerShell 5.0, you can use the RoleDefinitions property in a session configuration (.pssc) file. Using this property lets you grant users different capabilities on a single constrained endpoint based on group membership. The Get-PSSessionCapability cmdlet reduces complexity when auditing these endpoints by letting you determine the exact capabilities granted to a user.

By default, the Get-PSSessionCapability cmdlet returns a list of commands the specified user can run in the specified endpoint. This is equivalent to the user running Get-Command in the specified endpoint. When run with the Full parameter, this cmdlet returns an InitialSessionState object. This object contains details about the Windows PowerShell runspace the specified user would interact with for the specified endpoint. It includes information such as Language Mode, Execution Policy, and Environmental Variables.

Parameters
-ConfigurationName <String>

  • This value is required

Specifies the constrained session configuration (endpoint) that you are inspecting.

-Full [<SwitchParameter>]

Indicates that this cmdlet returns the entire initial session state for the specified user at the specified constrained endpoint.

-Username <String>

  • This value is required

Specifies the user whose capabilities you are inspecting.

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

Outputs

System.Management.Automation.AliasInfo

System.Management.Automation.FunctionInfo System.Management.Automation.Runspaces.InitialSessionState

Examples
  1. Get commands available for a user:
    PS C:> Get-PSSessionCapability -ConfigurationName "Endpoint1" -Username "CONTOSOEvanNa"
    

    This example returns the commands available to the user CONTOSOEvanNa when connecting to the Endpoint1 constrained endpoint on the local computer.

  2. Get details about a runspace for a user:
    PS C:> Get-PSSessionCapability -ConfigurationName "Endpoint1" -Username "CONTOSOPattiFul" -Full
    

    This command returns details about the runspace the user CONTOSOPattiFul would interact with when connecting to the Endpoint1 constrained endpoint.

Related Links

New-PSRoleCapabilityFile