Windows PowerShell 웹 액세스의 권한 부여 규칙 및 보안 기능Authorization Rules and Security Features of Windows PowerShell Web Access

업데이트됨: 2013년 6월 24일Updated: June 24, 2013

적용 대상: Windows Server 2012 R2, Windows Server 2012Applies To: Windows Server 2012 R2, Windows Server 2012

Windows Server 2012 R2 및 Windows Server 2012의 Windows PowerShell 웹 액세스에는 제한적인 보안 모델이 있습니다.Windows PowerShell Web Access in Windows Server 2012 R2 and Windows Server 2012 has a restrictive security model. 사용자가 Windows PowerShell 웹 액세스 게이트웨이에 로그인하고 웹 기반 Windows PowerShell 콘솔을 사용할 수 있으려면 먼저 명시적으로 액세스 권한이 부여되어야 합니다.Users must explicitly be granted access before they can sign in to the Windows PowerShell Web Access gateway and use the web-based Windows PowerShell console.

권한 부여 규칙 및 사이트 보안 구성Configuring authorization rules and site security

Windows PowerShell Web Access가 설치되고 게이트웨이가 구성되고 나면 사용자는 로그인 페이지를 브라우저에서 열 수 있지만 Windows PowerShell 웹 액세스 관리자가 사용자에게 액세스를 명시적으로 허용할 때까지는 로그인할 수 없습니다.After Windows PowerShell Web Access is installed and the gateway is configured, users can open the sign-in page in a browser, but they cannot sign in until the Windows PowerShell Web Access administrator grants users access explicitly. ‘Windows PowerShell 웹 액세스’ 액세스 제어는 다음 표에 설명된 여러 Windows PowerShell cmdlet을 통해 관리할 수 있습니다.'Windows PowerShell Web Access' access control is managed by using the set of Windows PowerShell cmdlets described in the following table. 권한 부여 규칙을 추가하거나 관리하는 작업에 해당하는 GUI는 없습니다.There is no comparable GUI for adding or managing authorization rules. Windows PowerShell Web Access Cmdlets(Windows PowerShell 웹 액세스 Cmdlet)를 참조하세요.See Windows PowerShell Web Access Cmdlets.

관리자는 Windows PowerShell 웹 액세스에 대한 {0-n} 인증 규칙을 정의할 수 있습니다.Administrators can define {0-n} authentication rules for Windows PowerShell Web Access. 기본 보안은 허용적이지 않고 제한적이며, 0 인증 규칙은 사용자가 어디에도 액세스할 수 없음을 의미합니다.The default security is restrictive rather than permissive; zero authentication rules means no users have access to anything.

Windows Server 2012 R2의 Add-PswaAuthorizationRuleTest-PswaAuthorizationRule에는 원격 컴퓨터 또는 활성 Windows PowerShell 웹 액세스 세션에서 Windows PowerShell 웹 액세스 권한 부여 규칙을 추가 및 테스트할 수 있게 해주는 Credential 매개 변수가 포함되어 있습니다.Add-PswaAuthorizationRule and Test-PswaAuthorizationRule in Windows Server 2012 R2 include a Credential parameter that allows you to add and test Windows PowerShell Web Access authorization rules from a remote computer, or from within an active Windows PowerShell Web Access session. Credential 매개 변수가 있는 다른 Windows PowerShell cmdlet과 마찬가지로는 PSCredential 개체를 매개 변수 값으로 지정할 수 있습니다.As with other Windows PowerShell cmdlets that have a Credential parameter, you can specify a PSCredential object as the value of the parameter. 원격 컴퓨터에 전달하려는 자격 증명이 포함된 PSCredential 개체를 만들려면 Get-Credential cmdlet을 실행합니다.To create a PSCredential object that contains credentials you want to pass to a remote computer, run the Get-Credential cmdlet.

Windows PowerShell 웹 액세스 인증 규칙은 허용 목록 규칙입니다.Windows PowerShell Web Access authentication rules are whitelist rules. 각 규칙은 사용자, 대상 컴퓨터 및 지정된 대상 컴퓨터의 특정 Windows PowerShell 세션 구성(엔드포인트 또는 _runspace_라고도 함) 사이에 허용된 연결을 정의한 것입니다.Each rule is a definition of an allowed connection between users, target computers, and particular Windows PowerShell session configurations (also referred to as endpoints or runspaces) on specified target computers. runspace에 대한 설명은 Beginning Use of PowerShell Runspaces(PowerShell Runspace 사용 시작)를 참조하세요.For an explanation on runspaces see Beginning Use of PowerShell Runspaces

중요

사용자는 참인 규칙이 하나만 있어야 액세스 권한을 얻을 수 있습니다.A user needs only one rule to be true to get access. 웹 기반 콘솔에서 모든 언어에 액세스할 수 있는 권한이든, Windows PowerShell 원격 관리 cmdlet에만 액세스할 수 있는 권한이든, 사용자에게 한 컴퓨터에 대한 액세스 권한이 주어지면 사용자는 첫 번째 대상 컴퓨터에 연결된 다른 컴퓨터에도 로그온(또는 홉)할 수 있습니다.If a user is given access to one computer with either full language access or access only to Windows PowerShell remote management cmdlets, from the web-based console, the user can log on (or hop) to other computers that are connected to the first target computer. Windows PowerShell 웹 액세스를 가장 안전하게 구성하는 방법은 사용자가 일반적으로 원격 작업을 수행할 수 있는 제한된 세션 구성만 액세스할 수 있도록 구성하는 것입니다.The most secure way to configure Windows PowerShell Web Access is to allow users access only to constrained session configurations that allow them to accomplish specific tasks that they normally need to perform remotely.

