Поиск по сайту:

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


Для управления группами в Azure можно использовать графические инструменты управления, такие как Портал Azure или Центр администрирования Microsoft 365. В этой статье мы покажем, как создавать, редактировать, обновлять и удалять группы в Azure AD или Microsoft 365 с помощью PowerShell.

Первое, что следует отметить, — это то, что в Azure (M365) существует несколько типов групп:

  • Группы безопасности Azure AD используются для управления доступом к приложениям и ресурсам Azure. Вы можете разрешить доступ к приложению Azure, назначить политики или лицензии Azure (лицензирование на основе групп) группам безопасности.

  • Группы Microsoft 365 (ранее называвшиеся группы Office 365) используются как универсальное средство доступа к различным продуктам Microsoft 365 (Teams, Yammer, PowerBI, SharePoint и общему почтовому ящику Outlook). ). В целом M365 — это общая рабочая область для членов команды. При добавлении пользователя в группу M365 он может получить доступ ко всему контенту, опубликованному с момента создания группы. Пользователи такой группы могут обмениваться файлами, документами, списками рассылки, календарями и т. д.;

  • Группы рассылки используются для распространения сообщений группе получателей или массовой отправки электронных писем;

  • Группы безопасности с поддержкой почты используются как для предоставления доступа к ресурсам, так и для отправки рассылок.

Вы можете добавлять пользователей в группу Azure AD или Microsoft 365 вручную (назначенное членство) или динамически (добавляется автоматически на основе атрибутов пользователя или устройства).

Как создать группу безопасности Azure AD с помощью PowerShell?

Группы безопасности Azure AD можно создавать вручную или синхронизировать из локальной Active Directory. Давайте посмотрим, как создавать группы безопасности Azure AD и добавлять в них пользователей с помощью PowerShell.

Подключитесь к своему клиенту Azure с помощью модуля Azure AD PowerShell:

Connect-AzureAD

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

New-AzureADGroup -DisplayName grVMadmins -SecurityEnabled $true -Description "CORP VM admins" -MailEnabled $false -MailNickName "NotSet"

Используя API Microsoft Graph, вы можете получить дату создания группы в Azure AD.

Чтобы получить информацию о группе, выполните команду:

Get-AzureADGroup -SearchString grVMadmins

Чтобы добавить пользователя в группу Azure AD, используйте командлет Add-AzureADGroupMember.

Получите идентификатор пользователя и группы:

$GroupObj = Get-AzureADGroup -SearchString grVMadmins
$UserObj = Get-AzureADUser -SearchString AlexW@active-directory.ru

Затем добавьте идентификатор пользователя в группу:

Add-AzureADGroupMember -ObjectId $GroupObj.ObjectId -RefObjectId $UserObj.ObjectId

Перечислите участников группы:

$GroupObj = Get-AzureADGroup -SearchString grVMadmins
Get-AzureADGroupMember -ObjectId $GroupObj.ObjectId| select DisplayName,UserPrincipalName,UserType

Вы можете назначить владельца группы Azure с помощью Add-AzureADGroupOwner.

Add-AzureADGroupMember -ObjectId $GroupObj.ObjectId -RefObjectId $UserObj.ObjectId

Чтобы отобразить владельца группы:

$GroupObj = Get-AzureADGroup -SearchString grVMadmins
Get-AzureADGroupOwner -ObjectId $GroupObj.ObjectId

Чтобы вывести список всех групп, синхронизированных из локального Active Directory через Azure AD Connect (файл

LastDirSyncTime

атрибут показывает дату последней синхронизации).

Get-AzureADGroup -Filter 'DirSyncEnabled eq true' | select ObjectId,DisplayName,LastDirSyncTime

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

Группы Microsoft 365 создаются автоматически с помощью приложений M365 (Teams, Share Point, Outlook, Yammer и т. д.). По умолчанию любой пользователь клиента может создать группу Microsoft 365. Когда пользователь создает новую группу в Outlook или любом другом приложении, создается группа Microsoft 365. Группы Microsoft 365 доступны во всех службах M365.

Группа сразу же появится в списке групп на портале Azure и в центре администрирования Microsoft 365.

Чтобы создать группы Microsoft 365, вы можете использовать командлет New-UnifiedGroup из модуля Exchange Online для PowerShell (EXOv2).

Подключитесь к своему арендатору:

Connect-ExchangeOnline

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

New-UnifiedGroup -DisplayName "HQ IT Department" -Alias "it-dept" -EmailAddresses it-dept@active-directory.ru -AccessType Private

M365 имеет два типа групп:

  • Public - открытая группа. Любой пользователь может присоединиться к группе и получить доступ к ее содержимому;

  • Частный - доступ имеют только участники группы. Владелец группы или администратор Azure может добавить пользователя в частную группу.

Чтобы добавить пользователей или владельцев в группу, используйте командлет Add-UnifiedGroupLinks. Добавим пользователя в группу и назначим его владельцем:

Add-UnifiedGroupLinks -Identity it-dept -LinkType Members -Links DiegoF
Add-UnifiedGroupLinks -Identity it-dept -LinkType Owners -Links DiegoF

Вы можете добавить подписчика в группу. Подписчик будет получать уведомления по электронной почте:

Add-UnifiedGroupLinks -Identity it-dept -LinkType Subscribers -Links AlexW

Если вы хотите одновременно добавить несколько пользователей в группу Microsoft 365, вы можете импортировать список пользователей из CSV-файла:

Import-CSV "C:\PS\Data\add_m365_members.csv" | ForEach-Object {
Add-UnifiedGroupLinks -Identity it-dept -LinkType Members -Links $_.member
}

Чтобы отобразить всех пользователей в группе:

Get-UnifiedGroupLinks -Identity it-dept -LinkType Members

Чтобы показать владельцев группы:

Get-UnifiedGroupLinks -Identity it-dept -LinkType Owners

Вы можете скрыть группу M365 из глобального списка адресов (GAL):

Set-UnifiedGroup -Identity it-dept -HiddenFromAddressListsEnabled $true

Создание динамических групп и управление ими с помощью Azure AD PowerShell.

Вы можете создать динамическую группу пользователей или устройств в Azure AD. Участники добавляются в группу динамически на основе атрибутов пользователя Azure. Динамическое членство поддерживается как для групп безопасности Azure, так и для групп Microsoft 365. Чтобы создать динамические группы, используйте командлет New-AzureADMSGroup из модуля AzureAD.

Для динамических групп требуется лицензия Azure AD Premium P1 или P2.

Например, вы можете создать динамическую группу, включающую всех пользователей из Мюнхена (

user.city -eq "Munich"

) с конкретной должностью (

user.jobTitle -like "*Engineer*"

). Для этого примера давайте создадим динамическую группу безопасности Azure:

New-AzureADMSGroup -Description "mun_engineers" -DisplayName "All Munich IT dept engineers (dynamic)" -MailEnabled $false -SecurityEnabled $true -MailNickname mun_engineers -GroupTypes "DynamicMembership" -MembershipRule "(user.city -eq ""Munich"" -and user.jobTitle -contains ""Engineer"")" -MembershipRuleProcessingState "On"

К сожалению, модуль AzureAD возвращает следующую ошибку после выполнения команды:

New-AzureADMSGroup : A parameter cannot be found that matches parameter name 'MembershipRule'.

Чтобы создать динамическую группу в Azure, вам необходимо использовать модуль AzureADPreview:

Import-Module AzureADPreview
get-command New-AzureADMSGroup

Чтобы создать динамическую группу Microsoft 365, укажите Unified в качестве типа группы:

New-AzureADMSGroup -DisplayName "M365 Admins" -Description "Dynamic Microsoft 365 Group for tenant admins" -MailEnabled $True -SecurityEnabled $True -MailNickname M365GAdmins -GroupTypes "DynamicMembership", "Unified" -MembershipRule "(User.department -eq ""IT"")" -MembershipRuleProcessingState "On"

Членство в динамических группах Azure в организации обновляется при изменении свойств пользователя или устройства. Если вы вносите массовые изменения в AD, импортируете много пользователей или меняете архитектуру групп/пользователей, рекомендуется на некоторое время приостановить автоматическое обновление динамических групп:

$dynGroupObj = Get-AzureADMSGroup -SearchString “All Munich IT dept engineers (dynamic)”
Set-AzureADMSGroup -Id $dynGroupObj.id -MembershipRuleProcessingState "Paused"

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

Set-AzureADMSGroup -Id $dynGroupObj.id -MembershipRuleProcessingState "On"

В таблице ниже показаны атрибуты пользователя, которые можно использовать для создания запросов для динамических групп Azure.

TypeAttributeExample
BoolaccountEnableduser.accountEnabled -eq true
BooldirSyncEnableduser.dirSyncEnabled -eq true
Stringcity(user.city -eq "value")
Stringcountry(user.country -eq “value”)
StringcompanyName(user.companyName -eq “value”)
Stringdepartment(user.department -eq “value”)
StringdisplayName(user.displayName -eq “value”)
StringemployeeId(user.employeeId -eq “value”)
StringfacsimileTelephoneNumber(user.facsimileTelephoneNumber -eq “value”)
StringgivenName(user.givenName -eq “value”)
StringjobTitle(user.jobTitle -eq “value”)
Stringmail(user.mail -eq “value”)
StringmailNickName(user.mailNickName -eq “value”)
Stringmobile(user.mobile -eq “value”)
StringobjectId(user.objectId -eq “value”)
StringonPremisesSecurityIdentifier(user.onPremisesSecurityIdentifier -eq “value”)
StringpasswordPolicies(user.passwordPolicies -eq “DisableStrongPassword”)
StringphysicalDeliveryOfficeName(user.physicalDeliveryOfficeName -eq “value”)
StringpostalCode(user.postalCode -eq “value”)
StringpreferredLanguage(user.preferredLanguage -eq “de-DE”)
StringsipProxyAddressuser.sipProxyAddress -eq “value”
Stringstate(user.state -eq “value”)
StringstreetAddressuser.streetAddress -eq “value”
Stringsurnameuser.surname -eq “value”
StringtelephoneNumber(user.telephoneNumber -eq “value”)
StringusageLocation(user.usageLocation -eq “US”)
StringuserPrincipalName(user.userPrincipalName -eq “user@contoso.com”)
StringuserType(user.userType -eq “Member”)
String collectionotherMails(user.otherMails -contains “user@contoso.com”)
String collectionproxyAddresses(user.proxyAddresses -contains “SMTP: alias@contoso.com”)

В локальной Active Directory можно использовать только динамические группы рассылки Exchange.

Если вы хотите создать динамические группы безопасности в AD, вы можете использовать сценарии автоматизации PowerShell (см. пример). Узнайте больше об управлении группами в локальной Active Directory с помощью PowerShell.

Статьи по данной тематике