Поделиться через


Disable-PSSessionConfiguration

Отключает конфигурации сеансов на локальном компьютере.

Синтаксис

Disable-PSSessionConfiguration
       [[-Name] <String[]>]
       [-Force]
       [-NoServiceRestart]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Описание

Этот командлет доступен только на платформе Windows.

Командлет Disable-PSSessionConfiguration отключает конфигурации сеансов на локальном компьютере, что запрещает всем пользователям использовать конфигурации сеансов для создания сеансов, управляемых пользователем (PSSessions) на локальном компьютере. Этот расширенный командлет предназначен для использования системными администраторами и позволяет управлять конфигурациями сеансов для пользователей.

Начиная с PowerShell 3.0 Disable-PSSessionConfiguration командлет задает параметр "Включено " конфигурации сеанса (WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled) значение False.

В PowerShell 2.0 Disable-PSSessionConfiguration командлет добавляет Deny_All запись в дескриптор безопасности одной или нескольких зарегистрированных конфигураций сеансов.

Без параметров Disable-PSSessionConfiguration отключает конфигурацию Microsoft.PowerShell , используемую по умолчанию для сеансов. Если пользователь не указывает другую конфигурацию, командлет эффективно блокирует создание сеансов подключения к компьютеру локальными и удаленными пользователями.

Чтобы отключить все конфигурации сеансов на компьютере, используйте Disable-PSRemoting.

Примеры

Пример 1. Отключение конфигурации по умолчанию

В этом примере отключается конфигурация сеанса Microsoft.PowerShell .

Disable-PSSessionConfiguration

Пример 2. Отключение всех зарегистрированных конфигураций сеанса

Этот пример отключает все зарегистрированные конфигурации сеансов на компьютере.

Disable-PSSessionConfiguration -Name *

Пример 3. Отключение конфигураций сеансов по имени

В этом примере отключается все конфигурации сеансов с именами, начинающимися с Microsoft. Параметр Force подавляет все запросы пользователей из командлета.

Disable-PSSessionConfiguration -Name Microsoft* -Force

Пример 4. Отключение конфигураций сеансов с помощью конвейера

В этом примере отключается конфигурация сеансов MaintenanceShell и AdminShell . Оператор конвейера (|) отправляет результаты в 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

Объект конфигурации сеанса можно передать в этот командлет.

String

Можно передать строку, содержащую имя конфигурации сеанса в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные.

Примечания

Этот командлет доступен только на платформах Windows.

Чтобы запустить этот командлет, необходимо запустить PowerShell с помощью параметра "Запуск от имени администратора ".