Windows PowerShell Web Access Cmdlets(Windows PowerShell 웹 액세스 Cmdlet)에 참조된 cmdlet을 사용하면 Windows PowerShell 웹 액세스 게이트웨이의 사용자에게 권한을 부여하는 데 사용되는 일련의 액세스 규칙을 만들 수 있습니다.The cmdlets referenced in Windows PowerShell Web Access Cmdlets allow to create a set of access rules which are used to authorize a user on the Windows PowerShell Web Access gateway. 이러한 규칙은 대상 컴퓨터에 대한 ACL(액세스 제어 목록)과는 다른 것으로 웹 액세스에 대한 추가 보안 계층을 제공합니다.The rules are different from the access control lists (ACLs) on the destination computer, and provide an additional layer of security for web access. 보안에 대한 자세한 내용은 다음 섹션에서 설명됩니다.More details about security are described in the following section.

사용자가 위의 보안 계층을 하나도 통과하지 못하면 브라우저 창에 일반적인 '액세스 거부' 메시지가 표시됩니다.If users cannot pass any of the preceding security layers, they receive a generic 'access denied' message in their browser windows. 자세한 보안 정보가 게이트웨이 서버에서 기록되지만 최종 사용자에게는 통과한 보안 계층 개수 또는 로그인이나 인증에 실패한 계층에 대한 정보가 표시되지 않습니다.Although security details are logged on the gateway server, end users are not shown information about how many security layers they passed, or at which layer the sign-in or authentication failure occurred.

권한 부여 규칙을 구성하는 방법에 대한 자세한 내용은 이 항목의 권한 부여 규칙 구성을 참조하세요.For more information about configuring authorization rules, see configuring authorization rules in this topic.

보안Security

Windows PowerShell 웹 액세스 보안 모델은 웹 기반 콘솔의 최종 사용자와 대상 컴퓨터 간의 4단계 계층으로 구성됩니다.The Windows PowerShell Web Access security model has four layers between an end user of the web-based console, and a target computer. Windows PowerShell 웹 액세스 관리자는 IIS 관리자 콘솔에서의 추가 구성을 통해 보안 계층을 추가할 수 있습니다.Windows PowerShell Web Access administrators can add security layers through additional configuration in the IIS Manager console. IIS 관리자 콘솔에서 웹 사이트를 보호하는 방법에 대한 자세한 내용은 웹 서버 보안 구성(IIS7)을 참조하세요.For more information about securing websites in the IIS Manager console, see Configure Web Server Security (IIS7).

IIS 모범 사례 및 서비스 거부 공격 방지에 대한 자세한 내용은 서비스 거부 공격 방지를 위한 모범 사례를 참조하세요.For more information about IIS best practices and preventing denial-of-service attacks, see Best Practices for Preventing DoS/Denial of Service Attacks. 관리자는 인증 소프트웨어 정품을 추가로 구매하여 설치할 수도 있습니다.An administrator can also buy and install additional retail authentication software.

다음 표에는 최종 사용자와 대상 컴퓨터 간의 4단계 보안 계층이 설명되어 있습니다.The following table describes the four layers of security between end users and target computers.

수준Level 계층Layer
11 IIS 웹 서버 보안 기능iis web server security features
22 Windows PowerShell 웹 액세스 양식 기반 게이트웨이 인증windows powershell web access forms-based gateway authentication
33 Windows PowerShell 웹 액세스 권한 부여 규칙windows powershell web access authorization rules
44 대상 인증 및 권한 부여 규칙target authentication and authorization rules

각 계층에 대한 자세한 내용은 다음 제목 아래에서 찾을 수 있습니다.Detailed information about each layer can be found under the following headings:

IIS 웹 서버 보안 기능IIS Web Server security features

Windows PowerShell 웹 액세스 사용자는 게이트웨이에서 자신의 계정을 인증하려면 항상 사용자 이름과 암호를 제공해야 합니다.Windows PowerShell Web Access users must always provide a user name and password to authenticate their accounts on the gateway. 하지만 Windows PowerShell 웹 액세스 관리자는 클라이언트 인증서 인증을 선택적으로 켜거나 끌 수도 있습니다(테스트 인증서를 사용하도록 설정하고 나중에 정품 인증서를 구성하는 방법은 Windows PowerShell 웹 액세스 설치 및 사용 참조).However, Windows PowerShell Web Access administrators can also turn optional client certificate authentication on or off, see install and use windows powershell web access to enable a test certificate and, later, how to configure a genuine certificate).

선택적인 클라이언트 인증서 기능을 사용하려면 최종 사용자에게 사용자 이름과 암호 이외에 유효한 클라이언트 인증서가 있어야 하며, 이러한 기능은 웹 서버(IIS) 구성의 일부로 포함됩니다.The optional client certificate feature requires end users to have a valid client certificate, in addition to their user names and passwords, and is part of Web Server (IIS) configuration. 클라이언트 인증서 계층이 사용하도록 설정되면 Windows PowerShell 웹 액세스 로그인 페이지에서는 사용자의 로그인 자격 증명을 확인하기 전에 사용자에게 유효한 인증서를 제공하라는 메시지를 표시합니다.When the client certificate layer is enabled, the Windows PowerShell Web Access sign-in page prompts users to provide valid certificates before their sign-in credentials are evaluated. 클라이언트 인증서 인증에서는 클라이언트 인증서를 자동으로 확인합니다.Client certificate authentication automatically checks for the client certificate. 유효한 인증서가 없으면 Windows PowerShell 웹 액세스에서 사용자에게 인증서를 제공하라는 메시지를 표시합니다.If a valid certificate is not found, Windows PowerShell Web Access informs users, so they can provide the certificate. 유효한 클라이언트 인증서가 검색되면 Windows PowerShell 웹 액세스에서 사용자가 해당하는 사용자 이름과 암호를 입력할 로그인 페이지를 엽니다.If a valid client certificate is found, Windows PowerShell Web Access opens the sign-in page for users to provide their user names and passwords.

