Microsoft Entra version 2-cmdletar för grupphantering

Den här artikeln innehåller exempel på hur du använder PowerShell för att hantera dina grupper i Microsoft Entra ID, en del av Microsoft Entra. Den visar också hur du konfigurerar med Microsoft Graph PowerShell-modulen. Först måste du ladda ned Microsoft Graph PowerShell-modulen.

Installera Microsoft Graph PowerShell-modulen

Om du vill installera MgGroup PowerShell-modulen använder du följande kommandon:

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

Använd följande kommando för att kontrollera att modulen är redo att användas:

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…

Nu kan du börja använda cmdletarna i modulen. En fullständig beskrivning av cmdletarna i Microsoft Graph-modulen finns i onlinereferensdokumentationen för Microsoft Graph PowerShell.

Anslut till katalogen

Innan du kan börja hantera grupper med Microsoft Graph PowerShell-cmdletar måste du ansluta PowerShell-sessionen till den katalog som du vill hantera. Ange följande kommando:

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

Cmdleten uppmanar dig att ange de autentiseringsuppgifter som du vill använda för att komma åt din katalog. I det här exemplet använder karen@drumkit.onmicrosoft.com vi för att komma åt demonstrationskatalogen. Cmdleten returnerar en bekräftelse för att visa att sessionen har anslutits till din katalog:

    Welcome To Microsoft Graph!

Nu kan du börja använda MgGraph-cmdletar för att hantera grupper i din katalog.

Hämta grupper

Om du vill hämta befintliga grupper från din katalog använder du cmdleten Get-MgGroups.

Om du vill hämta alla grupper i katalogen använder du cmdleten utan parametrar:

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

Cmdleten returnerar alla grupper i den anslutna katalogen.

Du kan använda parametern -GroupId för att hämta en specifik grupp som du anger gruppens objectID för:

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

Cmdleten returnerar nu den grupp vars objectID matchar värdet för parametern som du angav:

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

Du kan söka efter en specifik grupp med parametern -filter. Den här parametern tar en ODATA-filtersats och returnerar alla grupper som matchar filtret, som i följande exempel:

    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

Kommentar

MgGroup PowerShell-cmdletarna implementerar OData-frågestandarden. Mer information finns i $filter i OData-systemfrågealternativ med hjälp av OData-slutpunkten.

Skapa grupper

Om du vill skapa en ny grupp i katalogen använder du cmdleten New-MgGroup. Den här cmdleten skapar en ny säkerhetsgrupp med namnet "Marketing":

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

New-MgGroup @param

Uppdatera grupper

Om du vill uppdatera en befintlig grupp använder du cmdleten Update-MgGroup. I det här exemplet ändrar vi egenskapen DisplayName för gruppen "Intune-administratörer". Först letar vi upp gruppen med cmdleten Get-MgGroup och filtrerar med attributet DisplayName:

    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

Nu ändrar vi egenskapen Description till det nya värdet "Intune Device Administrators":

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

Om vi nu hittar gruppen igen ser vi att egenskapen Description uppdateras för att återspegla det nya värdet:

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

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

Ta bort grupper

Om du vill ta bort grupper från din katalog använder du cmdleten Remove-MgGroup enligt följande:

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

Hantera gruppmedlemskap

Lägg till medlemmar

Om du vill lägga till nya medlemmar i en grupp använder du cmdleten Add-MgGroupMember. Det här kommandot lägger till en medlem i gruppen Intune-administratörer som vi använde i föregående exempel:

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

Parametern -GroupId är ObjectID för den grupp som vi vill lägga till en medlem i, och -DirectoryObjectId är ObjectID för den användare som vi vill lägga till som medlem i gruppen.

Hämta medlemmar

Om du vill hämta befintliga medlemmar i en grupp använder du cmdleten Get-MgGroupMember, som i det här exemplet:

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

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

Ta bort medlemmar

Om du vill ta bort medlemmen som vi tidigare lade till i gruppen använder du cmdleten Remove-MgGroupMember, som visas här:

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

Verifiera medlemmar

