В этой статье мы покажем вам, как получить различную информацию об учетных записях Office 365 с помощью командлета Get-MsolUser PowerShell.
Командлет Get-MsolUser позволяет просматривать свойства одной или нескольких учетных записей Office 365, это аналог командлета Get-ADUser для локального Active Directory.
Командлет Get-MsolUser является частью модуля Azure AD PowerShell (MSOnline), который позволяет вам подключаться к вашей подписке Office 365.
Поэтому, чтобы использовать этот командлет, вы должны сначала загрузить и установить этот модуль.
Вы можете загрузить и установить MSOnline вручную (exe / msi installer) или установить его в Интернете из галереи PowerShell.
Для этого просто запустите команду в консоли PoSh:
Find-Module -Name MSOnline | Install-Module -Force
Чтобы подключиться к подписке Office 365, сохраните свои учетные данные в переменной:
$MSOCred = Get-Credential
В появившемся окне введите учетные данные с разрешениями на подключение к вашему арендатору Office 365.
Теперь подключитесь к своей подписке с сохраненными учетными данными:
Connect-MsolService -Credential $MSOCred
Эта команда вернет список всех пользователей Office 365.
По умолчанию возвращаются UPN, отображается имя и атрибуты isLicensed.
Чтобы отобразить информацию о конкретном пользователе, вы можете указать его UserPrincipalName.
Вы можете отобразить все пользовательские атрибуты:
Get-MsolUser -UserPrincipalName "youraccount@o365.onmicrosoft.com”| Select-Object *|Format-List
Учетная запись пользователя содержит ряд атрибутов, которые определяют их свойства, параметры и личную информацию (номер телефона, отдел, компания и т. д.).
Вы можете запрашивать только определенные атрибуты:
Get-MsolUser -UserPrincipalName “youraccount@o365.onmicrosoft.com” | Select-Object UserPrincipalName, DisplayName, Department, UsageLocation
Этот список можно экспортировать в файл CSV (удобный для открытия в Excel):
Get-MsolUser | Select-Object UserPrincipalName, DisplayName, PhoneNumber, Department, UsageLocation| Export-CSV c:\ps\o365userlist.csv –NoTypeInformation
Ниже приведены некоторые полезные запросы для получения данных о пользователях Office 365 с помощью командлета Get-MsolUser.
Вы можете отобразить всех пользователей определенного отдела:
Get-msoluser | Where {$_.Department -eq “Sales Dept”}
Давайте покажем список назначенных им пользователей и лицензий:
Get-MsolUser | Where-Object {$_.isLicensed -like "True"} | FT DisplayName, licenses, islicensed
Список назначенных вариантов лицензии:
Get-MsolUser –UserPrincipalName ).Licenses[0].ServiceStatus
Список пользователей без лицензии:
Get-MsolUser –UnlicensedUsersOnly
Список удаленных учетных записей (полезно, если вы случайно удалили учетную запись Office 365, и вам срочно нужно ее восстановить):
Get-MsolUser -ReturnDeletedUsers | FL UserPrincipalName,ObjectID
Указать время последней смены пароля для пользователей Office 365:
Get-MsolUser -All | select DisplayName, LastPasswordChangeTimeStamp
Список активных (включенных) учетных записей:
Get-MsolUser -EnabledFilter EnabledOnly -ALL
Список отключенных учетных записей:
Get-MsolUser -EnabledFilter DisabledOnly -ALL
Отобразите список пользователей, которые не изменяли свои пароли более 90 дней:
Get-MsolUser | Where-Object { $.LastPasswordChangeTimestamp -lt (Get-Date).AddDays(-90)} | Select-Object DisplayName,UserPrincipalName,LastPasswordChangeTimestamp,Licenses,PasswordNeverExpires | Format-Table