이는 IIS 웹 서버에서 제공되는 추가 보안 설정의 한 예입니다.This is one example of additional security settings that are offered by IIS Web Server. 기타 IIS 보안 기능에 대한 자세한 내용은 웹 서버 보안 구성(IIS 7)을 참조하세요.For more information about other IIS security features, see Configure Web Server Security (IIS 7).

Windows PowerShell 웹 액세스 양식 기반 게이트웨이 인증Windows PowerShell Web Access forms-based gateway authentication

Windows PowerShell 웹 액세스 로그인 페이지에서는 자격 증명 세트(사용자 이름과 암호)를 요구하며, 대상 컴퓨터에 대해 다른 자격 증명을 제공할 수 있는 옵션을 사용자에게 제공합니다.The Windows PowerShell Web Access sign-in page requires a set of credentials (user name and password) and offers users the option of providing different credentials for the target computer. 사용자가 대체 자격 증명을 제공하지 않으면 게이트웨이 연결에 사용되는 기본 사용자 이름과 암호가 대상 컴퓨터와 연결하는 데에도 사용됩니다.If the user does not provide alternate credentials, the primary user name and password that are used to connect to the gateway are also used to connect to the target computer.

이렇게 요구된 자격 증명은 Windows PowerShell 웹 액세스 게이트웨이에서 인증됩니다.The required credentials are authenticated on the Windows PowerShell Web Access gateway. 이러한 자격 증명은 로컬 Windows PowerShell 웹 액세스 게이트웨이 서버나 Active Directory의 유효한 사용자 계정이어야 합니다.These credentials must be valid user accounts on either the local Windows PowerShell Web Access gateway server, or in Active Directory.

Windows PowerShell 웹 액세스 권한 부여 규칙Windows PowerShell Web Access authorization rules

사용자가 게이트웨이에서 인증되고 나면 Windows PowerShell 웹 액세스는 권한 부여 규칙을 점검하여 요청된 대상 컴퓨터에 대한 액세스 권한이 사용자에게 있는지 확인합니다.After a user is authenticated at the gateway, Windows PowerShell Web Access checks authorization rules to verify if the user has access to the requested target computer. 권한 부여에 성공하면 사용자의 자격 증명이 대상 컴퓨터에 전달됩니다.After successful authorization, the user's credentials are passed along to the target computer.

이러한 규칙은 사용자가 게이트웨이에서 인증된 이후에만 평가할 수 있으며, 그 전에 대상 컴퓨터에서 사용자를 인증할 수 있습니다.These rules are evaluated only after a user has been authenticated by the gateway, and before a user can be authenticated on a target computer.

대상 인증 및 권한 부여 규칙Target authentication and authorization rules

Windows PowerShell 웹 액세스의 보안을 위한 마지막 계층은 대상 컴퓨터의 자체 보안 구성입니다.The final layer of security for Windows PowerShell Web Access is the target computer's own security configuration. 사용자는 대상 컴퓨터와 Windows PowerShell 웹 액세스 권한 부여 규칙에 적절한 액세스 권한이 구성되어 있어야 Windows PowerShell 웹 액세스를 통해 대상 컴퓨터를 관리할 수 있는 Windows PowerShell 웹 기반 콘솔을 실행할 수 있습니다.Users must have the appropriate access rights configured on the target computer, and also in the Windows PowerShell Web Access authorization rules, to run a Windows PowerShell web-based console that affects a target computer through Windows PowerShell Web Access.

이 계층은 사용자가 Enter-PSSession 또는 New-PSSession cmdlet을 실행하여 Windows PowerShell 내에서 대상 컴퓨터에 대한 원격 Windows PowerShell 세션을 만들려고 하는 경우 연결 시도를 평가하는 동일한 보안 메커니즘을 제공합니다.This layer offers the same security mechanisms that would evaluate connection attempts if users tried to create a remote Windows PowerShell session to a target computer from within Windows PowerShell by running the Enter-PSSession or New-PSSession cmdlets.

기본적으로 Windows PowerShell 웹 액세스에서는 게이트웨이와 대상 컴퓨터를 모두 인증하는 데 기본 사용자 이름과 암호를 사용합니다.By default, Windows PowerShell Web Access uses the primary user name and password for authentication on both the gateway and the target computer. 하지만 옵션 연결 설정섹션의 웹 기반 로그인 페이지에는 대상 컴퓨터에 다른 자격 증명을 제공하는 옵션이 있으므로, 필요에 따라 적절히 사용할 수 있습니다.The web-based sign-in page, in a section titled Optional connection settings, offers users the option of providing different credentials for the target computer, if they are required. 사용자가 대체 자격 증명을 제공하지 않으면 게이트웨이 연결에 사용되는 기본 사용자 이름과 암호가 대상 컴퓨터와 연결하는 데에도 사용됩니다.If the user does not provide alternate credentials, the primary user name and password that are used to connect to the gateway are also used to connect to the target computer.

