Топ-15 команд PowerShell для Office 365 (пользователи, группы, лицензирование)

Топ 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.

Учитывая это, давайте изучим 15 лучших команд PowerShell для Office 365, которые могут быть полезны для упрощения задач в Office 365.

Топ-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 с использованием 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"

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."

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

Заключение: основные команды 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/