Запрещает доступ к конфигурациям сеанса на локальном компьютере.
Синтаксис
Disable-PSSessionConfiguration [[-Name] <string[]>] [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]
Описание
Командлет Disable-PSSessionConfiguration запрещает всем пользователям компьютера использовать конфигурацию сеанса для сеанса. Этот расширенный командлет предназначен для использования системными администраторами и позволяет управлять конфигурациями сеансов для пользователей.
Командлет Disable-PSSessionConfiguration добавляет параметр "deny all" в дескриптор безопасности одной или нескольких зарегистрированных конфигураций сеанса. В результате можно отменять регистрацию, просматривать и изменять конфигурации, однако использовать их в сеансе невозможно.
Без параметров Disable-PSSessionConfiguration отключает конфигурацию Microsoft.PowerShell, которая является конфигурацией по умолчанию, используемой для сеансов. Пока пользователь не укажет другую конфигурацию, локальным и удаленным пользователям запрещается создание каких-либо сеансов, выполняющих подключение к компьютеру.
Чтобы отключить все конфигурации сеансов, используйте Disable-PSRemoting.
Параметры
-Force
Подавляет все запросы подтверждения. По умолчанию выдается запрос на подтверждение каждой операции.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
False |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Name <string[]>
Задает имена отключаемых конфигураций сеанса. Введите одно или несколько имен конфигурации. Подстановочные знаки разрешены. Строку, содержащую имя конфигурации или объект конфигурации сеанса, можно передать командлету Disable-PSSessionConfiguration по конвейеру.
Если этот параметр не указан, Disable-PSSessionConfiguration отключает конфигурацию сеанса Microsoft.PowerShell.
Обязательно? |
false |
Позиция? |
1 |
Значение по умолчанию |
Microsoft.PowerShell |
Принимать входные данные из конвейера? |
true (ByValue, ByPropertyName) |
Принимать подстановочные знаки? |
true |
-Confirm
Запрашивает подтверждение перед выполнением команды.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-WhatIf
Описывает, что произойдет при выполнении команды, без ее фактического выполнения.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration, System.String Объект конфигурации сеанса или строку, содержащую имя конфигурации сеанса, можно передать командлету Disable-PSSessionConfiguration по конвейеру. |
Выходные данные |
None Этот командлет не возвращает никаких объектов. |
Примечания
Чтобы использовать этот командлет в Windows Vista, Windows Server 2008 и более поздних версиях Windows, необходимо запускать Windows PowerShell командой "Запуск от имени администратора".
Пример 1
C:\PS>Disable-PSSessionConfiguration Описание ----------- Эта команда отключает конфигурацию сеанса Microsoft.PowerShell.
Пример 2
C:\PS>disable-pssessionConfiguration -name * Описание ----------- Эта команда удаляет с компьютера все зарегистрированные конфигурации сеансов.
Пример 3
C:\PS>disable-pssessionConfiguration -name Microsoft* -force Описание ----------- Эта команда отключает все конфигурации сеанса с именами, начинающимися с "Microsoft". Команда использует параметр Force для подавления всех запросов подтверждений от этой команды.
Пример 4
C:\PS>Get-PSSessionConfiguration -name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration Описание ----------- Эта команда отключает конфигурации сеанса MaintenanceShell и AdminShell. Команда использует оператор конвейера (|) для отправки результатов команды Get-PSSessionConfiguration командлету Disable-PSSessionConfiguration.
Пример 5
C:\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 C:\PS> Disable-PSSessionConfiguration -name MaintenanceShell -force C:\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 C:\PS> Set-PSSessionConfiguration -name MaintenanceShell -MaximumReceivedDataSizePerCommandMB 60 ParamName ParamValue --------- ---------- psmaximumreceived... 60 "Restart WinRM service" WinRM service need to be restarted to make the changes effective. Do you want to run the command "restart-service winrm"? [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y C:\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_Troubl eshooting Help topic. + CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException + FullyQualifiedErrorId : PSSessionOpenFailed Описание ----------- В этом примере показан результат отключения конфигурации сеанса. Первая команда использует командлеты Get-SessionConfiguration и Format-Table для отображения только свойств Name и Permission объектов конфигурации сеанса. Этот табличный формат упрощает просмотр значений объектов. В результате показывается, что членам группы "Администраторы" разрешено использование конфигураций сеанса. Вторая команда отключает конфигурацию сеанса MaintenanceShell с помощью командлета Disable-PSSessionConfiguration. Команда использует параметр Force для подавления всех запросов подтверждений. Третья команда идентична первой. В результате показывается, что по-прежнему можно получить объект, представляющий конфигурацию сеанса MaintenanceShell, даже если всем заблокирован к нему доступ. Запись "AccessDenied" приоритетна по отношению ко всем другим записям в дескрипторе безопасности. Четвертая команда использует командлет Set-PSSessionConfiguration для увеличения параметра MaximumDataSizePerCommandMB для конфигурации сеанса MaintenanceShell до 60. В результате команда завершается успешно, даже если всем заблокирован доступ к конфигурации. Пятая команда пытается использовать конфигурацию сеанса MaintenanceShell в сеансе. Она использует командлет New-PSSession для создания нового сеанса и параметр ConfigurationName для указания конфигурации MaintenanceShell. В результате команда New-PSSession завершается ошибкой, поскольку пользователю запрещен доступ к конфигурации.