권한 부여 규칙을 사용하면 사용자가 특정 세션 구성에 액세스할 수 있도록 허용할 수 있습니다.Authorization rules can be used to allow users access to a particular session configuration. Windows PowerShell 웹 액세스에 대한 _제한된 runspace_나 세션 구성을 만들어 특정 사용자가 Windows PowerShell 웹 액세스에 로그인할 때 특정 세션 구성에만 연결할 수 있도록 구성할 수 있습니다.You can create restricted runspaces or session configurations for Windows PowerShell Web Access, and allow specific users to connect only to specific session configurations when they sign in to Windows PowerShell Web Access. ACL(액세스 제어 목록)을 사용하면 특정 엔드포인트에 액세스할 수 있는 사용자를 지정할 수 있으며, 이 섹션에 설명된 권한 부여 규칙을 통해 특정 사용자 집합의 엔드포인트에 대한 액세스를 추가로 제한할 수 있습니다.You can use access control lists (ACLs) to determine which users have access to specific endpoints, and further restrict access to the endpoint for a specific set of users by using authorization rules described in this section. 제한된 runspace에 대한 자세한 내용은 MSDN의 Creating a constrained runspace(제한된 runspace 만들기)를 참조하세요.For more information about restricted runspaces, see Creating a constrained runspace.

권한 부여 규칙 구성Configuring authorization rules

관리자는 Windows PowerShell 웹 액세스 사용자에 대해 자신의 Windows PowerShell 원격 관리 환경에서 이미 정의되어 있는 동일한 권한 부여 규칙을 사용하려고 할 수 있습니다.Administrators likely want the same authorization rule for Windows PowerShell Web Access users that is already defined in their environment for Windows PowerShell remote management. 이 섹션의 첫 번째 절차에서는 단일 세션 구성 내에서 한 컴퓨터를 관리하기 위해 로그인하는 한 명의 사용자에게 액세스를 허용하는 안전한 권한 부여 규칙을 추가하는 방법을 설명합니다.The first procedure in this section describes how to add a secure authorization rule that grants access to one user, signing in to manage one computer, and within a single session configuration. 두 번째 절차에서는 더 이상 필요하지 않는 권한 부여 규칙을 제거하는 방법을 설명합니다.The second procedure describes how to remove an authorization rule that is no longer needed.

특정 사용자가 Windows PowerShell 웹 액세스의 제한된 runspace 내에서만 작업할 수 있도록 사용자 지정 세션 구성을 사용하려는 경우, 사용자 지정 세션 구성을 만든 후에 이를 참조하는 권한 규칙을 추가합니다.If you plan to use custom session configurations to allow specific users to work only within restricted runspaces in Windows PowerShell Web Access, create your custom session configurations before you add authorization rules that refer to them. Windows PowerShell 웹 액세스 cmdlet을 사용하여 사용자 지정 세션 구성을 만들 수는 없습니다.You cannot use the Windows PowerShell Web Access cmdlets to create custom session configurations. 사용자 지정 세션 구성을 만드는 방법에 대한 자세한 내용은 about_Session_Configuration_Files를 참조하세요.For more information about creating custom session configurations, see about_Session_Configuration_Files.

Windows PowerShell 웹 액세스 cmdlet에서는 와일드카드 문자(*)를 단독으로 사용할 수 있습니다.Windows PowerShell Web Access cmdlets support one wildcard character, an asterisk ( * ). 문자열에 포함된 와일드카드 문자는 지원되지 않으므로 속성(사용자, 컴퓨터 또는 세션 구성)당 하나의 와일드카드 문자를 단독으로 사용합니다.Wildcard characters within strings are not supported; use a single asterisk per property (users, computers, or session configurations).

참고

권한 부여 규칙을 사용하여 사용자에게 액세스 권한을 허용하고 Windows PowerShell 웹 액세스 환경을 보호하는 여러 가지 방법에 대해서는 이 항목의 기타 권한 부여 규칙 시나리오 예를 참조하세요.For more ways you can use authorization rules to grant access to users and help secure the Windows PowerShell Web Access environment, see other authorization rule scenario examples in this topic.

제한적인 권한 부여 규칙을 추가하려면To add a restrictive authorization rule

  1. 다음 중 하나를 수행하여 관리자 권한으로 Windows PowerShell 세션을 엽니다.Do one of the following to open a Windows PowerShell session with elevated user rights.

    • Windows 바탕 화면의 작업 표시줄에서 Windows PowerShell을 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다.On the Windows desktop, right-click Windows PowerShell on the taskbar, and then click Run as Administrator.

    • Windows 시작 화면에서 Windows PowerShell을 마우스 오른쪽 단추로 클릭한 다음 관리자 권한으로 실행을 클릭합니다.On the Windows Start screen, right-click Windows PowerShell, and then click Run as Administrator.

  2. 세션 구성을 사용하여 사용자 액세스를 제한하는 단계(옵션):Optional step For restricting user access by using session configurations:

    사용할 세션 구성이 규칙에 이미 있는지 확인합니다.Verify that the session configurations that you want to use, already exist in your rules .

    해당 구성을 아직 만들지 않은 경우 about_Session_Configuration_Files에서 세션 구성을 만드는 방법에 대한 지침을 따르세요.If they have not yet been created, use instructions for creating session configurations in about_Session_Configuration_Files.

  3. 이 권한 부여 규칙을 통해 특정 사용자는 일반적으로 액세스 권한을 갖고 있는 네트워크상의 한 컴퓨터에만 액세스할 수 있으며, 일반적인 스크립팅 및 cmdlet 환경에 해당하는 특정 세션 구성에 액세스할 수 있습니다.This authorization rule allows a specific user access to one computer on the network to which they typically have access, with access to a specific session configuration that is scoped to the user'™s typical scripting and cmdlet needs. 다음을 입력하고 Enter 키를 누릅니다.Type the following, and then press Enter.

    Add-PswaAuthorizationRule -UserName <domain\user | computer\user> `
       -ComputerName <computer_name> -ConfigurationName <session_configuration_name>
    
    • 다음 예에서는 Contoso 도메인의 _JSmith_라는 사용자에게 Contoso_214 컴퓨터를 관리하고, _NewAdminsOnly_라는 세션 구성을 사용할 수 있는 액세스 권한이 부여됩니다.In the following example, a user named JSmith in the Contoso domain is granted access to manage the computer Contoso_214, and use a session configuration named NewAdminsOnly.
    Add-PswaAuthorizationRule -UserName 'Contoso\JSmith' `
       -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly
    
  4. Get-PswaAuthorizationRule cmdlet 또는 Test-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName** <computer_name>을 실행하여 이 규칙이 생성되어 있는지 확인합니다.Verify that the rule has been created by running either the Get-PswaAuthorizationRule cmdlet, or Test-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName** <computer_name>. 정의합니다(예: Test-PswaAuthorizationRule -UserName Contoso\\JSmith -ComputerName Contoso_214).For example, Test-PswaAuthorizationRule -UserName Contoso\\JSmith -ComputerName Contoso_214.

