Enable-PSSessionConfiguration
启用本地计算机上的会话配置。
语法
Enable-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[-SecurityDescriptorSddl <String>]
[-SkipNetworkProfileCheck]
[-NoServiceRestart]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
此 cmdlet 仅在 Windows 平台上可用。
Enable-PSSessionConfiguration
cmdlet 启用已禁用的已注册会话配置,例如使用 Disable-PSSessionConfiguration
或 Disable-PSRemoting
cmdlet,或 Register-PSSessionConfiguration
的 AccessMode 参数。 这是一个高级 cmdlet,旨在供系统管理员为其用户管理自定义会话配置时使用。
在没有参数的情况下,Enable-PSSessionConfiguration
将启用 Microsoft.PowerShell 配置,这是用于会话的默认配置。
Enable-PSSessionConfiguration
从受影响的会话配置的安全描述符中删除 Deny_All 设置、打开可接受任何 IP 地址上的请求的侦听器,并重新启动 WinRM 服务。 从 PowerShell 3.0 开始,Enable-PSSessionConfiguration
还将会话配置 (WSMan:\<computer>\PlugIn\<SessionConfigurationName>\Enabled
) 的 Enabled 属性的值设置为 False。 但是,Enable-PSSessionConfiguration
不会删除或更改仅允许本地计算机用户用于会话配置的 Network_Deny_All (AccessMode=Local
) 安全描述符设置。
示例
示例 1:重新启用默认会话
此示例将重新启用计算机上的 Microsoft.PowerShell 默认会话配置。
Enable-PSSessionConfiguration
示例 2:重新启用指定的会话
此示例将重新启用计算机上的 MaintenanceShell 和 AdminShell 会话配置。
Enable-PSSessionConfiguration -Name MaintenanceShell, AdminShell
示例 3:重新启用所有会话
此示例将重新启用计算机上的所有会话配置。 这些命令是等效的。 因此,可以使用任何一个。
Enable-PSSessionConfiguration -Name *
Get-PSSessionConfiguration | Enable-PSSessionConfiguration
如果启用已启用的某个会话配置,Enable-PSSessionConfiguration
将不会生成错误。
示例 4:重新启用会话并指定新的安全描述符
此示例将重新启用 MaintenanceShell 会话配置,并为该配置指定新的安全描述符。
$sddl = "O:NSG:BAD:P(A;;GXGWGR;;;BA)(A;;GAGR;;;S-1-5-21-123456789-188441444-3100496)S:P"
Enable-PSSessionConfiguration -Name MaintenanceShell -SecurityDescriptorSDDL $sddl
参数
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Force
指示 cmdlet 不提示进行确认,并且将在无提示的情况下重启 WinRM 服务。 重新启动服务可使配置更改生效。
若要阻止重启并禁止显示重启提示,请使用 NoServiceRestart 参数。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Name
指定要启用的会话配置的名称。 输入一个或多个配置名称。 允许使用通配符。
你还可以通过管道将包含配置名称的字符串或会话配置对象传递给 Enable-PSSessionConfiguration
。
如果省略此参数,则 Enable-PSSessionConfiguration
将启用 Microsoft.PowerShell 会话配置。
类型: | String[] |
Position: | 0 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | True |
-NoServiceRestart
指示 cmdlet 不会重新启动服务。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SecurityDescriptorSddl
指定此 cmdlet 替换会话配置上的安全描述符所用的安全描述符。
如果省略此参数,则 Enable-PSSessionConfiguration
仅从安全描述符中删除拒绝所有项。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SkipNetworkProfileCheck
指示当计算机位于公用网络上时,此 cmdlet 启用会话配置。 此参数只允许为公用网络启用防火墙规则,该规则只允许远程访问同一本地子网中的计算机。 默认情况下,Enable-PSSessionConfiguration
会在公共网络中失败。
此参数专为 Windows 操作系统的客户端版本而设计。 Windows 操作系统的服务器版本具有适用于公用网络的本地子网防火墙规则。 但是,如果在 Windows 操作系统的服务器版本上禁用了本地子网防火墙规则,则此参数将重新启用它。
若要删除本地子网限制并启用从公用网络上的所有位置进行远程访问,请使用 NetSecurity 模块中的 Set-NetFirewallRule
cmdlet。 有关详细信息,请参阅 Enable-PSRemoting
。
此参数是在 PowerShell 3.0 中引入的。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
可以通过管道将会话配置对象传递给此 cmdlet。
可以将包含会话配置名称的字符串通过管道传递给此 cmdlet。
输出
None
此 cmdlet 不返回任何输出。
备注
此 cmdlet 仅在 Windows 平台上可用。
若要使用此 cmdlet,必须使用“以管理员身份运行”选项启动 PowerShell。
相关链接
- Disable-PSSessionConfiguration
- Get-PSSessionConfiguration
- New-PSSessionConfigurationFile
- New-PSSessionOption
- Register-PSSessionConfiguration
- Set-PSSessionConfiguration
- Test-PSSessionConfigurationFile
- Unregister-PSSessionConfiguration
- WSMan 提供程序
- about_Session_Configurations
- about_Session_Configuration_Files