Exchange Online에서 원격 PowerShell 액세스 관리

원격 PowerShell을 사용하면 명령줄에서 Exchange Online 조직을 관리할 수 있습니다. 기본적으로 Office 365에서 만드는 모든 계정에 Exchange Online PowerShell을 사용할 수 있습니다. 원격 PowerShell을 사용하여 Exchange Online 조직에 연결하는 사용자 기능을 사용하거나 사용하지 않도록 설정할 수 있습니다. 원격 PowerShell을 통해 Exchange Online 조직에 액세스해도 사용자에게 추가 관리 기능이 제공되지는 않습니다. 사용자의 기능은 사용자에게 할당된 역할 및 RBAC(역할 기반 액세스 제어)를 통해 계속 정의됩니다.

시작하기 전에 알아야 할 내용

  • 각 절차의 예상 완료 시간: 5분 미만

  • Office 365 전역 관리자는 원격 PowerShell에 대해 액세스 권한을 가지며 이 항목의 절차를 사용하여 다른 사용자의 원격 PowerShell 액세스 권한을 구성할 수 있습니다. Exchange Online의 사용 권한에 대한 자세한 내용은 Feature Permissions in Exchange Online을 참조하세요.

  • 이 절차는 Exchange Online PowerShell을 통해서만 사용할 수 있습니다. Windows PowerShell을 사용하여 Exchange Online에 연결하는 방법에 대한 자세한 내용은 Connect to Exchange Online Using Remote PowerShell을 참조하세요.

Tip

문제가 있습니까? Exchange 포럼에서 도움을 요청하세요. 포럼 주소는 다음과 같습니다. Exchange Online, 또는 Exchange Online Protection

사용자가 원격 PowerShell에 액세스하거나 액세스하지 않도록 설정

이 예에서는 david@contoso.com 사용자가 원격 PowerShell을 사용하도록 설정합니다.

Set-User -Identity david@contoso.com -RemotePowerShellEnabled $false

이 예에서는 david@contoso.com 사용자가 원격 PowerShell을 사용하지 않도록 설정합니다.

Set-User -Identity david@contoso.com -RemotePowerShellEnabled $true

여러 사용자가 원격 PowerShell에 액세스하지 않도록 설정

특정 기존 사용자 그룹의 원격 PowerShell 액세스를 차단하려면 다음 옵션을 사용할 수 있습니다.

  • 기존 특성을 기반으로 사용자 필터링:이 메서드는 대상 사용자 계정에 각각의 필터링 가능한 고유한 특성이 공유 된다고 가정 합니다. 직함, 부서, 주소 정보, 전화 번호 등의 일부 특성은 Get-User cmdlet을 사용하는 경우에만 표시됩니다. CustomAttribute1-15 등의 기타 특성은 Get-Mailbox cmdlet을 사용하는 경우에만 표시됩니다.

  • 특정 사용자 목록 사용: 특정 사용자 목록을 생성 한 후이 목록을 사용 하 여 Exchange Online PowerShell에 대 한 액세스를 사용 하지 않도록 설정할 수 있습니다.

기존 특성을 기준으로 사용자 필터링

기존 특성을 기반으로 하는 사용자 수에 관계 없이 Exchange Online PowerShell에 대 한 액세스를 사용 하지 않도록 설정 하려면 다음 구문을 사용 합니다.

$<VariableName> = <Get-Mailbox | Get-User> -ResultSize unlimited -Filter <Filter>
$<VariableName> | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}

이 예에서는 Title 특성에 "Sales Associate" 값이 포함된 모든 사용자의 원격 PowerShell 액세스 권한을 제거합니다.

$DSA = Get-User -ResultSize unlimited -Filter {(RecipientType -eq 'UserMailbox') -and (Title -like '*Sales Associate*')}
$DSA | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}

특정 사용자 목록 사용

특정 사용자 목록에 대해 원격 PowerShell 액세스를 사용하지 않도록 설정하려면 다음 구문을 사용합니다.

$<VariableName> = Get-Content <text file>
$<VariableName> | foreach {Set-User -Identity $_ -RemotePowerShellEnabled $false}

이 예에서는 텍스트 파일 C:\My Documents\NoPowerShell.txt를 사용 하 여 해당 계정에서 사용자를 식별 합니다. 텍스트 파일은 각 줄에 다음과 같이 하나의 계정을 포함 해야 합니다.

akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com

업데이트할 사용자 계정을 사용 하 여 텍스트 파일을 채운 후 다음 명령을 실행 합니다.

$NPS = Get-Content "C:\My Documents\NoPowerShell.txt"
$NPS | foreach {Set-User -Identity $_.MicrosoftOnlineServicesID -RemotePowerShellEnabled $false}

사용자의 원격 PowerShell 액세스 상태 보기

특정 사용자의 원격 PowerShell 액세스 상태를 보려면 다음 구문을 사용합니다.

Get-User -Identity <UserIdentity> | Format-List RemotePowerShellEnabled

이 예에서는 Sarah Jones 사용자의 원격 PowerShell 액세스 상태를 표시합니다.

Get-User -Identity "Sarah Jones" | Format-List RemotePowerShellEnabled

모든 사용자에 대 한 Exchange Online PowerShell 액세스 상태를 표시 하려면 다음 명령을 실행 합니다.

Get-User -ResultSize unlimited | Format-Table -Auto Name,DisplayName,RemotePowerShellEnabled

원격 PowerShell 액세스 권한이 없는 사용자만 표시하려면 다음 명령을 실행합니다.

Get-User -ResultSize unlimited -Filter {RemotePowerShellEnabled -eq $false}

원격 PowerShell 액세스 권한이 있는 사용자만 표시하려면 다음 명령을 실행합니다.

Get-User -ResultSize unlimited -Filter {RemotePowerShellEnabled -eq $true}