권한 부여 규칙을 제거하려면To remove an authorization rule

  1. Windows PowerShell 세션이 아직 열려 있지 않으면 이 섹션에 나와 있는 제한적인 권한 부여 규칙을 추가하려면의 1단계를 참조하세요.If a Windows PowerShell session is not already open, see step 1 of to add a restrictive authorization rule in this section.

  2. 다음을 입력한 다음 Enter 키를 누릅니다(여기서 rule ID는 제거하려는 규칙의 고유한 ID 번호를 나타냄).Type the following, and then press Enter, where rule ID represents the unique ID number of the rule that you want to remove.

    Remove-PswaAuthorizationRule -ID <rule ID>
    

    또는 제거할 규칙의 ID 번호는 모르지만 이름을 알고 있다면 다음 예와 같이 해당 규칙의 이름을 가져온 다음 Remove-PswaAuthorizationRule cmdlet에 파이프하여 규칙을 제거합니다.Alternatively, if you do not know the ID number, but know the friendly name of the rule you want to remove, you can get the name of the rule, and pipe it to the Remove-PswaAuthorizationRule cmdlet to remove the rule, as shown in the following example:

    Get-PswaAuthorizationRule `
       -RuleName <rule-name> | Remove-PswaAuthorizationRule
    

참고

지정된 권한 부여 규칙을 삭제할지 확인하는 메시지는 표시되지 않으므로, Enter 키를 누르면 규칙이 삭제됩니다.You are not prompted to confirm whether you want to delete the specified authorization rule; the rule is deleted when you press Enter. 따라서 Remove-PswaAuthorizationRule cmdlet을 실행하기 전에 권한 부여 규칙을 제거할 것인지 확실히 해야 합니다.Be sure that you want to remove the authorization rule before running the Remove-PswaAuthorizationRule cmdlet.

기타 권한 부여 규칙 시나리오 예Other authorization rule scenario examples

모든 Windows PowerShell 세션에서는 세션 구성을 사용하는데, 세션에 세션 구성이 지정되어 있지 않은 경우 Microsoft.PowerShell이라고 하는 기본 제공 Windows PowerShell 세션 구성이 Windows PowerShell에서 기본적으로 사용됩니다.Every Windows PowerShell session uses a session configuration; if one is not specified for a session, Windows PowerShell uses the default, built-in Windows PowerShell session configuration, called Microsoft.PowerShell. 이 기본 세션 구성에는 컴퓨터에서 사용할 수 있는 모든 cmdlet이 포함되어 있습니다.The default session configuration includes all cmdlets that are available on a computer. 관리자는 제한된 runspace(최종 사용자가 제한된 범위의 cmdlet과 작업을 수행할 수 있음)가 사용된 세션 구성을 정의하여 모든 컴퓨터에 대한 액세스를 제한할 수 있습니다.Administrators can restrict access to all computers by defining a session configuration with a restricted runspace (a limited range of cmdlets and tasks that their end users could perform). 한 컴퓨터에 대해 모든 언어에 액세스할 수 있거나 Windows PowerShell 원격 관리 cmdlet에만 액세스할 수 있도록 허용된 사용자는 첫 번째 컴퓨터에 연결된 다른 컴퓨터에도 연결할 수 있습니다.A user who is granted access to one computer with either full language access or only the Windows PowerShell remote management cmdlets can connect to other computers that are connected to the first computer. 제한된 runspace를 정의하면 사용자가 허용된 자신의 Windows PowerShell runspace에서 다른 컴퓨터를 액세스할 수 없게 되어 Windows PowerShell 웹 액세스 환경의 보안을 강화할 수 있습니다.Defining a restricted runspace can prevent users from accessing other computers from their allowed Windows PowerShell runspace, and improves the security of your Windows PowerShell Web Access environment. 그룹 정책을 사용하여 관리자가 Windows PowerShell 웹 액세스를 통해 액세스할 수 있도록 구성하려는 모든 컴퓨터에 세션 구성을 배포할 수 있습니다.The session configuration can be distributed (by using Group Policy) to all computers that administrators want to make accessible through Windows PowerShell Web Access. 세션 구성에 대한 자세한 내용은 about_Session_Configurations를 참조하세요.For more information about session configurations, see about_Session_Configurations. 아래 이 시나리오에 대한 몇 가지 예가 나와 있습니다.The following are some examples of this scenario.

  • 관리자는 제한된 runspace가 사용되는 PswaEndpoint라는 엔드포인트를 만듭니다.An administrator creates an endpoint, called PswaEndpoint, with a restricted runspace. 그런 다음, *,*,PswaEndpoint라는 규칙을 만들고 엔드포인트를 다른 컴퓨터에 배포합니다.Then, the administrator creates a rule, *,*,PswaEndpoint, and distributes the endpoint to other computers. 이 규칙을 통해 모든 사용자는 PswaEndpoint라는 엔드포인트가 있는 모든 컴퓨터에 액세스할 수 있습니다.The rule allows all users to access all computers with the endpoint PswaEndpoint. 이 규칙이 규칙 집합에 유일하게 정의되어 있는 규칙이라면 이 엔드포인트가 없는 컴퓨터에는 액세스할 수 없습니다.If this is the only authorization rule defined in the rule set, computers without that endpoint would not be accessible.

  • 관리자는 제한된 runspace가 사용되는 PswaEndpoint라는 엔드포인트를 만들었으며, 특정 사용자만 액세스할 수 있도록 제한하려고 합니다.The administrator created an endpoint with a restricted runspace called PswaEndpoint,and wants to restrict access to specific users. 관리자는 Level1Support라는 사용자 그룹을 만들고 Level1Support,*,PswaEndpoint 규칙을 정의합니다.The administrator creates a group of users called Level1Support, and defines the following rule: Level1Support,*,PswaEndpoint. 이 규칙에서는 Level1Support 그룹의 모든 사용자가 PswaEndpoint 구성이 사용된 모든 컴퓨터에 액세스할 수 있도록 허용합니다.The rule grants any users in the group Level1Support access to all computers with the PswaEndpoint configuration. 이와 마찬가지로, 특정 컴퓨터 집합에만 액세스하도록 제한할 수도 있습니다.Similarly, access can be restricted to a specific set of computers.

  • 일부 관리자는 특정 사용자에게 다른 사용자보다 많은 액세스 권한을 제공합니다.Some administrators provide certain users more access than others. 예를 들어 관리자는 AdminsBasicSupport라는 두 개의 사용자 그룹을 만듭니다.For example, an administrator creates two user groups, Admins and BasicSupport. 또한 관리자는 제한된 runspace가 사용되는 PswaEndpoint라는 엔드포인트를 만들고, Admins,*,*BasicSupport,*,PswaEndpoint라는 두 개의 규칙을 정의합니다.The administrator also creates an endpoint with a restricted runspace called PswaEndpoint, and defines the following two rules: Admins,*,* and BasicSupport,*,PswaEndpoint. 첫 번째 규칙에서는 Admin 그룹의 모든 사용자에게 모든 컴퓨터에 대한 액세스 권한을 제공하지만, 두 번째 규칙에서는 BasicSupport 그룹의 모든 사용자에게 PswaEndpoint가 포함된 컴퓨터에만 액세스할 수 있는 권한을 제공합니다.The first rule provides all users in the Admin group access to all computers, and the second rule provides all users in the BasicSupport group access only to those computers with PswaEndpoint.

  • 관리자는 개인 테스트 환경을 구축했으며, 권한을 부여받은 모든 네트워크 사용자가 일반적으로 액세스하던 네트워크상의 모든 컴퓨터와, 일반적으로 액세스하던 모든 세션 구성에 액세스할 수 있도록 허용하려고 합니다.An administrator has set up a private test environment, and wants to allow all authorized network users access to all computers on the network to which they typically have access, with access to all session configurations to which they typically have access. 이 권한 부여 규칙은 개인 테스트 환경에서 사용되므로 관리자는 보안성이 없는 권한 부여 규칙을 만듭니다.Because this is a private test environment, the administrator creates an authorization rule that is not secure. - 관리자는 Add-PswaAuthorizationRule * * * cmdlet을 실행합니다(여기서 와일드카드 문자 * 는 각각 모든 사용자, 모든 컴퓨터 및 모든 구성을 나타냄).- The administrator runs the cmdlet Add-PswaAuthorizationRule * * *, which uses the wildcard character * to represent all users, all computers, and all configurations. - 이 규칙은 Add-PswaAuthorizationRule -UserName * -ComputerName * -ConfigurationName * cmdlet과 동일합니다.- This rule is the equivalent of the following: Add-PswaAuthorizationRule -UserName * -ComputerName * -ConfigurationName *.

    참고

    이 규칙은 보안 환경에서는 사용하지 않는 것이 좋으며, Windows PowerShell 웹 액세스 권한 부여 규칙에서 제공되는 보안 계층을 무시합니다.This rule is not recommended in a secure environment, and bypasses the authorization rule layer of security provided by Windows PowerShell Web Access.

  • 관리자는 사용자가 작업 그룹과 도메인을 모두 포함하는 환경에서 대상 컴퓨터에 연결할 수 있도록 해야 합니다. 여기서 작업 그룹 컴퓨터는 도메인의 대상 컴퓨터에 연결하는 데 사용되기도 하며, 도메인 컴퓨터는 작업 그룹의 대상 컴퓨터에 연결하는 데 사용되기도 합니다.An administrator must allow users to connect to target computers in an environment that includes both workgroups and domains, where workgroup computers are occasionally used to connect to target computers in domains, and computers in domains are occasionally used to connect to target computers in workgroups. 관리자에게는 작업 그룹의 게이트웨이 서버인 PswaServer가 있고, 대상 컴퓨터 srv1.contoso.com 은 도메인에 있습니다.The administrator has a gateway server, PswaServer, in a workgroup; and target computer srv1.contoso.com is in a domain. 사용자 Chris는 작업 그룹 게이트웨이 서버와 대상 컴퓨터에서 모두 인증된 로컬 사용자입니다.User Chris is an authorized local user on both the workgroup gateway server and the target computer. 작업 그룹 서버에서 Chris의 사용자 이름은 chrisLocal;이며, 대상 컴퓨터에서는 contoso\chris입니다.His user name on the workgroup server is chrisLocal; and his user name on the target computer is contoso\chris. 관리자는 다음 규칙을 추가하여 Chris에게 srv1.contoso.com에 대한 액세스 권한을 부여합니다.To authorize access to srv1.contoso.com for Chris, the administrator adds the following rule.

Add-PswaAuthorizationRule -userName PswaServer\chrisLocal `
   -computerName srv1.contoso.com -configurationName Microsoft.PowerShell

