Просмотр учетных записей пользователей Microsoft 365 с помощью PowerShell

Эта статья относится к Microsoft 365 корпоративный и Office 365 корпоративный.

Вы можете использовать Центр администрирования Microsoft 365 для просмотра учетных записей клиента Microsoft 365. PowerShell для Microsoft 365 включает это, но также предоставляет дополнительные функции.

Просмотр учетных записей пользователей с помощью Microsoft Graph PowerShell

Примечание.

Модуль PowerShell для Azure Active Directory (AzureAD) устарел и заменяется пакетом SDK Для Microsoft Graph PowerShell. Можно использовать пакет SDK Microsoft Graph PowerShell для доступа ко всем API Microsoft Graph. Дополнительные сведения см. разделе Начало работы с пакетом SDK Microsoft Graph PowerShell.

Кроме того, сведения об установке и обновлении до Microsoft Graph PowerShell см. также в разделе Установка пакета SDK для Microsoft Graph PowerShell и обновление с Azure AD PowerShell до Microsoft Graph PowerShell соответственно.

  1. Сначала установите необходимое программное обеспечение для использования Microsoft Graph PowerShell. Дополнительные сведения см. в статье Подключение к Microsoft 365 с помощью Microsoft Graph PowerShell .

  2. Затем выполните следующий командлет, чтобы подключиться к организации с необходимым область разрешения, который в данном случае — User.ReadBasic.All:

# Connect to Microsoft Graph
Connect-Graph -Scopes User.ReadBasic.All

Просмотр всех учетных записей

Чтобы отобразить полный список учетных записей пользователей с идентификатором пользователя и именем участника-пользователя, выполните следующую команду:

Get-MgUser -All | Select DisplayName,Id,UserPrincipalName

Вы должны получить следующую информацию:

DisplayName               Id                                   UserPrincipalName
-----------               --                                   -----------------
Conf Room Adams           6e206948-b2b6-406c-a728-80bbe78e4003 Adams@M365x89521157.OnMicrosoft.com
Adele Vance               916a6a08-b9d0-44b6-870f-562d8358a314 AdeleV@M365x89521157.OnMicrosoft.com
MOD Administrator         5710f237-df3f-4bcd-b875-82deb02f98aa admin@M365x89521157.onmicrosoft.com
Alex Wilber               8aa561dc-441d-4d74-aeb3-e2be41c116c8 AlexW@M365x89521157.OnMicrosoft.com
Allan Deyoung             6b629e5e-3cf4-42d0-8007-3a93f0253382 AllanD@M365x89521157.OnMicrosoft.com
Automate Bot              3a70feb4-9407-47b5-9b61-7526ac0e98d8 AutomateB@M365x89521157.OnMicrosoft.com      
Conf Room Baker           d8cf3fef-1d03-4b9c-9be0-fed44fb87596 Baker@M365x89521157.OnMicrosoft.com
Bianca Pisani             7fe8c2d1-eb8e-4032-96ba-26242ff0acd9 BiancaP@M365x89521157.OnMicrosoft.com        

Просмотр определенной учетной записи

Чтобы отобразить определенную учетную запись пользователя, выполните следующую команду. Введите имя учетной записи входа в учетную запись пользователя, которая также называется именем участника-пользователя (UPN). Удалите символы "<" и ">".

Get-MgUser -UserId '<user principal name>'

Пример:

Get-MgUser -UserId 'BelindaN@litwareinc.onmicosoft.com'

Просмотр дополнительных значений свойств для определенной учетной записи

По умолчанию командлет Get-MgUser отображает только свойства DisplayName, Id, Mail и UserPrincipalName учетных записей.

Чтобы более избирательно подходить к отображаемым свойствам, используйте командлет Select в сочетании с командлетом Get-MgUser . Чтобы объединить два командлета, используйте символ "pipe" ("|"), который указывает PowerShell принять результаты одной команды и отправить их в следующую команду. Ниже приведен пример команды, отображающей DisplayName, Department и UsageLocation для каждой учетной записи пользователя:

