다음을 통해 공유


New-PSSessionOption

PSSession에 대한 고급 옵션을 포함하는 개체를 만듭니다.

구문

New-PSSessionOption [-ApplicationArguments <PSPrimitiveDictionary>] [-CancelTimeOut <int>] [-Culture <CultureInfo>] [-IdleTimeOut <int>] [-MaximumReceivedDataSizePerCommand <int>] [-MaximumReceivedObjectSize <int>] [-MaximumRedirection <int>] [-NoCompression] [-NoEncryption] [-NoMachineProfile] [-OpenTimeOut <int>] [-OperationTimeOut <int>] [-ProxyAccessType {<None> | <IEConfig> | <WinHttpConfig> | <AutoDetect> | <NoProxyServer>}] [-ProxyAuthentication {<Default> | <Basic> | <Negotiate> | <NegotiateWithImplicitCredential> | <Credssp> | <Digest> | <Kerberos>}] [-ProxyCredential <PSCredential>] [-SkipCACheck] [-SkipCNCheck] [-SkipRevocationCheck] [-UICulture <CultureInfo>] [-UseUTF16] [<CommonParameters>]

설명

New-PSSessionOption cmdlet은 PSSession에 대한 고급 옵션을 포함하는 개체를 만듭니다. PSSession을 만드는 cmdlet의 SessionOption 매개 변수(예: New-PSSession, Enter-PSSession 및 Invoke-Command) 값으로 개체를 사용할 수 있습니다.

매개 변수가 없는 경우 New-PSSessionOption은 모든 옵션의 기본값이 포함된 개체를 생성합니다. 모든 속성을 편집할 수 있으므로 결과 개체를 템플릿으로 사용하고 엔터프라이즈에 대한 표준 옵션 개체를 만들 수 있습니다.

매개 변수

-ApplicationArguments <PSPrimitiveDictionary>

해석 없이 세션 구성으로 직접 전송되는 해시 테이블을 지정합니다. 세션 구성은 이 해시 테이블을 PSSenderInfo 클래스의 속성으로 사용할 수 있습니다.

필수 여부

false

위치

named

기본값

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-CancelTimeOut <int>

Windows PowerShell에서 작업을 종료하기 전에 취소 작업(Ctrl + C)이 완료될 때까지 기다리는 기간을 결정합니다. 값을 밀리초 단위로 입력합니다.

기본값은 60000(1분)입니다. 값이 0이면 시간 제한이 없으며 명령이 무기한 계속됩니다.

필수 여부

false

위치

named

기본값

60000

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-Culture <CultureInfo>

PSSession에 사용할 culture를 지정합니다. <languagecode2>-<country/regioncode2> 형식(예: "ja-jP")의 culture 이름, CultureInfo 개체를 포함하는 변수 또는 CultureInfo 개체를 가져오는 명령(예: "Get-Culture")을 입력하십시오.

기본값은 $null이며, PSSession을 만들 때 운영 체제에서 설정된 culture가 PSSession에서 사용됩니다.

필수 여부

false

위치

named

기본값

현재 culture

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-IdleTimeOut <int>

원격 컴퓨터가 하트비트 신호를 비롯하여 로컬 컴퓨터에서 통신을 수신하지 않는 경우 PSSession이 열려 있는 기간을 결정합니다. 간격이 만료되면 PSSession이 닫힙니다.

값을 밀리초 단위로 입력합니다. 기본값은 240000(4분)입니다. 최소값은 60000(1분)입니다.

로컬 컴퓨터와 원격 컴퓨터에서 모두 유휴 시간 제한 값을 지정하는 경우 PSSession은 더 짧은 시간 제한 값을 사용합니다. 로컬 컴퓨터는 이 매개 변수를 사용하거나 $PSSessionOption 기본 설정 변수에 유휴 시간 제한을 설정하여 유휴 시간 제한 값을 설정할 수 있습니다. 원격 컴퓨터는 WS-Management 구성(WSMAN:\localhost\shell\idletimeout)에 유휴 시간 제한 값을 지정할 수 있습니다.

