PowerShell을 사용하여 Microsoft 365 사용자 계정 보기

이 문서는 Microsoft 365 Enterprise와 Office 365 Enterprise에 모두 적용됩니다.

Microsoft 365 관리 센터 사용하여 Microsoft 365 테넌트에 대한 계정을 볼 수 있습니다. Microsoft 365 PowerShell을 사용하면 이 기능을 사용할 수 있지만 추가 기능도 제공합니다.

Graph 모듈용 Azure Active Directory PowerShell 사용하기

먼저 Microsoft 365 테넌트에 연결합니다.

모든 계정 보기

사용자 계정의 전체 목록을 표시하려면 다음 명령을 실행합니다.

Get-AzureADUser

다음과 유사한 정보를 가져와야 합니다.

ObjectId                             DisplayName                                           UserPrincipalName
--------                             -----------                                           -----------------
032fc1fc-b5a2-46f1-8635-3d7dcb52c48d Adele Vance                                           AdeleV@litwareinc.OnMicr...
bd1e6af1-41e7-4f77-a2ac-5b209950135c Global Administrator                                  admin@litwareinc.onmicro...
ec37a4d6-232e-4eb7-82a5-1613490642a5 Alex Wilber                                           AlexW@litwareinc.OnMicro...
be4bdddd-c790-424c-9f96-a0cf609b7815 Allan Deyoung                                         AllanD@litwareinc.OnMicr...
598ab87b-76f0-4bf9-9538-bd46b10f4438 Christie Cline                                        ChristieC@litwareinc.OnM...
40722671-e520-4a5f-97d4-0bc9e9b2dc0f Debra Berger                                          DebraB@litwareinc.OnMicr...

특정 계정 보기

특정 사용자 계정을 표시하려면 다음 명령을 실행합니다. UPN(사용자 계정 이름)으로도 알려진 사용자 계정의 로그인 계정 이름을 입력합니다. "<" 및 ">" 문자를 제거합니다.

Get-AzureADUser -ObjectID <sign-in name of the user account>

다음은 예입니다.

Get-AzureADUser -ObjectID BelindaN@litwareinc.onmicosoft.com

특정 계정에 대한 추가 속성 값 보기

기본적으로 Get-AzureADUser cmdlet은 계정의 ObjectID, DisplayNameUserPrincipalName 속성만 표시합니다.

표시할 속성에 대해 더 선택적이려면 Get-AzureADUser cmdlet과 함께 Select cmdlet을 사용합니다. 두 cmdlet을 결합하려면 "파이프" 문자("|")를 사용합니다. 이 문자는 Graph Azure Active Directory PowerShell에 한 명령의 결과를 가져와서 다음 명령으로 보내도록 지시합니다. 다음은 모든 사용자 계정에 대한 DisplayName, DepartmentUsageLocation 을 표시하는 예제 명령입니다.

Get-AzureADUser | Select DisplayName,Department,UsageLocation

이 명령은 PowerShell에 다음을 지시합니다.

  1. 사용자 계정(Get-AzureADUser)에 대한 모든 정보를 가져와서 다음 명령(|)으로 보냅니다.

  2. 사용자 계정 이름, 부서 및 사용 위치만 표시합니다(DisplayName, Department, UsageLocation 선택).

특정 사용자 계정에 대한 모든 속성을 보려면 Select cmdlet과 와일드카드 문자(*)를 사용합니다. 다음은 예입니다.

Get-AzureADUser -ObjectID BelindaN@litwareinc.onmicosoft.com | Select *

또 다른 예로, 다음 명령을 실행하여 특정 사용자 계정의 사용 상태를 확인합니다.

Get-AzureADUser -ObjectID <sign-in name of the user account> | Select DisplayName,UserPrincipalName,AccountEnabled

계정 동기화 상태 보기

