Топ 15 команд PowerShell для Office 365 (Пользователи, Группы, Лицензирование).Как пользователь Windows PowerShell, я знаю, что использование PowerShell для администрирования Office 365 может показаться сложным для многих пользователей Office 365.
Однако, на мой взгляд, несмотря на это, Windows PowerShell является крайне полезным инструментом для управления Office 365. Например, вместо того чтобы просматривать множество доступных опций в портале Office 365, администраторы могут легко получить то, что им необходимо, введя несколько строк кода. Поэтому крайне важно изучить несколько удобных команд, которые могут значительно упростить ваш опыт работы с Office 365.
Учитывая это, давайте изучим 15 лучших команд PowerShell для Office 365, которые могут быть полезны для упрощения задач в Office 365.
Также читайте Office 365 против Exchange Online — в чем разница?
Топ-15 команд PowerShell для Office 365 (Пользователи, Группы, Лицензирование)
Источник изображения: Pixabay
1. Создание классификаций для групп Microsoft 365
Когда пользователи в вашей организации создают группу Microsoft 365, вы можете предоставить им возможность назначить метку чувствительности.Важно отметить, что после включения меток чувствительности пользователи, которые создают группы, больше не будут иметь доступ к классификационным меткам, которые они использовали ранее.
Microsoft рекомендует использовать метки чувствительности вместо предыдущего функционала классификации групп. Вы можете создавать классификации, которые пользователи в вашей организации могут устанавливать при создании группы Microsoft 365. Например, вы можете разрешить пользователям устанавливать “Стандартный”, “Секретный” и “Совершенно секретный” для групп, которые они создают. Вот соответствующие Azure Active Directory командлеты для создания классификаций групп.
Следующая команда создает список классификаций:
$setting["ClassificationList"] = "Low Impact, Medium Impact, High Impact"
Вы можете использовать атрибут настроек ClassificationDescriptions для определения каждой классификации. Синтаксис следующий:
$setting["ClassificationDescriptions"] ="Classification:Description,Classification:Description"
Пример команды:
$setting["ClassificationDescriptions"] = "Low Impact: General communication, Medium Impact: Company internal data , High Impact: Data that has regulatory requirements"
В качестве альтернативы, выполните эту команду при создании новой группы с классификацией:
New-UnifiedGroup -Classification -AccessType
После включения этих настроек владелец группы сможет выбрать метку из выпадающего меню и сохранить ее на странице редактирования группы как в Outlook в вебе, так и в Outlook.
2. Предоставление пользователям разрешения отправлять от имени группы Microsoft 365
Источник изображения: Unsplash
Когда этот параметр включен, члены группы Microsoft 365 могут использовать любую версию Outlook или Outlook в Интернете для составления и ответа на электронные письма от имени группы.
Для этого используйте командлеты Add-RecipientPermission и Get-RecipientPermission, чтобы включить вашу опцию групп Microsoft 365 “Отправить от имени”.
Чтобы отправить электронное письмо на адрес группы, пользователям необходимо посетить группу, составить новое электронное письмо и затем отредактировать поле “Отправить от имени”, чтобы оно читалось как “Группа”.
Вы также можете сделать это через Центр администрирования Exchange. Чтобы изменить разрешения группы для определенного пользователя, запустите следующую команду с соответствующими заменами для псевдонимов группы и пользователя. Эта команда требует доступа к Exchange Online PowerShell, который получается путем подключения к Exchange Online.
PowerShell:
$groupAlias = ""
$userAlias = ""
$groupsRecipientDetails = Get-Recipient -RecipientTypeDetails groupmailbox -Identity $groupAlias
Add-RecipientPermission -Identity $groupsRecipientDetails.
Name -Trustee $user
Alias -AccessRights SendAs
После того как эта команда будет выполнена, пользователи смогут перейти в Outlook или Outlook в веб-версии и отправлять сообщения от имени группы, введя адрес электронной почты группы в поле “От”.
3. Использование PowerShell для получения полного списка пользователей Office 365
Используйте Get-MsolUser для составления списка пользователей Office 365 и связанных с ними лицензий. Эта команда возвращает отдел, Отображаемое имя, Город и ObjectID для каждого пользователя в клиенте Office 365, у которого есть действительная лицензия.
Get-MsolUser | Select DisplayName, City, Department, ObjectID
Часто при управлении Office365, может возникнуть необходимость посмотреть общее количество лицензий учетных записей. Для этого выполните следующую команду:
Get-MsolAccountSku
Если вы хотите увидеть список доступных услуг, вам нужно запустить следующий скрипт:
Select "Get-MsolAccountSku | -ExpandProperty ServiceStatus"
4. Скрытие групп Microsoft 365 из глобального адресного списка (GAL)
Microsoft позволяет указать, отображается ли Группа Microsoft 365 в GAL или в других списках рассылки по всей компании.
Например, если по какой-то причине вы не хотите, чтобы определенная группа появлялась в глобальном адресном списке. Чтобы удалить запись группы из адресного списка, вам нужно выполнить следующую команду Set-Unified Group.
Set-UnifiedGroup -Identity "Legal Department" -HiddenFromAddressListsEnabled $true
Также читайте Развертывание отчетов о пользователях Office 365
Запустите отчеты Office 365 с использованием InfraSOS (сотни отчетов)
Попробуйте нас бесплатно, доступ ко всем функциям. – Более 200 шаблонов отчетов AD доступны. Легко настройте свои собственные отчеты AD.
5. Обеспечение того, чтобы только внутренние пользователи могли отправлять сообщения в группы Microsoft 365
Источник изображения: Pixabay
Microsoft 365 Настройки группы можно изменить, чтобы предотвратить сообщения от пользователей за пределами организации группы. Эта настройка гарантирует, что никто извне вашей организации не сможет отправить электронное письмо вашей группе по электронной почте.
Когда эта настройка включена, любые сообщения, отправленные вашей группе пользователями за пределами группы, игнорируются.
Чтобы сделать это, запустите следующую Set-UnifiedGroup команду cmdlet.
Set-UnifiedGroup -Identity "Internal senders only" -RequireSenderAuthenticationEnabled $true
6. Изменение отображаемого имени группы Microsoft 365
Имя группы Microsoft 365 указано в имени для отображения. Это имя, которое появляется в панели управления Exchange или Microsoft 365. Используя команду Set-UnifiedGroup, вы можете изменить имя для отображения группы или дать новое имя существующей группе Microsoft 365.
Для этого запустите следующую команду:
Set-UnifiedGroup -Identity "[email protected]" -DisplayName "My new group"
Также прочитайте Попробуйте наш инструмент отчетности Office 365 от InfraSOS
7. Просмотр лицензированных пользователей Microsoft 365
Лицензирование вашей организации Microsoft 365 может предусматривать выдачу некоторых, всех или не выдавать лицензий учетным записям пользователей. PowerShell для Microsoft 365 позволяет легко определить, какие сотрудники имеют действительные лицензии, а какие нет.
Запустите следующую команду, чтобы просмотреть доступные лицензии в клиенте:
Connect-Graph -Scopes User.Read.All, Organization.Read.All
Выполните эту команду, чтобы просмотреть детали лицензии для определенного аккаунта:
Get-MgUserLicenseDetail -UserId ""
Например:
Get-MgUserLicenseDetail -UserId "[email protected]"
Запустите эту команду, чтобы увидеть полный список всех учетных записей пользователей в вашей организации, которым предоставлен доступ к одному из ваших планов лицензирования (лицензированные пользователи).
Get-MgUser -Filter 'assignedLicenses/$count ne 0' -ConsistencyLevel eventual -CountVariable licensedUserCount -All -Select UserPrincipalName,DisplayName,AssignedLicenses | Format-Table -Property UserPrincipalName,DisplayName,AssignedLicenses
Write-Host "Found $licensedUserCount licensed users."
Запустите эту команду, чтобы просмотреть список учетных записей пользователей в вашей организации, которые имеют лицензию E5.
$e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
Get-MgUser -Filter "assignedLicenses/any(x:x/skuId eq $($e5sku.SkuId) )" -ConsistencyLevel eventual -CountVariable e5licensedUserCount -All
Write-Host "Found $e5licensedUserCount E5 licensed users."
8. Просмотр нелицензированных пользователей
Чтобы просмотреть нелицензированных пользователей, выполните следующую команду:
Get-MgUser -Filter 'assignedLicenses/$count eq 0' -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All
Write-Host "Found $unlicensedUserCount unlicensed users."
Выполните эту команду, чтобы увидеть список всех учетных записей пользователей (кроме учетных записей гостей) в вашей организации, которым не были выделены какие-либо из ваших планов лицензирования (нелицензированные пользователи).
Get-MgUser -Filter "assignedLicenses/`$count eq 0 and userType eq 'Member'" -ConsistencyLevel eventual -CountVariable unlicensedUserCount -All
Write-Host "Found $unlicensedUserCount unlicensed users (excluding guests)."
9. Интеграция MailTips в группы Microsoft 365
Office 365 позволяет отображать подсказки по электронной почте всякий раз, когда отправляется электронное письмо в Группу Microsoft 365.
Для этого необходимо использовать команду Set-Unified Group:
Set-UnifiedGroup -Identity "MailTip Group" -MailTip "This group has a MailTip"
Office 365 также позволяет определять альтернативные переводы для подсказки по электронной почте с помощью параметра MailTipTranslations.
Например, если вы хотите получить испанский вариант, вы можете выполнить следующую команду:
Set-UnifiedGroup -Identity "MailaTip Group" -MailTip "This group has a MailTip" -MailTipTranslations "@{Add="ES:Esta caja no se supervisa."
Также читайте Попробуйте наши отчеты о паролях Office 365 с InfraSOS
10. Изменение пароля в Office 365 с помощью PowerShell
Как администратор или обычный пользователь Office 365, вам может потребоваться изменить пароль, либо потому, что ваша учетная запись была уязвима, либо потому, что вы хотите использовать более безопасный пароль.
Office365 делает это возможным с помощью командлета Set-MsolUserPassword, который используется для изменения существующего пароля. Система генерирует случайный пароль, если вы не хотите возиться с попытками придумать один, или вы указываете новый пароль, как в примере ниже.
Set-MsolUserPassword -UserPrincipalName JSmith@Netwrixqcspa.onmicrosoft.com -NewPassword P@SSw0rd!
11. Управление членством в группе Office 365
Office 365 предоставляет администраторам возможность управлять членством в группе Office 365 с помощью Powershell. Часто, как администратор, вам может потребоваться получить список всех групп. Для этого вам нужно использовать команду Get-MsolGroup. Эта команда позволяет получить полный список групп Office 365.
Кроме того, вы можете использовать команду Add-MsolGroupMember для добавления пользователя в группу:
Add-MsolGroupMember -GroupObjectId 5b61d9e1-a13f-4a2d-b5ba-773cebc08eec -GroupMemberObjectId a56cae92-a8b9-4fd0-acfc-6773a5c1c767 -GroupMembertype user
Используя команду Get-MsolGroup, вы также можете определить шестнадцатеричный идентификатор группы, который представлен как GroupObjectId. Вы также можете найти GroupMemberObjectId, который является идентификатором пользователя, выполнив эту команду:
Get-MsolUser | Select ObjectID.
Наконец, как администратор, если вы хотите удалить пользователя из группы, вы можете сделать это с помощью Remove-MsoGroupMember командлета.
12. Создание отчетов в Office 365
PowerShell используется для генерации широкого спектра отчетов в Office 365. Вот следующие полезные Powershell команды для создания отчетов Office 365.
Получение подробного анализа всех почтовых ящиков:
Get-mailbox | get-MailboxStatistics
Если вы хотели бы увидеть полный список неактивных почтовых ящиков, которые не были просмотрены за последние 30 дней, вы можете сделать это, используя следующую команду:
Get-Mailbox –RecipientType 'UserMailbox' | Get-MailboxStatistics | Sort-Object LastLogonTime | Where {$_.LastLogonTime –lt ([DateTime]::Now).
AddDays(-30) } | Format-Table DisplayName, LastLogonTime
Чтобы получить отчет о топ-отправителях и получателях, выполните следующую команду:
Get-MailTrafficTopReport
Запустите следующий скрипт, чтобы получить отчет обо всех группах и их членстве:
function Get-AllO365Members
{
Try
{
$O365Groups=Get-UnifiedGroup
foreach ($O365Group in $O365Groups)
{
Write-Host "Group Membership: " $O365Group.DisplayName -ForegroundColor Green
Get-UnifiedGroupLinks –Identity $O365Group.Identity –LinkType Members
Write-Host
}
}
catch [System.Exception]
{
Write-Host -ForegroundColor Red $_.Exception.ToString()
}
}
Get-AllO365Members
Важно отметить, что новый API отчетов MS Graph теперь заменил большую часть командлетов отчетов Powershell.
Следовательно, вам может потребоваться перейти в Центр безопасности Security и Compliance Office 365, чтобы получить некоторые отчеты.
13. Удаление пользователя со всех сайтов с помощью PowerShell
Иногда, как администратор, вам может потребоваться удалить пользователя из Office 365. Для этого используйте следующую команду для постоянного удаления пользователя со всех сайтов:
Get-SPOSite | ForEach {Remove-SPOUser -Site $_.Url -LoginName " JSmith@enterprise.onmicr
14. Установка соединения с экземпляром Office 365
Для начала работы с Office 365, необходимо скачать и установить модуль PowerShell для Windows. Следуйте приведенным ниже шагам, чтобы сделать это.
Во-первых, получите помощника по входу в Microsoft Online Services для IT-профессионалов RTW и установите его на своем компьютере.
Второй шаг – установить модуль Online Services PowerShell для Azure Active Directory и Office 365 на вашем компьютере:
Это можно сделать, выполнив следующую команду:
Install-Module -Name AzureAD
Install-Module -Name MSOnline
Следующим шагом является предоставление учетных данных администратора для Office 365:
$Cred = Get-Credential
Четвертый шаг – создать удаленную PowerShell сессию. Для этого выполните следующую команду:
$O365 = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic -AllowRedirection
Следующим шагом является импорт команд сессии в локальную сессию Windows PowerShell:
Import-PSSession $O365
Наконец, подключитесь ко всем службам Office 365 с помощью:
Connect-MsolService –Credential $O365
После импорта необходимых модулей Windows PowerShell вы можете начать управление Office 365.
15. Подключение к Exchange Online и SharePoint Online с помощью PowerShell
Office365 позволяет установить соединение с Microsoft Exchange Online или Microsoft SharePoint Online. Подключение к Exchange Online через PowerShell довольно похоже на подключение к Office 365. Для этого запустите следующий код:
$Cred = Get-Credential
$Session = New
-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic –AllowRedirection
С другой стороны, подключение к SharePoint Online происходит немного иначе. Вам нужно установить надстройку SharePoint Online Management Shell, прежде чем вы сможете управлять своим клиентом SharePoint Online. После этого выполните следующий скрипт PowerShell:
$admin="[email protected]" $orgname="enterprise" $userCred = Get-Credential -UserName $admin -Message "Type the password." Connect-SPOService -Url https://$orgname-admin.sharepoint.com -Credential $userCred
Также читайте Разверните наш инструмент мониторинга Azure AD
Заключение: основные команды PowerShell для Office 365 (пользователи, группы, лицензирование)
Powershell – это крайне мощный инструмент для управления Office 365. Управление в Office 365 с помощью PowerShell так же быстро и просто, как на сервере Microsoft Windows.
Однако, хотя изменения могут быть легко внесены с помощью Powershell, всегда рекомендуется вести журнал изменений, внесенных в вашу среду Office 365. Это полезно при устранении проблем, возникающих в дальнейшем.
Source:
https://infrasos.com/top-15-office-365-powershell-commands-users-groups-licensing/