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. Отключение конфигураций сеансов с помощью конвейера

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

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Принудительное выполнение команды без запроса на подтверждение пользователем.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Задает массив имен конфигураций сеансов для отключения. Введите одно или несколько имен конфигурации. Можно использовать подстановочные знаки. Можно также передать строку, содержащую имя конфигурации или объект Disable-PSSessionConfigurationконфигурации сеанса.

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

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-NoServiceRestart

Используется для предотвращения перезапуска службы WSMan. Не обязательно перезапустить службу, чтобы отключить конфигурацию.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

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

String

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

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

None

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

Примечания

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

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