Fix for implicit remote regression in restricted session (#4222)
This commit is contained in:
parent
ea758a53af
commit
7fa0dd0549
|
@ -1220,7 +1220,10 @@ end
|
|||
typeNameParameter.Attributes.Add(new ValidateLengthAttribute(0, 1000));
|
||||
typeNameParameter.Attributes.Add(new ValidateCountAttribute(0, 1000));
|
||||
|
||||
return GetRestrictedCmdlet("Get-FormatData", null, "https://go.microsoft.com/fwlink/?LinkID=144303", typeNameParameter);
|
||||
// This parameter is required for implicit remoting in PS V5.1.
|
||||
ParameterMetadata powershellVersionParameter = new ParameterMetadata("PowerShellVersion", typeof(Version));
|
||||
|
||||
return GetRestrictedCmdlet("Get-FormatData", null, "https://go.microsoft.com/fwlink/?LinkID=144303", typeNameParameter, powershellVersionParameter);
|
||||
}
|
||||
|
||||
private static CommandMetadata GetRestrictedGetHelp()
|
||||
|
|
|
@ -2076,3 +2076,42 @@ Describe "GetCommand locally and remotely" -tags "Feature" {
|
|||
$localCommandCount | Should Be $remoteCommandCount
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Import-PSSession on Restricted Session" -tags "Feature","RequireAdminOnWindows","Slow" {
|
||||
|
||||
BeforeAll {
|
||||
|
||||
# Skip tests for non Windows
|
||||
if (! $IsWindows)
|
||||
{
|
||||
$originalDefaultParameters = $PSDefaultParameterValues.Clone()
|
||||
$global:PSDefaultParameterValues["it:skip"] = $true
|
||||
}
|
||||
else
|
||||
{
|
||||
New-PSSessionConfigurationFile -Path $TestDrive\restricted.pssc -SessionType RestrictedRemoteServer
|
||||
Register-PSSessionConfiguration -Path $TestDrive\restricted.pssc -Name restricted -Force
|
||||
$session = New-PSSession -ComputerName localhost -ConfigurationName restricted
|
||||
}
|
||||
}
|
||||
|
||||
AfterAll {
|
||||
|
||||
if ($originalDefaultParameters -ne $null)
|
||||
{
|
||||
$global:PSDefaultParameterValues = $originalDefaultParameters
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($session -ne $null) { Remove-PSSession -Session $session -ErrorAction SilentlyContinue }
|
||||
Unregister-PSSessionConfiguration -Name restricted -Force -ErrorAction SilentlyContinue
|
||||
}
|
||||
}
|
||||
|
||||
It "Verifies that Import-PSSession works on a restricted session" {
|
||||
|
||||
$errorVariable = $null
|
||||
Import-PSSession -Session $session -AllowClobber -ErrorVariable $errorVariable
|
||||
$errorVariable | Should BeNullOrEmpty
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue