Exchange Online PowerShell에 연결

Exchange Online PowerShell V2 모듈(EXO V2 모듈로 약칭)은 최신 인증을 사용하고 MFA(다단계 인증)와 함께 작동하여 Microsoft 365의 모든 Exchange 관련 PowerShell 환경(Exchange Online PowerShell, 보안 및 규정 준수 PowerShell 및 독립 실행형 EOP(Exchange Online Protection) PowerShell)에 연결합니다. EXO V2 모듈에 대한 자세한 내용은 Exchange Online PowerShell V2 모듈 정보를 참조하세요.

이 문서에는 MFA를 사용하거나 사용하지 않고 EXO V2 모듈을 사용하여 Exchange Online PowerShell에 연결하는 방법에 대한 지침이 포함되어 있습니다.

결과적으로 사용 중단될 이전 버전의 보안 수준이 낮은 원격 PowerShell 연결 지침을 사용하려면 기본 인증 - Exchange Online PowerShell에 연결을 참조하세요.

이전 Exchange Online 원격 PowerShell 모듈을 사용하여 MFA를 사용하여 Exchange Online PowerShell에 연결하려면 V1 모듈 - MFA를 사용하여 Exchange Online PowerShell에 연결을 참조하세요. 이 이전 버전의 모듈은 결국 폐기됩니다.

시작하기 전에 알아야 할 사항은 무엇인가요?

  • EXO V2 모듈을 설치하고 사용하는 데 필요한 사항에 대한 자세한 내용은 EXO V2 모듈 설치 및 유지 관리를 참조하세요.

    참고

    문서의 나머지 지침은 모듈을 이미 설치했다고 가정합니다.

    모듈 버전 2.0.6을 사용하는 경우 Connect-ExchangeOnline 명령에서 UseRPSSession 스위치를 사용하지 않으면 사용 가능한 REST API cmdlet에만 액세스할 수 있습니다. 자세한 내용은 버전 2.0.6 업데이트를 참조하세요.

  • 연결한 후 액세스 권한이 있거나 없는 cmdlet 및 매개 변수는 RBAC(역할 기반 액세스 제어)에 의해 제어됩니다. 자세한 내용은 Exchange Online의 권한을 참조하세요.

    특정 Exchange Online cmdlet 실행에 필요한 사용 권한을 찾으려면 Exchange cmdlet 실행에 필요한 사용 권한 찾기를 참조하세요.

  • 조직이 온-프레미스 Exchange이고 Exchange Enterprise CAL(EOP용 서비스 라이선스 포함)이 있는 경우 이 문서에 설명된 대로 EOP(Exchange Online Protection) PowerShell 연결 지침은 Exchange Online PowerShell과 동일합니다.

문제가 있으신가요? Exchange Online 포럼에 문의하세요.

MFA를 사용하거나 사용하지 않고 최신 인증을 사용하여 Exchange 온라인 PowerShell에 연결

이러한 연결 지침은 최신 인증을 사용하며 MFA(다단계 인증)를 사용하거나 사용하지 않고 작동합니다.

