다음을 통해 공유


Disable-PSSessionConfiguration

로컬 컴퓨터의 세션 구성에 대한 액세스를 거부합니다.

구문

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

설명

Disable-PSSessionConfiguration cmdlet은 컴퓨터의 모든 사용자가 세션에서 세션 구성을 사용할 수 없도록 합니다. 이 cmdlet은 시스템 관리자가 사용자에 대한 사용자 지정된 세션 구성을 관리하는 데 사용하도록 설계된 고급 cmdlet입니다.

Disable-PSSessionConfiguration cmdlet은 등록된 하나 이상 세션 구성의 보안 설명자에 "모두 거부" 설정을 추가합니다. 따라서 구성을 등록 취소하거나 보거나 변경할 수 있지만 세션에서 구성을 사용할 수는 없습니다.

매개 변수가 없을 경우 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>

이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.

입력 및 출력

입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.

입력

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration, System.String

세션 구성 개체 또는 세션 구성 이름이 포함된 문자열을 Disable-PSSessionConfiguration으로 파이프할 수 있습니다.

출력

없음

이 cmdlet은 어떠한 개체도 반환하지 않습니다.

참고

Windows Vista 및 Windows Server 2008 이상 버전에서 이 cmdlet을 실행하려면 "관리자 권한으로 실행" 옵션을 사용하여 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 cmdlet을 사용하여 세션 구성 개체의 Name 및 Permission 속성만 표시합니다. 이 테이블 형식을 사용하면 개체의 값을 쉽게 확인할 수 있습니다. 결과에는 Administrators 그룹의 멤버가 세션 구성을 사용할 수 있다고 표시됩니다.

두 번째 명령은 Disable-PSSessionConfiguration cmdlet을 사용하여 MaintenanceShell 세션 구성을 사용하지 않도록 설정합니다. 또한 Force 매개 변수를 사용하여 모든 사용자 확인 메시지를 표시하지 않습니다.

세 번째 명령은 첫 번째 명령을 반복합니다. 결과에는 모든 사용자의 액세스가 거부되지만 MaintenanceShell 세션 구성을 나타내는 개체를 가져올 수 있다고 표시됩니다. "AccessDenied" 항목은 보안 설명자의 다른 모든 항목보다 우선합니다.

네 번째 명령은 Set-PSSessionConfiguration cmdlet을 사용하여 MaintenanceShell 세션 구성의 MaximumDataSizePerCommandMB 설정을 60으로 늘립니다. 결과에는 구성에 대한 모든 사용자의 액세스가 거부되지만 명령이 성공했다고 표시됩니다.

다섯 번째 명령은 세션에서 MaintenanceShell 세션 구성을 사용하려고 합니다. New-PSSession cmdlet을 사용하여 새 세션을 만들고 ConfigurationName 매개 변수를 사용하여 MaintenanceShell 구성을 지정합니다. 결과에는 구성에 대한 사용자 액세스가 거부되어 New-PSSession 명령이 실패했다고 표시됩니다.





참고 항목

개념

about_Session_Configurations
Enable-PSSessionConfiguration
Get-PSSessionConfiguration
Register-PSSessionConfiguration
Set-PSSessionConfiguration
Unregister-PSSessionConfiguration
WSMan Provider