필수 여부

false

위치

named

기본값

240000

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-MaximumReceivedDataSizePerCommand <int>

로컬 컴퓨터가 단일 명령으로 원격 컴퓨터에서 수신할 수 있는 최대 바이트 수를 지정합니다. 값을 바이트 단위로 입력하십시오. 기본적으로 데이터 크기 제한은 없습니다.

이 옵션은 클라이언트 컴퓨터의 리소스를 보호하는 데 사용됩니다.

필수 여부

false

위치

named

기본값

제한 없음

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-MaximumReceivedObjectSize <int>

로컬 컴퓨터가 원격 컴퓨터에서 수신할 수 있는 개체의 최대 크기를 지정합니다. 값을 바이트 단위로 입력하십시오. 기본적으로 데이터 크기 제한은 없습니다.

이 옵션은 클라이언트 컴퓨터의 리소스를 보호하는 데 사용됩니다.

필수 여부

false

위치

named

기본값

제한 없음

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-MaximumRedirection <int>

연결이 실패하기 전에 Windows PowerShell에서 연결을 대체 URI(Uniform Resource Identifier)로 리디렉션하는 횟수를 결정합니다. 기본값은 5입니다. 값이 0이면 모든 리디렉션이 방지됩니다.

이 옵션은 AllowRedirection 매개 변수가 PSSession을 만드는 명령에 사용되는 경우에만 PSSession에서 사용됩니다.

필수 여부

false

위치

named

기본값

5

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-NoCompression

PSSession에서 패킷 압축을 해제합니다. 압축하면 프로세서 주기가 더 많이 사용되지만 전송 속도가 빨라집니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-NoEncryption

데이터 암호화를 해제합니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-NoMachineProfile

사용자의 Windows 사용자 프로필이 로드되지 않도록 합니다. 따라서 PSSession을 더 빨리 만들 수 있지만 사용자별 레지스트리 설정, 환경 변수와 같은 항목 및 인증서를 PSSession에서 사용할 수 없습니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-OpenTimeOut <int>

클라이언트 컴퓨터가 세션 연결이 설정될 때까지 기다리는 기간을 결정합니다. 간격이 만료되면 연결 설정 명령이 실패합니다. 값을 밀리초 단위로 입력합니다.

기본값은 180000(3분)입니다. 값이 0이면 시간 제한이 없으며 명령이 무기한 계속됩니다.

필수 여부

false

위치

named

기본값

180000

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-OperationTimeOut <int>

PSSession에서 임의의 작업이 실행될 수 있는 최대 시간을 결정합니다. 간격이 만료되면 작업이 실패합니다. 값을 밀리초 단위로 입력합니다.

기본값은 180000(3분)입니다. 값이 0이면 시간 제한이 없으며 작업이 무기한 계속됩니다.

필수 여부

false

위치

named

기본값

180000

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-ProxyAccessType <ProxyAccessType>

호스트 이름을 확인하는 데 사용되는 메커니즘을 결정합니다. 유효한 값은 IEConfig, WinHttpConfig, AutoDetect, NoProxyServer 및 None입니다. 기본값은 None입니다.