위 규칙의 예에서는 게이트웨이 서버에서 Chris를 인증한 다음 srv1에 대한 액세스 권한을 부여합니다.The preceding rule example authenticates Chris on the gateway server, and then authorizes his access to srv1. 로그인 페이지에서 Chris는 옵션 연결 설정 영역(contoso\chris)에서 두 번째 자격 증명 집합을 입력해야 합니다.On the sign-in page, Chris must provide a second set of credentials in the Optional connection settings area (contoso\chris). 게이트웨이 서버는 추가 자격 증명 집합을 사용하여 대상 컴퓨터인 srv1.contoso.com에서 사용자를 인증합니다.The gateway server uses the additional set of credentials to authenticate him on the target computer, srv1.contoso.com.

위 시나리오에서는 다음 작업에 성공하고 한 가지 이상의 권한 부여 규칙에 따라 허용된 후에만 Windows PowerShell 웹 액세스를 대상 컴퓨터에 연결할 수 있습니다.In the preceding scenario, Windows PowerShell Web Access establishes a successful connection to the target computer only after the following have been successful, and allowed by at least one authorization rule.

  1. server_name\user_name 형식의 사용자 이름을 권한 부여 규칙에 추가하여 작업 그룹 게이트웨이 서버에서 인증Authentication on the workgroup gateway server by adding a user name in the format server_name\user_name to the authorization rule

  2. 옵션 연결 설정 영역의 로그인 페이지에서 제공된 대체 자격 증명을 사용하여 대상 컴퓨터에서 인증Authentication on the target computer by using alternate credentials provided on the sign-in page, in the Optional connection settings area

    참고

    게이트웨이 및 대상 컴퓨터가 다른 작업 그룹이나 도메인에 있을 경우, 두 개의 작업 그룹 컴퓨터나 두 개의 도메인 또는 작업 그룹과 도메인 간에 트러스트 관계가 설정되어 있어야 합니다.If gateway and target computers are in different workgroups or domains, a trust relationship must be established between the two workgroup computers, the two domains, or between the workgroup and the domain. 이 관계는 Windows PowerShell 웹 액세스 권한 부여 규칙 cmdlet을 사용하여 구성할 수 없습니다.This relationship cannot be configured by using Windows PowerShell Web Access authorization rule cmdlets. 권한 규칙이 컴퓨터 간의 트러스트 관계를 정의하지는 않습니다. 즉 권한 규칙은 특정 대상 컴퓨터와 세션 구성에 연결하는 사용자만 인증할 수 있습니다.Authorization rules do not define a trust relationship between computers; they can only authorize users to connect to specific target computers and session configurations. 서로 다른 도메인 간에 트러스트 관계를 구성하는 방법에 대한 자세한 내용은 도메인 및 포리스트 트러스트 만들기를 참조하세요.For more information about how to configure a trust relationship between different domains, see Creating Domain and Forest Trusts. 신뢰할 수 있는 호스트 목록에 작업 그룹 컴퓨터를 추가하는 방법에 대한 자세한 내용은 서버 관리자를 통한 원격 관리를 참조하세요.For more information about how to add workgroup computers to a trusted hosts list, see Remote Management with Server Manager.