Get-MgUser -All | Select DisplayName,Department,UsageLocation

Эта команда указывает PowerShell:

  1. Получите все сведения об учетных записях пользователей (Get-MgUser) и отправьте их в следующую команду (|).

  2. Отображение только имени учетной записи пользователя, отдела и расположения использования (выберите DisplayName, Department, UsageLocation).

Чтобы просмотреть все свойства для определенной учетной записи пользователя, используйте командлет Select и подстановочный знак (*). Пример:

Get-MgUser -UserID 'BelindaN@litwareinc.onmicosoft.com' | Select *

В качестве другого примера выполните следующую команду, чтобы проверка состояние включенной конкретной учетной записи пользователя:

Get-MgUser -UserID '<sign-in name of the user account>' | Select DisplayName,UserPrincipalName,AccountEnabled

Просмотр состояния синхронизации учетной записи

Учетные записи пользователей имеют два источника:

  • Windows Server Active Directory (AD), которые являются учетными записями, которые синхронизируются из локальной службы AD в облако.

  • Microsoft Entra учетные записи, созданные непосредственно в облаке.

Для поиска учетных записей, синхронизирующихся из локальной службы AD, можно использовать следующую команду. Он предписывает PowerShell получить всех пользователей, у которых атрибут OnPremisesSyncEnabled имеет значение True.

Get-MgUser -All -Filter 'OnPremisesSyncEnabled eq true'

Для поиска облачных учетных записей можно использовать следующую команду. Он предписывает PowerShell получить всех пользователей, у которых атрибут OnPremisesSyncEnabled имеет значение False или не задано (NULL). Для учетной записи, которая никогда не синхронизировалась из локальной службы AD, для параметра OnPremisesSyncEnabled задано значение Null. Для учетной записи, которая изначально была синхронизирована из локальной службы AD, но больше не синхронизируется, onPremisesSyncEnabled имеет значение False.

Get-MgUser -All | Where OnPremisesSyncEnabled -ne true
OnPremisesSyncEnabled```

### View accounts based on a common property

To be more selective about the list of accounts to display, you can use the **Where** cmdlet in combination with the **Get-MgUser** cmdlet. To combine the two cmdlets, use the "pipe" character ("|"), which tells PowerShell to take the results of one command and send it to the next command. Here is an example command that displays only those user accounts that have an unspecified usage location:
  
```powershell
Get-MgUser | Where UsageLocation -eq $Null

Эта команда указывает PowerShell:

  1. Получите все сведения об учетных записях пользователей (Get-MgUser) и отправьте их в следующую команду (|).

  2. Найдите все учетные записи пользователей с неуказанным расположением использования (Where UsageLocation -eq $Null). Команда предписывает PowerShell найти только набор учетных записей, для которых не указано свойство учетной записи пользователя UsageLocation (UsageLocation) (-eq $Null).

UsageLocation — лишь одно из многих свойств, связанных с учетной записью пользователя. Чтобы отобразить все свойства для определенной учетной записи пользователя, используйте командлет Select и подстановочный знак (*). Пример:

Get-MgUser -UserID BelindaN@litwareinc.onmicosoft.com | Select *

Например, City — это имя свойства учетной записи пользователя. Вы можете использовать следующую команду, чтобы получить список всех учетных записей пользователей, проживающих в Лондоне:

Get-MgUser | Where City -eq "London"

Совет

Синтаксис командлета Where в этих примерах — значение Where [имя свойства учетной записи пользователя] [оператор сравнения] [значение].> [оператор сравнения] имеет значение -eq для equals, -ne для not equals, -lt для меньше, -gt для больше и т. д. [значение] обычно представляет собой строку (последовательность букв, цифр и других символов), числовое значение или $Null для неуказанного. Дополнительные сведения см. в разделе Где.

См. также

Управление учетными записями пользователей Microsoft 365, лицензиями и группами с помощью PowerShell

Управление Microsoft 365 с помощью PowerShell

Начало работы с PowerShell для Microsoft 365