이 매개 변수 값에 대한 자세한 내용은 MSDN(Microsoft Developer Network) 라이브러리의 System.Management.Automation.Remoting.ProxyAccessType 열거형에 대한 설명(https://go.microsoft.com/fwlink/?LinkId=144756)을 참조하십시오.

필수 여부

false

위치

named

기본값

없음

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-ProxyAuthentication <AuthenticationMechanism>

프록시 확인에 사용되는 인증 방법을 지정합니다. 유효한 값은 Basic, Digest 및 Negotiate입니다. 기본값은 Negotiate입니다.

이 매개 변수 값에 대한 자세한 내용은 MSDN 라이브러리의 System.Management.Automation.Runspaces.AuthenticationMechanism 열거형에 대한 설명(https://go.microsoft.com/fwlink/?LinkID=144382)을 참조하십시오.

필수 여부

false

위치

named

기본값

Negotiate

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-ProxyCredential <PSCredential>

프록시 인증에 사용할 자격 증명을 지정합니다. PSCredential 개체가 포함된 변수를 입력하거나 PSCredential 개체를 가져오는 명령(예: Get-Credential)을 입력하십시오. 이 옵션을 설정하지 않으면 자격 증명이 지정되지 않습니다.

필수 여부

false

위치

named

기본값

없음

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-SkipCACheck

HTTPS로 연결하는 경우 클라이언트에서 서버 인증서를 신뢰할 수 있는 CA(인증 기관)에서 서명했는지 확인하지 않도록 지정합니다.

원격 컴퓨터가 물리적으로 안전하고 격리된 네트워크에 속해 있거나 원격 컴퓨터가 WinRM 구성에 신뢰할 수 있는 호스트로 나열되어 있는 등 다른 메커니즘을 사용하여 원격 컴퓨터를 신뢰할 수 있는 경우에만 이 옵션을 사용합니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-SkipCNCheck

서버의 인증서 CN(일반 이름)이 서버의 호스트 이름과 일치할 필요가 없도록 지정합니다. 이 옵션은 HTTPS 프로토콜을 사용하는 원격 작업에서만 사용됩니다.

신뢰할 수 있는 컴퓨터에 대해서만 이 옵션을 사용합니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-SkipRevocationCheck

서버 인증서의 해지 상태를 확인하지 않습니다.

필수 여부

false

위치

named

기본값

False

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-UICulture <CultureInfo>

PSSession에 사용할 UI culture를 지정합니다.

<languagecode2>-<country/regioncode2> 형식(예: "ja-jP")의 culture 이름, CultureInfo 개체를 포함하는 변수 또는 CultureInfo 개체를 가져오는 명령(예: Get-Culture)을 입력하십시오.

기본값은 $null이며, PSSession을 만들 때 운영 체제에서 설정된 UI culture가 PSSession에서 사용됩니다.

필수 여부

false

위치

named

기본값

현재 UI culture

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

-UseUTF16

UTF8 형식 대신 UTF16 형식으로 요청을 인코딩합니다.

필수 여부

false

위치

named

기본값

False(UTF8 인코딩)

파이프라인 입력 적용 여부

false

와일드카드 문자 적용 여부

false

<CommonParameters>

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

입력 및 출력

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

입력

없음

입력을 이 cmdlet으로 파이프할 수 없습니다.

출력

System.Management.Automation.Remoting.PSSessionOption

참고

PSSession을 만들기 위해 SessionOption 매개 변수가 명령에서 사용되지 않는 경우 세션 옵션은 $PSSessionOption 기본 설정 변수의 속성 값으로 결정됩니다(설정된 경우). $PSSessionOption 변수에 대한 자세한 내용은 about_Preference_Variables를 참조하십시오.

예 1

C:\PS>New-PSSessionOption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

설명
-----------
이 명령은 모든 기본값을 사용하여 세션 옵션 개체를 만듭니다.





예 2

C:\PS>$pso = new-pssessionoption -Culture "fr-fr" -MaximumReceivedObjectSize 10MB

C:\PS> new-pssession -computerName Server01 -SessionOption $pso

설명
-----------
이 예에서는 세션 옵션 개체를 사용하여 세션을 구성하는 방법을 보여 줍니다.

첫 번째 명령은 새 세션 옵션 개체를 만들고 $pso 변수의 값에 저장합니다.

두 번째 명령은 New-PSSession cmdlet을 사용하여 Server01 원격 컴퓨터에서 PSSession을 만듭니다. 이 명령은 $pso 변수 값의 세션 옵션 개체를 명령의 SessionOption 매개 변수 값으로 사용합니다.





예 3

C:\PS>enter-pssession -computername Server01 -sessionOption (new-pssessionoption -noEncryption -noCompression)

설명
-----------
이 명령은 Enter-PSSession cmdlet을 사용하여 Server01 컴퓨터와 대화형 세션을 시작합니다. SessionOption 매개 변수의 값은 NoEncryption 및 NoCompression 스위치 매개 변수가 있는 New-PSSessionOption 명령입니다.

New-PSSessionOption 명령은 Enter-PSSession 명령 전에 실행되도록 괄호로 묶입니다.





예 4

C:\PS>$a = new-pssessionoption


MaximumConnectionRedirectionCount : 5
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         :
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:03:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

C:\PS> $a.UICulture = (get-UICulture)
C:\PS> $a.OpenTimeout = (new-timespan -minutes 4)
C:\PS> $a.MaximumConnectionRedirectionCount = 1

C:\PS> $a

MaximumConnectionRedirectionCount : 1
NoCompression                     : False
NoMachineProfile                  : False
ProxyAccessType                   : IEConfig
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
OperationTimeout                  : 00:03:00
NoEncryption                      : False
UseUTF16                          : False
Culture                           :
UICulture                         : en-US
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         :
ApplicationArguments              :
OpenTimeout                       : 00:04:00
CancelTimeout                     : 00:01:00
IdleTimeout                       : 00:04:00

설명
-----------
이 예에서는 세션 옵션 개체를 편집할 수 있음을 보여 줍니다. 모든 속성에 읽기/쓰기 값이 있습니다.

이 메서드를 사용하여 엔터프라이즈에 대한 표준 세션 개체를 만든 다음 특정 사용을 위해 이 개체의 사용자 지정 버전을 만들 수 있습니다.





예 5

C:\PS>$PSSessionOption = New-PSSessionOption -OpenTimeOut 120000

설명
-----------
이 명령은 $PSSessionOption 기본 설정 변수를 만듭니다. 

$PSSessionOption 기본 설정 변수가 세션에 있는 경우 New-PSSession, Enter-PSSession 및 Invoke-Command cmdlet을 사용하여 만든 PSSession의 옵션에 대한 기본값이 이 변수로 설정됩니다.

모든 세션에서 $PSSessionOption 변수를 사용할 수 있도록 하려면 Windows PowerShell 세션 및 Windows PowerShell 프로필에 이 변수를 추가합니다.

$PSSessionOption 변수에 대한 자세한 내용은 about_Preference_Variables를 참조하십시오. 프로필에 대한 자세한 내용은 about_Profiles를 참조하십시오.





예 6

C:\PS>$skipCN = new-pssessionoption -SkipCNCheck

C:\PS> new-pssession -computername 171.09.21.207 -UseSSL -credential domain01\user01 -sessionOption $skipCN

설명
-----------
이 예에서는 SessionOption 개체를 사용하여 원격 세션 구성에 대한 요구 사항을 수행하는 방법을 보여 줍니다.

첫 번째 명령은 New-PSSessionOption cmdlet을 사용하여 SkipCNCheck 속성이 있는 세션 옵션 개체를 만듭니다. 이 명령은 결과 세션 개체를 $skipCN 변수에 저장합니다.

두 번째 명령은 New-PSSession cmdlet을 사용하여 원격 컴퓨터에서 새 PSSession을 만듭니다. $skipCN 확인 변수는 SessionOption 매개 변수의 값에 사용됩니다. 

컴퓨터가 해당 IP 주소로 식별되므로 ComputerName 매개 변수의 값은 SSL(Secure Sockets Layer)에 사용되는 인증서의 일반 이름과 일치하지 않습니다. 따라서 SkipCNCheck 옵션은 필수 사항입니다.





참고 항목

개념

Enter-PSSession
New-PSSession
Invoke-Command