PowerShell 7에서 사용할 수 있는 다른 로그인 방법은 이 항목의 뒷부분에서 PowerShell 7 로그인 환경 섹션을 참조하세요.

  1. PowerShell 창에서 다음 명령을 실행하여 EXO V2 모듈을 로드합니다.*

    Import-Module ExchangeOnlineManagement
    

    참고:

    *이 단계를 건너뛰고 모듈을 먼저 로드하지 않고 Connect-ExchangeOnline 을 실행할 수 있습니다.

  2. 실행해야 하는 명령은 다음 구문을 사용합니다.

    Connect-ExchangeOnline -UserPrincipalName <UPN> [-ShowBanner:$false] [-ExchangeEnvironmentName <Value>] [-DelegatedOrganization <String>] [-PSSessionOption $ProxyOptions]
    
    • <UPN> 은(는) 사용자 계정 이름 형식(예: navin@contoso.com)의 계정입니다.
    • ExchangeEnvironmentName 매개 변수를 사용 하는 경우 ConnectionUri 또는 AzureADAuthorizationEndPointUrl 매개 변수를 사용 할 필요가 없습니다. 자세한 내용은 Connect-ExchangeOnline의 매개 변수 설명을 참조하세요.
    • DelegatedOrganization 매개 변수는 공인 Microsoft 파트너로서 관리하려는 고객 조직을 지정합니다. 자세한 내용은 파트너를 참조하세요.
    • 프록시 서버를 사용하는 경우 먼저 다음 명령을 실행합니다. $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, <Value>이(가) IEConfig, WinHttpConfig 혹은 AutoDetect인 경우. 그런 다음 PSSessionOption 매개 변수와 $ProxyOptions값을 사용합니다. 자세한 내용은 New-PSSessionOption을 참조하세요.
    • 조직의 특성에 따라 다음 단계에서 UserPrincipalName 매개 변수를 생략할 수 있습니다. 대신 사용자 이름과 암호를 입력하거나, Connect-ExchangeOnline 명령을 실행한 후 저장된 자격 증명을 선택합니다. 작동하지 않으면 UserPrincipalName 매개 변수를 사용해야 합니다.
    • MFA를 사용하지 않는 경우 UserPrincipalName 매개 변수 대신 Credential 매개 변수를 사용할 수 있습니다. 먼저 $Credential = Get-Credential 명령을 실행하고 사용자 이름과 암호를 입력한 다음 Credential 매개 변수(-Credential $Credential)에 대한 변수 이름을 사용합니다. 작동하지 않으면 UserPrincipalName 매개 변수를 사용해야 합니다.

    이 예제는 Microsoft 365 or Microsoft 365 GCC 조직의 Exchange Online PowerShell에 연결됩니다.

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com
    

    이 예제에서는 Office 365 Germany 조직 에서 Exchange Online PowerShell에 연결 합니다.

    Connect-ExchangeOnline -UserPrincipalName lukas@fabrikam.de -ExchangeEnvironmentName O365GermanyCloud
    

    이 예제는 Microsoft GCC High 조직의 Exchange Online PowerShell에 연결됩니다.

    Connect-ExchangeOnline -UserPrincipalName laura@blueyonderairlines.us -ExchangeEnvironmentName O365USGovGCCHigh
    

    이 예제는 Microsoft 365 DoD 조직의 Exchange Online PowerShell에 연결됩니다.

    Connect-ExchangeOnline -UserPrincipalName julia@adatum.mil -ExchangeEnvironmentName O365USGovDoD
    

    이 예제는 Exchange Online PowerShell에 연결하여 다른 테넌트를 관리합니다.

    Connect-ExchangeOnline -UserPrincipalName navin@contoso.com -DelegatedOrganization adatum.onmicrosoft.com
    
  3. 로그인 창이 열리면 암호를 입력하고 로그인 을 클릭합니다.

    계정에 로그인 창에 암호를 입력합니다.

  4. MFA만 해당: 계정에 대해 구성된 응답 옵션(예: 장치의 텍스트 메시지 또는 Microsoft Authenticator 앱)에 따라 확인 코드가 생성되어 제공됩니다.

    열리는 확인 창에서 확인 코드를 입력한 다음 확인 을 클릭합니다.

    계정에 로그인 창에 확인 코드를 입력합니다.

구문과 매개 변수에 대한 자세한 내용은 Connect-ExchangeOnline을 참조합니다.

참고

작업을 마치면 원격 PowerShell 세션 연결을 반드시 끊어야 합니다. 세션 연결을 끊지 않고 PowerShell 창을 닫으면 사용 가능한 모든 원격 PowerShell 세션이 사용될 수 있으며 세션이 만료될 때까지 기다려야 합니다. 원격 PowerShell 세션 연결을 끊으려면 다음 명령을 실행합니다.

Disconnect-ExchangeOnline

PowerShell 7 로그인 환경

이 섹션에서는 PowerShell 7의 EXO V2 모듈 버전 2.0.4 이상에서 사용할 수 있는 로그인 환경을 설명합니다.

