Задача: при помощи PowerShell получить список свойств пользователя Office 365, не важно облачный он или синхронизируемый с локальным AD.
Будем использовать команду Get-MSOLUser (потребуются права администратора Office 365).
Пример 1. Сокращенная команда
Get-MSOLUser -UserPrincipalName user1@mydomain.ru
Результат выполнения команды:
Отображается кратко: идентификатор пользователя, отображаемое имя и наличие лицензии.
Пример 2. Вывод всех свойств пользователя
Get-MSOLUser -UserPrincipalName user1@mydomain.ru | select *
Результат выполнения команды:
Здесь можно увидеть информацию о пароле (есть ли у него срок действия или нет - PasswordNeverExpires), установлены ли пользователю алиасы (ProxyAddresses), какие назначены лицензии (Licenses), синхронизируется ли он с Active Directory (LastDirSyncTime) и др.
Если необходимо получить только определенное свойство пользователя, то можно сделать так:
Get-MSOLUser -UserPrincipalName user1@mydomain.ru | select PasswordNeverExpires
По указанным свойствам можно делать фильтры, например:
получаем список office 365 пользователей, у которых нет лицензии:
Get-MsolUser | Where-Object { $_.isLicensed -ne "TRUE" }
Будем использовать команду Get-MSOLUser (потребуются права администратора Office 365).
Пример 1. Сокращенная команда
Get-MSOLUser -UserPrincipalName user1@mydomain.ru
Результат выполнения команды:
UserPrincipalName | DisplayName | isLicensed |
----------- | ----------- | ----------- |
user1@mydomain.ru | Иванов О.Н. | True |
Пример 2. Вывод всех свойств пользователя
Get-MSOLUser -UserPrincipalName user1@mydomain.ru | select *
Результат выполнения команды:
ExtensionData | : | System.Runtime.Serialization.ExtensionDataObject |
AlternateEmailAddresses | : | {} |
AlternateMobilePhones | : | {} |
AlternativeSecurityIds | : | {} |
BlockCredential | : | False |
City | : | Самара |
CloudExchangeRecipientDisplayType | : | 1073741824 |
Country | : | |
Department | : | ФСО |
DirSyncProvisioningErrors | : | {} |
DisplayName | : | Иванов О.Н. |
Errors | : | |
Fax | : | |
FirstName | : | Олег Николаевич |
ImmutableId | : | Nbf7k19Wo58UJ4YWjxE7GQ== |
IndirectLicenseErrors | : | {} |
IsBlackberryUser | : | False |
IsLicensed | : | True |
LastDirSyncTime | : | 26.01.2015 19:59:31 |
LastName | : | Иванов |
LastPasswordChangeTimestamp | : | 26.01.2015 20:01:15 |
LicenseReconciliationNeeded | : | False |
Licenses | : | {psgaru:OFFICESUBSCRIPTION_STUDENT, psgaru:STANDARDWOFFPACK_STUDENT} |
LiveId | : | 100354938D780A70 |
MSExchRecipientTypeDetails | : | |
MobilePhone | : | |
ObjectId | : | c789403715-aok9-qk8e-wenb-48fjw6b0bea9 |
Office | : | |
OverallProvisioningStatus | : | PendingInput |
PasswordNeverExpires | : | True |
PasswordResetNotRequiredDuringActivate | : | True |
PhoneNumber | : | |
PortalSettings | : | |
PostalCode | : | |
PreferredLanguage | : | |
ProxyAddresses | : | {smtp:user1@mydomainru.onmicrosoft.com, SMTP:user1@mydomain.ru} |
ServiceInformation | : | {} |
SignInName | : | user1@mydomain.ru |
SoftDeletionTimestamp | : | |
State | : | |
StreetAddress | : | |
StrongAuthenticationMethods | : | {} |
StrongAuthenticationPhoneAppDetails | : | {} |
StrongAuthenticationProofupTime | : | |
StrongAuthenticationRequirements | : | {} |
StrongAuthenticationUserDetails | : | |
StrongPasswordRequired | : | True |
StsRefreshTokensValidFrom | : | 26.01.2015 20:09:05 |
Title | : | студент |
UsageLocation | : | RU |
UserLandingPageIdentifierForO365Shell | : | |
UserPrincipalName | : | user1@mydomain.ru |
UserThemeIdentifierForO365Shell | : | |
UserType | : | Member |
ValidationStatus | : | Healthy |
WhenCreated | : | 26.01.2015 19:59:38 |
Здесь можно увидеть информацию о пароле (есть ли у него срок действия или нет - PasswordNeverExpires), установлены ли пользователю алиасы (ProxyAddresses), какие назначены лицензии (Licenses), синхронизируется ли он с Active Directory (LastDirSyncTime) и др.
Если необходимо получить только определенное свойство пользователя, то можно сделать так:
Get-MSOLUser -UserPrincipalName user1@mydomain.ru | select PasswordNeverExpires
По указанным свойствам можно делать фильтры, например:
получаем список office 365 пользователей, у которых нет лицензии:
Get-MsolUser | Where-Object { $_.isLicensed -ne "TRUE" }
Выгрузка пользователей Office 365 в csv:
Get-MsolUser | Export-Csv c:\Users1.csv
Комментариев нет:
Отправить комментарий