여러 사이트에 단일 권한 부여 규칙 집합 사용Using a single set of authorization rules for multiple sites

권한 부여 규칙은 XML 파일에 저장됩니다.Authorization rules are stored in an XML file. 기본적으로 XML 파일의 경로 이름은 %windir%\Web\PowershellWebAccess\data\AuthorizationRules.xml입니다.By default, the path name of the XML file is %windir%\Web\PowershellWebAccess\data\AuthorizationRules.xml.

권한 부여 규칙 XML 파일은 powwa.config 파일에 저장되며 이 파일은 %windir%\Web\PowershellWebAccess\data에 있습니다.The path to the authorization rules XML file is stored in the powwa.config file, which is found in %windir%\Web\PowershellWebAccess\data. 관리자는 기본 설정이나 요구 사항에 맞춰 이 powwa.config에 포함된 기본 경로를 변경할 수 있습니다.The administrator has the flexibility to change the reference to the default path in powwa.config to suit preferences or requirements. 관리자가 파일 위치를 변경할 수 있으므로 여러 Windows PowerShell 웹 액세스 게이트웨이에서 동일한 권한 부여 규칙을 사용해야 할 경우 그러한 구성이 가능합니다.Allowing the administrator to change the location of the file lets multiple Windows PowerShell Web Access gateways use the same authorization rules, if such a configuration is desired.

세션 관리Session management

기본적으로 Windows PowerShell 웹 액세스에서는 사용자가 한 번에 세 세션까지 사용할 수 있습니다.By default, Windows PowerShell Web Access limits a user to three sessions at one time. 하지만 IIS 관리자를 사용하여 사용자당 여러 세션을 지원하도록 웹 응용 프로그램의 web.config 파일을 편집할 수 있습니다.You can edit the web application's web.config file in IIS Manager to support a different number of sessions per user. web.config 파일의 경로는 $Env:Windir\Web\PowerShellWebAccess\wwwroot\Web.config 입니다.The path to the web.config file is $Env:Windir\Web\PowerShellWebAccess\wwwroot\Web.config.

기본적으로 IIS 웹 서버는 설정이 편집될 경우 응용 프로그램 풀을 다시 시작하도록 구성됩니다.By default, IIS Web Server is configured to restart the application pool if any settings are edited. 예를 들어 web.config 파일이 변경되면 응용 프로그램 풀이 다시 시작됩니다.For example, the application pool is restarted if changes are made to the web.config file. Windows PowerShell 웹 액세스에서는 메모리 내 세션 상태가 사용되므로, 응용 프로그램 풀이 다시 시작되면 Windows PowerShell 웹 액세스 세션에 로그인한 사용자는 해당 세션을 잃어버리게 됩니다.>Because Windows PowerShell Web Access uses in-memory session states, >users signed in to Windows PowerShell Web Access sessions lose their sessions when the application pool is restarted.