사용자 계정에는 두 가지 원본이 있습니다.

  • 온-프레미스 AD에서 클라우드로 동기화되는 계정인 AD(Windows Server Active Directory)입니다.

  • 클라우드에서 직접 만들어지는 azure AD(Azure Active Directory) 계정입니다.

다음 명령을 사용하여 온-프레미스 AD에서 동기화되는 계정을 찾을 수 있습니다. 이 명령은 DirSyncEnabled 특성이 True로 설정된 모든 사용자를 PowerShell에 받도록 지시 합니다.

Get-AzureADUser | Where {$_.DirSyncEnabled -eq $true}

다음 명령을 사용하여 클라우드 전용 계정을 찾을 수 있습니다. DirSyncEnabled 특성이 False 로 설정되었거나 설정되지 않은 모든 사용자를 PowerShell에 지정합니다(Null). 온-프레미스 AD에서 동기화되지 않은 계정에는 DirSyncEnabledNull 로 설정됩니다. 온-프레미스 AD에서 처음 동기화되었지만 더 이상 동기화되지 않는 계정에 는 DirSyncEnabledFalse 로 설정됩니다.

Get-AzureADUser | Where {$_.DirSyncEnabled -ne $true}

공용 속성을 기반으로 계정 보기

표시할 계정 목록에 대해 더 선택적으로 표시하려면 Get-AzureADUser cmdlet과 함께 Where cmdlet을 사용할 수 있습니다. 두 cmdlet을 결합하려면 "파이프" 문자("|")를 사용합니다. 이 문자는 Graph Azure Active Directory PowerShell에 한 명령의 결과를 가져와서 다음 명령으로 보내도록 지시합니다. 다음은 지정되지 않은 사용 위치가 있는 사용자 계정만 표시하는 예제 명령입니다.

Get-AzureADUser | Where {$_.UsageLocation -eq $Null}

이 명령은 Graph Azure Active Directory PowerShell에 다음을 지시합니다.

  1. 사용자 계정(Get-AzureADUser)에 대한 모든 정보를 가져와서 다음 명령(|)으로 보냅니다.

  2. 지정되지 않은 사용 위치(여기서 {$_)가 있는 모든 사용자 계정을 찾습니다. UsageLocation -eq $Null}). 중괄호 내에서 명령은 UsageLocation 사용자 계정 속성($_)이 있는 계정 집합만 찾도록 PowerShell에 지시합니다. UsageLocation)이 지정되지 않았습니다(-eq $Null).

UsageLocation 속성은 사용자 계정과 연결된 여러 속성 중 하나일 뿐입니다. 특정 사용자 계정에 대한 모든 속성을 표시하려면 Select cmdlet 및 와일드카드 문자(*)를 사용합니다. 다음은 예입니다.

Get-AzureADUser -ObjectID BelindaN@litwareinc.onmicosoft.com | Select *

예를 들어 City 는 사용자 계정 속성의 이름입니다. 다음 명령을 사용하여 런던에 거주하는 사용자의 모든 계정을 나열할 수 있습니다.

Get-AzureADUser | Where {$_.City -eq "London"}

이 예제에서 Where cmdlet의 구문은 Where {$_입니다. [사용자 계정 속성 이름] [비교 연산자] [value] }.> [비교 연산자]는 -eq for equals, -ne for not equals, -lt for less than, -gt for greater than 및 기타입니다. [value]는 일반적으로 문자열(문자, 숫자 및 기타 문자 시퀀스), 숫자 값 또는 지정되지 않은 $Null . 자세한 내용은 위치를 참조하세요.

Windows PowerShell용 Microsoft Azure Active Directory 모듈 사용하기

먼저 Microsoft 365 테넌트에 연결합니다.

모든 계정 보기

사용자 계정의 전체 목록을 표시하려면 다음 명령을 실행합니다.

Get-MsolUser

참고

PowerShell Core는 Windows PowerShell용 Microsoft Azure Active Directory 모듈 및 이름에 Msol 이 있는 cmdlet을 지원하지 않습니다. Windows PowerShell 이러한 cmdlet을 실행합니다.

