Grup yönetimi için Microsoft Entra sürüm 2 cmdlet'leri

Bu makale, Microsoft Entra'nın bir parçası olan Microsoft Entra Id'de gruplarınızı yönetmek için PowerShell'in nasıl kullanılacağına örnekler içerir. Ayrıca Microsoft Graph PowerShell modülünü nasıl ayarlayabileceğinizi de bildirir. İlk olarak Microsoft Graph PowerShell modülünü indirmeniz gerekir.

Microsoft Graph PowerShell modülünü yükleme

MgGroup PowerShell modülünü yüklemek için aşağıdaki komutları kullanın:

    PS C:\Windows\system32> Install-module Microsoft.Graph

Modülün kullanıma hazır olduğunu doğrulamak için aşağıdaki komutu kullanın:

PS C:\Windows\system32> Get-Module -Name "*graph*"

ModuleType Version    PreRelease Name                                ExportedCommands
---------- -------    ---------- ----                                ----------------
Script     1.27.0                Microsoft.Graph.Authentication      {Add-MgEnvironment, Connect-MgGraph, Disconnect-MgGraph, Get-MgContext…}
Script     1.27.0                Microsoft.Graph.Groups              {Add-MgGroupDriveListContentTypeCopy, Add-MgGroupDriveListContentTypeCopyF…

Artık modüldeki cmdlet'leri kullanmaya başlayabilirsiniz. Microsoft Graph modülündeki cmdlet'lerin tam açıklaması için Microsoft Graph PowerShell için çevrimiçi başvuru belgelerine bakın.

Dizine Bağlan

Microsoft Graph PowerShell cmdlet'lerini kullanarak grupları yönetmeye başlamadan önce, PowerShell oturumunuzu yönetmek istediğiniz dizine bağlamanız gerekir. Aşağıdaki komutu kullanın:

    PS C:\Windows\system32> Connect-MgGraph -Scopes "Group.ReadWrite.All"

Cmdlet dizininize erişmek için kullanmak istediğiniz kimlik bilgilerini ister. Bu örnekte, tanıtım dizinine erişmek için kullanıyoruz karen@drumkit.onmicrosoft.com . Cmdlet, oturumun dizininize başarıyla bağlandığını gösteren bir onay döndürür:

    Welcome To Microsoft Graph!

Artık dizininizdeki grupları yönetmek için MgGraph cmdlet'lerini kullanmaya başlayabilirsiniz.

Grupları alma

Dizininizden mevcut grupları almak için Get-MgGroups cmdlet'ini kullanın.

Dizindeki tüm grupları almak için cmdlet'ini parametresiz kullanın:

    PS C:\Windows\system32> Get-MgGroup -All

Cmdlet, bağlı dizindeki tüm grupları döndürür.

Grubun objectID değerini belirttiğiniz belirli bir grubu almak için -GroupId parametresini kullanabilirsiniz:

    PS C:\Windows\system32> Get-MgGroup -GroupId 5e3eba05-6c2b-4555-9909-c08e997aab18 | fl

Cmdlet şimdi objectID değeri girdiğiniz parametrenin değeriyle eşleşen grubu döndürür:

AcceptedSenders               :
AllowExternalSenders          :
AppRoleAssignments            :
AssignedLabels                :
AssignedLicenses              :
AutoSubscribeNewMembers       :
Calendar                      : Microsoft.Graph.PowerShell.Models.MicrosoftGraphCalendar
CalendarView                  :
Classification                :
Conversations                 :
CreatedDateTime               : 14-07-2023 14:25:49
CreatedOnBehalfOf             : Microsoft.Graph.PowerShell.Models.MicrosoftGraphDirectoryObject
DeletedDateTime               :
Description                   : Sales and Marketing
DisplayName                   : Sales and Marketing
Id                            : f76cbbb8-0581-4e01-a0d4-133d3ce9197f
IsArchived                    :
IsAssignableToRole            :
IsSubscribedByMail            :
LicenseProcessingState        : Microsoft.Graph.PowerShell.Models.MicrosoftGraphLicenseProcessingState
Mail                          : SalesAndMarketing@M365x64647001.onmicrosoft.com
MailEnabled                   : True
MailNickname                  : SalesAndMarketing
RejectedSenders               :
RenewedDateTime               : 14-07-2023 14:25:49
SecurityEnabled               : True

-filter parametresini kullanarak belirli bir grubu arayabilirsiniz. Bu parametre bir ODATA filtre yan tümcesi alır ve aşağıdaki örnekte olduğu gibi filtreyle eşleşen tüm grupları döndürür:

    PS C:\Windows\system32> Get-MgGroup -Filter "DisplayName eq 'Intune Administrators'"


    DeletionTimeStamp            :
    ObjectId                     : 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
    ObjectType                   : Group
    Description                  : Intune Administrators
    DirSyncEnabled               :
    DisplayName                  : Intune Administrators
    LastDirSyncTime              :
    Mail                         :
    MailEnabled                  : False
    MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
    OnPremisesSecurityIdentifier :
    ProvisioningErrors           : {}
    ProxyAddresses               : {}
    SecurityEnabled              : True

Dekont

MgGroup PowerShell cmdlet'leri OData sorgu standardını uygular. Daha fazla bilgi için bkz. OData uç noktasını kullanarak OData sistem sorgusu seçeneklerinde $filter.

Grup oluşturma

Dizininizde yeni bir grup oluşturmak için New-MgGroup cmdlet'ini kullanın. Bu cmdlet "Marketing" adlı yeni bir güvenlik grubu oluşturur:

$param = @{
 description="My Demo Group"
 displayName="DemoGroup"
 mailEnabled=$false
 securityEnabled=$true
 mailNickname="Demo"
}

New-MgGroup @param

Grupları güncelleştirme

Mevcut bir grubu güncelleştirmek için Update-MgGroup cmdlet'ini kullanın. Bu örnekte, "Intune Yönetici istrators" grubunun DisplayName özelliğini değiştiriyoruz. İlk olarak Get-MgGroup cmdlet'ini kullanarak grubu buluyoruz ve DisplayName özniteliğini kullanarak filtreleyeceğiz:

    PS C:\Windows\system32> Get-MgGroup -Filter "DisplayName eq 'Intune Administrators'"


    DeletionTimeStamp            :
    ObjectId                     : 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
    ObjectType                   : Group
    Description                  : Intune Administrators
    DirSyncEnabled               :
    DisplayName                  : Intune Administrators
    LastDirSyncTime              :
    Mail                         :
    MailEnabled                  : False
    MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
    OnPremisesSecurityIdentifier :
    ProvisioningErrors           : {}
    ProxyAddresses               : {}
    SecurityEnabled              : True

Ardından Description özelliğini yeni "Intune Cihaz Yönetici istrators" değerine değiştireceğiz:

    PS C:\Windows\system32> Update-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b -Description "Demo Group Updated"

Şimdi grubu yeniden bulursak Description özelliğinin yeni değeri yansıtacak şekilde güncelleştirildiğini görürüz:

    PS C:\Windows\system32> Get-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b | select displayname, description

    DisplayName Description
    ----------- -----------
    DemoGroup   Demo Group Updated

Grupları silme

Grupları dizininizden silmek için Remove-MgGroup cmdlet'ini aşağıdaki gibi kullanın:

    PS C:\Windows\system32> Remove-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b

Grup üyeliğini yönetme

Üye ekle

Gruba yeni üyeler eklemek için Add-MgGroupMember cmdlet'ini kullanın. Bu komut, önceki örnekte kullandığımız Intune Yönetici istrators grubuna bir üye ekler:

    PS C:\Windows\system32> New-MgGroupMember -GroupId f76cbbb8-0581-4e01-a0d4-133d3ce9197f -DirectoryObjectId a88762b7-ce17-40e9-b417-0add1848eb68

-GroupId parametresi, üye eklemek istediğimiz grubun ObjectID değeridir ve -DirectoryObjectId, gruba üye olarak eklemek istediğimiz kullanıcının ObjectID değeridir.

Üye alma

Bir grubun mevcut üyelerini almak için, aşağıdaki örnekte olduğu gibi Get-MgGroupMember cmdlet'ini kullanın:

    PS C:\Windows\system32> Get-MgGroupMember -GroupId 2c52c779-8587-48c5-9d4a-c474f2a66cf4

Id                                   DeletedDateTime
--                                   ---------------
71b3857d-2a23-416d-bd22-a471854ddada
fd2d57c7-22ad-42cd-961a-7340fb2eb6b4

Üyeleri kaldırma

Gruba daha önce eklediğimiz üyeyi kaldırmak için, burada gösterildiği gibi Remove-MgGroupMember cmdlet'ini kullanın:

    PS C:\Windows\system32> Remove-MgGroupMemberByRef -DirectoryObjectId 053a6a7e-4a75-48bc-8324-d70f50ec0d91 -GroupId 2c52c779-8587-48c5-9d4a-c474f2a66cf4

Üyeleri doğrulama

Bir kullanıcının grup üyeliklerini doğrulamak için Select-MgGroupIdsUserIsMemberOf cmdlet'ini kullanın. Bu cmdlet, parametre olarak grup üyeliklerinin denetlendiği kullanıcının ObjectId değerini ve üyeliklerin denetlendiği grupların listesini alır. Grup listesi "Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck" türünde karmaşık bir değişken biçiminde sağlanmalıdır, bu nedenle önce bu türe sahip bir değişken oluşturmalıyız:

Get-MgUserMemberOf -UserId 053a6a7e-4a75-48bc-8324-d70f50ec0d91

Id                                   DisplayName Description GroupTypes AccessType
--                                   ----------- ----------- ---------- ----------
5dc16449-3420-4ad5-9634-49cd04eceba0 demogroup   demogroup    {Unified}

Döndürülen değer, bu kullanıcının üye olduğu grupların listesidir. Bu yöntemi, Select-MgGroupIdsContactIsMemberOf, Select-MgGroupIdsGroupIsMemberOf veya Select-MgGroupIdsServicePrincipalIsMemberOf kullanarak belirli bir grup listesi için Kişiler, Gruplar veya Hizmet Sorumluları üyeliğini denetlemek için de uygulayabilirsiniz

Kullanıcılarınız tarafından grup oluşturmayı devre dışı bırakma

Yönetici olmayan kullanıcıların güvenlik grupları oluşturmasını engelleyebilirsiniz. Microsoft Çevrimiçi Dizin Hizmetleri'nde (MSODS) varsayılan davranış, self servis grup yönetiminin (SSGM) de etkinleştirilip etkinleştirilmediğine bakılmaksızın yönetici olmayan kullanıcıların grup oluşturmasına izin vermektir. SSGM ayarı yalnızca Uygulamalarım erişim panelinde davranışı denetler.

Yönetici olmayan kullanıcılar için grup oluşturmayı devre dışı bırakmak için:

  1. Yönetici olmayan kullanıcıların grup oluşturmasına izin verildiğini doğrulayın:

    PS C:\> Get-MgBetaDirectorySetting | select -ExpandProperty values
    
     Name                            Value
     ----                            -----
     NewUnifiedGroupWritebackDefault true
     EnableMIPLabels                 false
     CustomBlockedWordsList
     EnableMSStandardBlockedWords    false
     ClassificationDescriptions
     DefaultClassification
     PrefixSuffixNamingRequirement
     AllowGuestsToBeGroupOwner       false
     AllowGuestsToAccessGroups       true
     GuestUsageGuidelinesUrl
     GroupCreationAllowedGroupId
     AllowToAddGuests                true
     UsageGuidelinesUrl
     ClassificationList
     EnableGroupCreation             true
    
  2. döndürürse EnableGroupCreation : True, yönetici olmayan kullanıcılar grup oluşturabilir. Bu özelliği devre dışı bırakmak için:

     Install-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
     Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
     $params = @{
     TemplateId = "62375ab9-6b52-47ed-826b-58e47e0e304b"
     Values = @(		
     	@{
     		Name = "EnableGroupCreation"
     		Value = "false"
     	}		
     )
     }
     Connect-MgGraph -Scopes "Directory.ReadWrite.All"
     New-MgBetaDirectorySetting -BodyParameter $params
    
    

Grup sahiplerini yönetme

Gruba sahip eklemek için New-MgGroupOwner cmdlet'ini kullanın:

    PS C:\Windows\system32> New-MgGroupOwner -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497 -DirectoryObjectId 92a0dad0-7c9e-472f-b2a3-0fe2c9a02867

-GroupId parametresi, sahip eklemek istediğimiz grubun ObjectID değeridir ve -DirectoryObjectId, sahip olarak eklemek istediğimiz kullanıcı veya hizmet sorumlusunun ObjectID değeridir.

Bir grubun sahiplerini almak için Get-MgGroupOwner cmdlet'ini kullanın:

    PS C:\Windows\system32> Get-MgGroupOwner -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497

Cmdlet, belirtilen grup için sahiplerin (kullanıcılar ve hizmet sorumluları) listesini döndürür:

    Id                                       DeletedDateTime
    --                                       ---------------
    8ee754e0-743e-4231-ace4-c28d20cf2841
    85b1df54-e5c0-4cfd-a20b-8bc1a2ca7865
    4451b332-2294-4dcf-a214-6cc805016c50

Gruptan sahip kaldırmak istiyorsanız Remove-MgGroupOwnerByRef cmdlet'ini kullanın:

    PS C:\Windows\system32> Remove-MgGroupOwnerByRef -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497 -DirectoryObjectId 92a0dad0-7c9e-472f-b2a3-0fe2c9a02867

Ayrılmış diğer adlar

Bir grup oluşturulduğunda, bazı uç noktalar son kullanıcının grubun e-posta adresinin bir parçası olarak kullanılacak mailNickname veya diğer ad belirtmesine olanak tanır. Aşağıdaki yüksek ayrıcalıklı e-posta diğer adlarına sahip gruplar yalnızca Microsoft Entra Global Yönetici istrator tarafından oluşturulabilir. 

  • Kötüye
  • yönetici
  • Yönetici
  • hostmaster
  • majordomo
  • Postmaster
  • kök
  • güvenli
  • güvenlik
  • ssl-admin
  • Webmaster

Şirket içi grup geri yazma (önizleme)

Bugün, birçok grup hala şirket içi Active Directory yönetilmektedir. Bulut gruplarını şirket içiyle eşitleme isteklerini yanıtlamak için, Microsoft Entra Id için Microsoft 365 grupları geri yazma özelliği önizlemeye sunuldu.

Microsoft 365 grupları bulutta oluşturulur ve yönetilir. Geri yazma özelliği, Microsoft 365 gruplarını Exchange'in yüklü olduğu bir Active Directory ormanına dağıtım grupları olarak geri yazmanıza olanak tanır. Şirket içi Exchange posta kutuları olan kullanıcılar bu gruplardan e-posta gönderip alabilir. Grup geri yazma özelliği Microsoft Entra güvenlik gruplarını veya dağıtım gruplarını desteklemez.

Daha fazla ayrıntı için lütfen Microsoft Entra Bağlan Eşitleme hizmeti belgelerine bakın.

Microsoft 365 grup geri yazma, Microsoft Entra Id'nin genel önizleme özelliğidir ve ücretli Microsoft Entra Id lisans planlarıyla kullanılabilir. Önizlemeler hakkında daha fazla bilgi için bkz . Çevrimiçi Hizmetler için Evrensel Lisans Koşulları.

Sonraki adımlar

Microsoft Entra Cmdlet'leri sayfasında daha fazla Azure Active Directory PowerShell belgesi bulabilirsiniz.