로그인 페이지의 기본 매개 변수 설정Setting default parameters on the sign-in page

Windows PowerShell 웹 액세스 게이트웨이가 Windows Server 2012 R2에서 실행되는 경우 Windows PowerShell 웹 액세스 로그인 페이지에 표시되는 설정에 대한 기본값을 구성할 수 있습니다.If your Windows PowerShell Web Access gateway is running on Windows Server 2012 R2, you can configure default values for the settings that are displayed on the Windows PowerShell Web Access sign-in page. 이전 단락에 설명된 web.config 파일에서 값을 구성할 수 있습니다.You can configure values in the web.config file that is described in the preceding paragraph. 로그인 페이지 설정에 대한 기본값은 web.config 파일의 appSettings 섹션에 있습니다. 다음은 appSettings 섹션의 예입니다.Default values for the sign-in page settings are found in the appSettings section of the web.config file; the following is an example of the appSettings section. 이러한 설정에 유효한 값은 대부분 Windows PowerShell에서 New-PSSession cmdlet의 해당 매개 변수에 대한 값과 동일합니다.Valid values for many of these settings are the same as those for the corresponding parameters of the New-PSSession cmdlet in Windows PowerShell.

예를 들어 다음 코드 블록에 표시된 defaultApplicationName 키는 대상 컴퓨터의 $PSSessionApplicationName 기본 설정 변수 값입니다.For example, the defaultApplicationName key, as shown in the following code block, is the value of the $PSSessionApplicationName preference variable on the target computer.

  <appSettings>
      <add key="maxSessionsAllowedPerUser" value="3"/>
      <add key="defaultPortNumber" value="5985"/>
      <add key="defaultSSLPortNumber" value="5986"/>
      <add key="defaultApplicationName" value="WSMAN"/>
      <add key="defaultUseSslSelection" value="0"/>
      <add key="defaultAuthenticationType" value="0"/>
      <add key="defaultAllowRedirection" value="0"/>
      <add key="defaultConfigurationName" value="Microsoft.PowerShell"/>
  </appSettings>

시간 제한 및 계획되지 않은 연결 끊김Time-outs and unplanned disconnections

Windows PowerShell 웹 액세스 세션의 시간이 초과됩니다. Windows Server 2012에서 실행되는 Windows PowerShell 웹 액세스에서는 15분 동안 세션 활동이 없을 경우 로그인한 사용자에게 시간 초과 메시지가 표시됩니다.Windows PowerShell Web Access sessions time out. In Windows PowerShell Web Access running on Windows Server 2012, A time-out message is displayed to signed-in users after 15 minutes of session inactivity. 이 메시지가 표시된 후 5분 이내에 사용자가 응답하지 않으면 세션이 종료되고 사용자는 로그아웃됩니다. IIS 관리자에서 웹 사이트 설정 중 세션의 시간 초과 기간을 변경할 수 있습니다.If the user does not respond within five minutes after the time-out message is displayed, the session is ended, and the user is signed out. You can change time-out periods for sessions in the website settings in IIS Manager.

Windows Server 2012 R2에서 실행되는 Windows PowerShell 웹 액세스에서는 기본적으로 20분 동안 활동이 없을 경우 세션이 시간 초과됩니다.In Windows PowerShell Web Access running on Windows Server 2012 R2, sessions time out, by default, after 20 minutes of inactivity. 사용자가 직접 세션을 닫았기 때문이 아니라 네트워크 오류나 기타 계획되지 않은 종료 또는 실패로 인해 웹 기반 콘솔의 세션에서 연결이 끊어진 경우 클라이언트 쪽의 시간 제한 기간이 경과할 때까지 Windows PowerShell 웹 액세스 세션이 대상 컴퓨터에 연결된 상태로 계속 실행됩니다.If users are disconnected from sessions in the web-based console because of network errors or other unplanned shutdowns or failures, and not because they have closed the sessions themselves, the Windows PowerShell Web Access sessions continue to run, connected to target computers, until the time-out period on the client side lapses. 기본값인 20분 또는 게이트웨이 관리자가 지정한 시간 제한 기간 중 더 짧은 시간 후에 세션 연결이 끊어집니다.The session is disconnected after either the default 20 minutes, or after the time-out period specified by the gateway administrator, whichever is shorter.

게이트웨이 서버가 Windows Server 2012 R2를 실행하는 경우 Windows PowerShell 웹 액세스를 통해 사용자가 나중에 저장된 세션에 다시 연결할 수 있지만 네트워크 오류, 계획되지 않은 종료 또는 기타 실패로 인해 세션 연결이 끊어진 경우에는 게이트웨이 관리자가 지정한 시간 제한 기간이 경과할 때까지 사용자가 저장된 세션을 보거나 다시 연결할 수 없습니다.If the gateway server is running Windows Server 2012 R2, Windows PowerShell Web Access lets users reconnect to saved sessions at a later time, but when network errors, unplanned shutdowns, or other failures disconnect sessions, users cannot see or reconnect to saved sessions until after the time-out period specified by the gateway administrator has lapsed.

참고 항목See Also

Windows PowerShell 웹 액세스 설치 및 사용Install and Use Windows PowerShell Web Access

about_Session_Configurationsabout_Session_Configurations

Windows PowerShell Web Access Cmdlets(Windows PowerShell 웹 액세스 Cmdlet)Windows PowerShell Web Access Cmdlets