다음과 유사한 정보를 가져와야 합니다.

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
BonnieK@litwareinc.onmicrosoft.com    Bonnie Kearney        True
FabriceC@litwareinc.onmicrosoft.com   Fabrice Canel         True
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False 
AnneWlitwareinc.onmicrosoft.com       Anne Wallace          True
ScottW@litwareinc.onmicrosoft.com     Scott Wallace         False

Get-msoluser cmdlet에도 매개 변수 집합이 있어 표시된 사용자 계정 집합을 필터링할 수 있습니다. 예를 들어 사용 허가되지 않은 사용자(Microsoft 365 추가되었지만 아직 서비스를 사용할 수 있는 라이선스가 부여되지 않은 사용자)의 경우 다음 명령을 실행합니다.

Get-MsolUser -UnlicensedUsersOnly

다음과 유사한 정보를 가져와야 합니다.

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False
ScottW@litwareinc.onmicrosoft.com     Scott Wallace         False

표시되는 사용자 계정 집합을 필터링하는 추가 매개 변수에 대한 자세한 내용은 Get-MsolUser를 참조하세요.

특정 계정 보기

특정 사용자 계정을 표시하려면 다음 명령을 실행합니다. UPN(사용자 계정 이름)으로도 알려진 사용자 계정의 로그인 이름을 입력합니다. "<" 및 ">" 문자를 제거합니다.

Get-MsolUser -UserPrincipalName <sign-in name of the user account>

공용 속성을 기반으로 계정 보기

표시할 계정 목록에 대해 더 선택적으로 표시하려면 Get-MsolUser cmdlet과 함께 Where cmdlet을 사용할 수 있습니다. 두 cmdlet을 결합하려면 한 명령의 결과를 가져와서 다음 명령으로 보내도록 PowerShell에 지시하는 "파이프" 문자("|")를 사용합니다. 다음은 지정되지 않은 사용 위치가 있는 사용자 계정만 표시하는 예제입니다.

Get-MsolUser | Where {$_.UsageLocation -eq $Null}

이 명령은 PowerShell에 다음을 지시합니다.

  1. 사용자 계정(Get-MsolUser)에 대한 모든 정보를 가져와서 다음 명령(|)으로 보냅니다.

  2. 지정되지 않은 사용 위치(여기서 {$_)가 있는 모든 사용자 계정을 찾습니다. UsageLocation -eq $Null}). 중괄호 내에서 명령은 UsageLocation 사용자 계정 속성($_)이 있는 계정 집합만 찾도록 PowerShell에 지시합니다. UsageLocation)이 지정되지 않았습니다(-eq $Null).

다음과 유사한 정보를 가져와야 합니다.

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False 
ScottW@litwareinc.onmicrosoft.com     Scott Wallace         False

UsageLocation 속성은 사용자 계정과 연결된 여러 속성 중 하나일 뿐입니다. 사용자 계정에 대한 모든 속성을 보려면 Select cmdlet 및 와일드카드 문자(*)를 사용하여 특정 사용자 계정에 대한 모든 속성을 표시합니다. 다음은 예입니다.

Get-MsolUser -UserPrincipalName BelindaN@litwareinc.onmicosoft.com | Select *

예를 들어 City 는 사용자 계정 속성의 이름입니다. 다음 명령을 사용하여 런던에 거주하는 사용자의 모든 사용자 계정을 나열할 수 있습니다.

Get-MsolUser | Where {$_.City -eq "London"}

이 예제에서 Where cmdlet의 구문은 Where {$_입니다. [사용자 계정 속성 이름] [비교 연산자] [value] }. [비교 연산자]는 -eq for equals, -ne for not equals, -lt for less than, -gt for greater than 및 기타입니다. [value]는 일반적으로 문자열(문자, 숫자 및 기타 문자 시퀀스), 숫자 값 또는 지정되지 않은 $Null . 자세한 내용은 위치를 참조하세요.