PowerShell 7의 EXO V2 모듈에서 지원하는 운영 체제에 대한 자세한 내용은 EXO V2 모듈 에 대해 지원되는 운영 체제를 참조하세요.

구문과 매개 변수에 대한 자세한 내용은 Connect-ExchangeOnline을 참조합니다.

브라우저 기반 Single Sign-On을 사용한 대화형 스크립팅

브라우저 기반 SSO(Single Sign-On)는 PowerShell 7의 기본 로그인 방법입니다. Connect-ExchangeOnline 명령을 실행하면 기본 브라우저에 Azure AD 로그인 페이지가 열립니다. 자격 증명을 입력하면 PowerShell 세션에서 이전 Exchange Online cmdlet 및 EXO V2 cmdlet 모듈을 사용할 수 있습니다.

명령에서 UserPrincipalName 매개 변수를 사용하는 경우 UPN 값이 브라우저의 로그인 페이지에서 사용됩니다.

Connect-ExchangeOnline -UserPrincipalName navin@contoso.onmicrosoft.com

장치 기반 로그인

사용 가능한 브라우저가 없는 경우(그래서 로그인 페이지를 볼 수 없는 경우) 장치 기반 로그인을 사용합니다.

Connect-ExchangeOnline -Device

이 명령은 세션에 대한 URL 및 고유 코드를 반환합니다. 컴퓨터의 브라우저에서 URL을 연 다음 고유 코드를 입력해야 합니다. 웹 브라우저에서 로그인을 완료하면 Powershell 7 창의 세션이 일반 Azure AD 인증 흐름을 통해 인증됩니다. 몇 초 후에 Exchange Online cmdlet을 가져오게 됩니다.

인라인 자격 증명

SSO 브라우저로 이동하지 않고도 PowerShell 창에서 직접 자격 증명을 입력할 수 있습니다.

참고

이 방법은 다단계 인증을 사용하는 계정에서는 작동하지 않습니다.

이 방법은 스크립트에 자격 증명을 로컬로 저장할 필요가 없고 대화형 PowerShell 세션에서 직접 자격 증명을 입력할 수 있으므로 자격 증명 매개 변수가 개선되었습니다.

Connect-ExchangeOnline -InlineCredential

작동 여부는 어떻게 확인하나요?

Exchange Online cmdlet을 로컬 PowerShell 세션으로 가져오고 진행률 표시줄로 추적합니다. 오류가 발생하지 않으면 성공적으로 연결된 것입니다. 빠른 테스트는 Exchange Online PowerShell cmdlet(예: Get-Mailbox)을 실행하고 결과를 확인하는 것입니다.

오류가 발생하면 다음 요구 사항을 확인합니다.

  • 일반적인 문제는 잘못된 암호입니다. 세 단계를 다시 실행하고 사용하는 사용자 이름과 암호에 주의를 기울입니다.

  • DoS(서비스 거부) 공격을 방지하려면 다섯 개의 개방형 원격 PowerShell 연결만을 Exchange Online에 사용해야 합니다.

  • 연결하는 데 사용하는 계정은 원격 PowerShell에 대해 사용하도록 설정되어야 합니다. 자세한 내용은 Exchange Online PowerShell에 대한 액세스 사용 또는 비활성화를 참조하세요.

  • TCP 포트 80 트래픽은 로컬 컴퓨터와 Microsoft 365 간에 열려 있어야 합니다. 열려 있을 수도 있지만 조직에서 제한적인 인터넷 액세스 정책을 사용하는 경우 이는 고려해야 할 사항입니다.

  • 조직에서 페더레이션 인증을 사용하고 IDP(ID 공급자) 및/또는 STS(보안 토큰 서비스)를 공개적으로 사용할 수 없는 경우 페더레이션 계정을 사용하여 Exchange Online PowerShell에 연결할 수 없습니다. 대신 Microsoft 365에서 페더레이션되지 않은 계정을 만들어 Exchange Online PowerShell에 연결하는 데 사용하세요.