Om du vill verifiera gruppmedlemskapen för en användare använder du cmdleten Select-MgGroupIdsUserIsMemberOf. Den här cmdleten tar som parametrar ObjectId för den användare som du vill kontrollera gruppmedlemskapen för och en lista över grupper som medlemskapen ska kontrolleras för. Listan över grupper måste anges i form av en komplex variabel av typen "Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck", så vi måste först skapa en variabel med den typen:

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

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

Värdet som returneras är en lista över grupper som användaren är medlem i. Du kan också använda den här metoden för att kontrollera medlemskapet i Kontakter, Grupper eller Tjänstens huvudnamn för en viss lista över grupper med hjälp av Select-MgGroupIdsContactIsMemberOf, Select-MgGroupIdsGroupIsMemberOf eller Select-MgGroupIdsServicePrincipalIsMemberOf

Inaktivera gruppskapande av dina användare

Du kan förhindra att icke-administratörsanvändare skapar säkerhetsgrupper. Standardbeteendet i Microsoft Online Directory Services (MSODS) är att tillåta icke-administratörsanvändare att skapa grupper, oavsett om grupphantering via självbetjäning (SSGM) också är aktiverat. SSGM-inställningen styr endast beteendet i Mina appar åtkomstpanelen.

Så här inaktiverar du gruppskapande för icke-administratörsanvändare:

  1. Kontrollera att icke-administratörsanvändare får skapa grupper:

    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. Om den returnerar EnableGroupCreation : Truekan användare som inte är administratörer skapa grupper. Så här inaktiverar du den här funktionen:

     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
    
    

Hantera ägare av grupper

Om du vill lägga till ägare i en grupp använder du cmdleten New-MgGroupOwner:

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

Parametern -GroupId är ObjectID för den grupp som vi vill lägga till en ägare till, och -DirectoryObjectId är ObjectID för användaren eller tjänstens huvudnamn som vi vill lägga till som ägare.

Om du vill hämta ägarna till en grupp använder du cmdleten Get-MgGroupOwner:

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

Cmdleten returnerar listan över ägare (användare och tjänstens huvudnamn) för den angivna gruppen:

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

Om du vill ta bort en ägare från en grupp använder du cmdleten Remove-MgGroupOwnerByRef:

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

Reserverade alias

När en grupp skapas tillåter vissa slutpunkter att slutanvändaren anger ett mailNickname eller alias som ska användas som en del av gruppens e-postadress. Grupper med följande högprivilegierade e-postalias kan bara skapas av en global Microsoft Entra-administratör. 

  • Missbruk
  • administratör
  • Administratör
  • hostmaster
  • majordomo
  • Postmaster
  • Root
  • säker
  • Säkerhet 
  • ssl-admin
  • Webmaster

Gruppera tillbakaskrivning till lokalt (förhandsversion)

Idag hanteras många grupper fortfarande i lokal Active Directory. Microsoft 365-gruppers tillbakaskrivningsfunktion för Microsoft Entra-ID är nu tillgänglig för förhandsversion för att besvara begäranden om att synkronisera molngrupper tillbaka till lokalt.

Microsoft 365-grupper skapas och hanteras i molnet. Med funktionen för tillbakaskrivning kan du skriva tillbaka Microsoft 365-grupper som distributionsgrupper till en Active Directory-skog med Exchange installerat. Användare med lokala Exchange-postlådor kan sedan skicka och ta emot e-postmeddelanden från dessa grupper. Funktionen för tillbakaskrivning av grupp stöder inte Microsoft Entra-säkerhetsgrupper eller distributionsgrupper.

Mer information finns i dokumentationen för Microsoft Entra Anslut Sync-tjänsten.

Tillbakaskrivning av Microsoft 365-grupp är en offentlig förhandsversionsfunktion i Microsoft Entra ID och är tillgänglig med alla betalda Licensplaner för Microsoft Entra-ID. Mer information om förhandsversioner finns i Universella licensvillkor för onlinetjänster.

Nästa steg

Du hittar mer Azure Active Directory PowerShell-dokumentation på Microsoft Entra-cmdletar.