사용자 계정의 차단된 상태를 확인하려면 다음 명령을 사용합니다.

Get-MsolUser -UserPrincipalName <UPN of user account> | Select DisplayName,BlockCredential

계정에 대한 추가 속성 값 보기

기본적으로 Get-MsolUser cmdlet은 사용자 계정의 다음 세 가지 속성을 표시합니다.

  • UserPrincipalName

  • DisplayName

  • isLicensed

사용자가 작업하는 부서 및 Microsoft 365 서비스를 사용하는 국가/지역과 같은 추가 속성이 필요한 경우 Select cmdlet과 함께 Get-MsolUser 를 실행하여 사용자 계정 속성 목록을 지정할 수 있습니다. 다음은 예입니다.

Get-MsolUser | Select DisplayName, Department, UsageLocation

이 명령은 PowerShell에 다음을 지시합니다.

  1. 사용자 계정에 대한 모든 정보(Get-MsolUser)를 가져와 서 다음 명령(|)으로 보냅니다.

  2. 사용자 계정 이름, 부서 및 사용 위치만 표시합니다(DisplayName, Department, UsageLocation 선택).

다음과 유사한 정보를 가져와야 합니다.

DisplayName             Department                       UsageLocation
-----------             ----------                       -------------
Bonnie Kearney          Sales & Marketing                    US
Fabrice Canel           Legal                                US
Brian Johnson
Anne Wallace            Executive Management                 US
Alex Darrow             Sales & Marketing                    US
Scott Wallace           Operations

Select cmdlet을 사용하면 표시할 속성을 선택할 수 있습니다. 특정 사용자 계정에 대한 모든 속성을 표시하려면 와일드카드 문자(*)를 사용합니다. 다음은 예입니다.

Get-MsolUser -UserPrincipalName BelindaN@litwareinc.onmicosoft.com | Select *

표시할 계정 목록에 대해 더 선택적으로 표시하려면 Where cmdlet을 사용할 수도 있습니다. 다음은 지정되지 않은 사용 위치가 있는 사용자 계정만 표시하는 예제 명령입니다.

Get-MsolUser | Where {$_.UsageLocation -eq $Null} | Select DisplayName, Department, UsageLocation

이 명령은 PowerShell에 다음을 지시합니다.

  1. 사용자 계정에 대한 모든 정보(Get-MsolUser)를 가져와 서 다음 명령(|)으로 보냅니다.

  2. 지정되지 않은 사용 위치(여기서 {$_)가 있는 모든 사용자 계정을 찾습니다. UsageLocation -eq $Null}) 다음 명령(|)에 결과 정보를 보냅니다. 중괄호 내에서 명령은 UsageLocation 사용자 계정 속성($_)이 있는 계정 집합만 찾도록 PowerShell에 지시합니다. UsageLocation)이 지정되지 않았습니다(-eq $Null).

  3. 사용자 계정 이름, 부서 및 사용 위치만 표시합니다(DisplayName, Department, UsageLocation 선택).

다음과 유사한 정보를 가져와야 합니다.

DisplayName              Department                      UsageLocation
-----------              ----------                      -------------
Brian Johnson 
Scott Wallace            Operations

디렉터리 동기화를 사용하여 Microsoft 365 사용자를 만들고 관리하는 경우 Microsoft 365 사용자가 프로젝션된 로컬 계정을 표시할 수 있습니다. 다음 예제에서는 다음을 가정합니다.

Get-ADUser ([guid][System.Convert]::FromBase64String((Get-MsolUser -UserPrincipalName <UPN of user account>).ImmutableID)).guid

참고 항목

PowerShell로 Microsoft 365 사용자 계정, 라이선스 및 그룹 관리

PowerShell로 Microsoft 365 관리

Microsoft 365용 PowerShell 시작