Disable-PSSessionConfiguration
Отключает конфигурации сеанса на локальном компьютере.
Синтаксис
Disable-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[-NoServiceRestart]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Disable-PSSessionConfiguration
отключает конфигурации сеансов на локальном компьютере, что запрещает всем пользователям использовать конфигурации сеансов для создания управляемых пользователем сеансов (PSSessions) на локальном компьютере. Это расширенный командлет, предназначенный для использования системными администраторами для управления настраиваемыми конфигурациями сеансов для своих пользователей.
Начиная с PowerShell 3.0 командлет
В PowerShell 2.0 командлет Disable-PSSessionConfiguration
добавляет запись Deny_All в дескриптор безопасности одной или нескольких зарегистрированных конфигураций сеансов.
Без параметров Disable-PSSessionConfiguration
отключает конфигурацию Microsoft.PowerShell по умолчанию, используемую для сеансов. Если пользователь не указывает другую конфигурацию, локальные и удаленные пользователи фактически не могут создавать сеансы, подключающиеся к компьютеру.
Чтобы отключить все конфигурации сеансов на компьютере, используйте Disable-PSRemoting
.
Примеры
Пример 1. Отключение конфигурации по умолчанию
В этом примере отключается конфигурация сеанса Microsoft.PowerShell.
Disable-PSSessionConfiguration
Пример 2. Отключение всех зарегистрированных конфигураций сеанса
Этот пример отключает все зарегистрированные конфигурации сеансов на компьютере.
Disable-PSSessionConfiguration -Name *
Пример 3. Отключение конфигураций сеансов по имени
В этом примере отключается все конфигурации сеансов с именами, начинающимися с Майкрософт. Параметр Force подавляет все запросы пользователя из командлета.
Disable-PSSessionConfiguration -Name Microsoft* -Force
Пример 4. Отключение конфигураций сеансов с помощью конвейера
В этом примере отключается Get-PSSessionConfiguration
в Disable-PSSessionConfiguration
.
Get-PSSessionConfiguration -Name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration
Пример 5. Эффекты отключения конфигурации сеанса
В этом примере показаны разрешения до и после выполнения Disable-PSSessionConfiguration
и эффект отключения конфигурации сеанса.
PS> Get-PSSessionConfiguration | Format-Table -Property Name, Permission -Auto
Name Permission
---- ----------
MaintenanceShell BUILTIN\Administrators AccessAllowed
microsoft.powershell BUILTIN\Administrators AccessAllowed
microsoft.powershell32 BUILTIN\Administrators AccessAllowed
PS> Disable-PSSessionConfiguration -Name MaintenanceShell -Force
PS> Get-PSSessionConfiguration | Format-Table -Property Name, Permission -Auto
Name Permission
---- ----------
MaintenanceShell Everyone AccessDenied, BUILTIN\Administrators AccessAllowed
microsoft.powershell BUILTIN\Administrators AccessAllowed
microsoft.powershell32 BUILTIN\Administrators AccessAllowed
PS> New-PSSession -ComputerName localhost -ConfigurationName MaintenanceShell
[localhost] Connecting to remote server failed with the following error message : Access is denied.
For more information, see the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
+ FullyQualifiedErrorId : PSSessionOpenFailed
Заметка
Отключение конфигурации не препятствует изменению конфигурации с помощью командлета Set-PSSessionConfiguration
. Он запрещает использование конфигурации только.
Параметры
-Confirm
Запрашивает подтверждение перед запуском командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Force
Принудительно выполняется команда без запроса подтверждения пользователя.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Name
Задает массив имен конфигураций сеансов для отключения. Введите одно или несколько имен конфигурации. Разрешены подстановочные знаки. Можно также передать строку, содержащую имя конфигурации или объект конфигурации сеанса, в Disable-PSSessionConfiguration
.
Если этот параметр не указан, Disable-PSSessionConfiguration
отключает конфигурацию сеанса Microsoft.PowerShell.
Тип: | String[] |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-NoServiceRestart
Используется для предотвращения перезапуска службы WSMan. Не обязательно перезапустить службу, чтобы отключить конфигурацию.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
Можно передать объект конфигурации сеанса или строку, содержащую имя конфигурации сеанса в этот командлет.
Выходные данные
None
Этот командлет не возвращает объекты.
Примечания
Этот командлет доступен только на платформах Windows.
Чтобы запустить этот командлет, необходимо запустить PowerShell с помощью параметра запуска от имени администратора.