Rutiny Microsoft Entra verze 2 pro správu skupin

Tento článek obsahuje příklady použití PowerShellu ke správě skupin v Microsoft Entra ID, která je součástí Microsoft Entra. Dozvíte se také, jak nastavit modul Microsoft Graph PowerShellu. Nejprve si musíte stáhnout modul Microsoft Graph PowerShellu.

Instalace modulu Microsoft Graph PowerShellu

K instalaci modulu MgGroup PowerShell použijte následující příkazy:

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

Pokud chcete ověřit, že je modul připravený k použití, použijte následující příkaz:

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…

Teď můžete začít používat rutiny v modulu. Úplný popis rutin v modulu Microsoft Graph najdete v online referenční dokumentaci pro Microsoft Graph PowerShell.

Připojení k adresáři

Než začnete spravovat skupiny pomocí rutin Prostředí Microsoft Graph PowerShell, musíte připojit relaci PowerShellu k adresáři, který chcete spravovat. Použijte následující příkaz:

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

Rutina vás vyzve k zadání přihlašovacích údajů, které chcete použít pro přístup k adresáři. V tomto příkladu používáme karen@drumkit.onmicrosoft.com přístup k ukázkovém adresáři. Rutina vrátí potvrzení, že se relace úspěšně připojila k vašemu adresáři:

    Welcome To Microsoft Graph!

Teď můžete začít používat rutiny MgGraph ke správě skupin v adresáři.

Načtení skupin

Pokud chcete načíst existující skupiny z adresáře, použijte rutinu Get-MgGroups.

Pokud chcete načíst všechny skupiny v adresáři, použijte rutinu bez parametrů:

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

Rutina vrátí všechny skupiny v připojeném adresáři.

Pomocí parametru -GroupId můžete načíst konkrétní skupinu, pro kterou zadáte ID objektu skupiny:

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

Rutina teď vrátí skupinu, jejíž ID objektu odpovídá hodnotě zadaného parametru:

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

Konkrétní skupinu můžete vyhledat pomocí parametru -filter. Tento parametr přebírá klauzuli filtru ODATA a vrací všechny skupiny, které odpovídají filtru, jako v následujícím příkladu:

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


    DeletionTimeStamp            :
    ObjectId                     : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType                   : Group
    Description                  : Intune Administrators
    DirSyncEnabled               :
    DisplayName                  : Intune Administrators
    LastDirSyncTime              :
    Mail                         :
    MailEnabled                  : False
    MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
    OnPremisesSecurityIdentifier :
    ProvisioningErrors           : {}
    ProxyAddresses               : {}
    SecurityEnabled              : True

Poznámka:

Rutiny PowerShellu MgGroup implementují standard dotazu OData. Další informace najdete v tématu $filter v možnostech systémového dotazu OData pomocí koncového bodu OData.

Tady je příklad, který ukazuje, jak vyžádat všechny skupiny, které nemají použitou zásadu vypršení platnosti.

Connect-MgGraph -Scopes 'Group.Read.All'
Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z)" | Format-List Id

Tento příklad dělá totéž jako předchozí, ale skript také exportuje výsledky do sdíleného svazku clusteru.

Connect-MgGraph -Scopes 'Group.Read.All'
Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z)" | Format-List Id |Export-Csv -Path {path} -NoTypeInformation

Tento poslední příklad ukazuje, jak načíst pouze skupiny, které patří do Teams.

Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z) and resourceProvisioningOptions/any(p:p eq 'Team')" | Format-List Id, expirationDateTime, resourceProvisioningOptions

Vytvoření skupin

K vytvoření nové skupiny v adresáři použijte rutinu New-MgGroup. Tato rutina vytvoří novou skupinu zabezpečení s názvem Marketing:

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

New-MgGroup @param

Aktualizace skupin

Pokud chcete aktualizovat existující skupinu, použijte rutinu Update-MgGroup. V tomto příkladu měníme vlastnost DisplayName skupiny Správci Intune. Nejprve zjistíme skupinu pomocí rutiny Get-MgGroup a filtrování pomocí atributu DisplayName:

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


    DeletionTimeStamp            :
    ObjectId                     : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    ObjectType                   : Group
    Description                  : Intune Administrators
    DirSyncEnabled               :
    DisplayName                  : Intune Administrators
    LastDirSyncTime              :
    Mail                         :
    MailEnabled                  : False
    MailNickName                 : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
    OnPremisesSecurityIdentifier :
    ProvisioningErrors           : {}
    ProxyAddresses               : {}
    SecurityEnabled              : True

V dalším kroku změníme vlastnost Popis na novou hodnotu Intune Device Administrators( Správci zařízení Intune):

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

Když teď skupinu znovu najdeme, uvidíme, že se vlastnost Popis aktualizuje tak, aby odrážela novou hodnotu:

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

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

Odstranění skupin

Pokud chcete odstranit skupiny z adresáře, použijte rutinu Remove-MgGroup následujícím způsobem:

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

Správa členství ve skupinách

Přidat členy

Pokud chcete do skupiny přidat nové členy, použijte rutinu New-MgGroupMember. Tento příkaz přidá člena do skupiny Intune Administrators, které jsme použili v předchozím příkladu:

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

Parametr -GroupId je ObjectID skupiny, do které chceme přidat člena, a -DirectoryObjectId je ObjectID uživatele, kterého chceme přidat jako člena skupiny.

Získání členů

Pokud chcete získat existující členy skupiny, použijte rutinu Get-MgGroupMember, jak je znázorněno v tomto příkladu:

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

Id                                   DeletedDateTime
--                                   ---------------
aaaaaaaa-bbbb-cccc-1111-222222222222
bbbbbbbb-cccc-dddd-2222-333333333333

Odebrání členů

Pokud chcete odebrat člena, který jsme do skupiny přidali dříve, použijte rutinu Remove-MgGroupMember, jak je znázorněno tady:

    PS C:\Windows\system32> Remove-MgGroupMemberByRef -DirectoryObjectId 00aa00aa-bb11-cc22-dd33-44ee44ee44ee -GroupId 2c52c779-8587-48c5-9d4a-c474f2a66cf4

Ověření členů

Pokud chcete ověřit členství ve skupinách uživatele, použijte rutinu Select-MgGroupIdsUserIsMemberOf. Tato rutina přebírá jako parametry ObjectId uživatele, pro kterého chcete zkontrolovat členství ve skupinách, a seznam skupin, pro které se mají členství zkontrolovat. Seznam skupin musí být poskytován ve formě komplexní proměnné typu Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck, takže nejprve musíme vytvořit proměnnou s tímto typem:

Get-MgUserMemberOf -UserId 00aa00aa-bb11-cc22-dd33-44ee44ee44ee

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

Vrácená hodnota je seznam skupin, jejichž je tento uživatel členem. Tuto metodu můžete použít také ke kontrole členství kontaktů, skupin nebo instančních objektů pro daný seznam skupin pomocí select-MgGroupIdsContactIsMemberOf, Select-MgGroupIdsGroupIsMemberOf nebo Select-MgGroupIdsServicePrincipalIsMemberOf.

Zakázání vytváření skupin uživateli

Uživatelům, kteří nejsou správci, můžete zabránit ve vytváření skupin zabezpečení. Výchozím chováním služby Microsoft Online Directory Services (MSODS) je umožnit uživatelům, kteří nejsou správci, vytvářet skupiny, bez ohledu na to, jestli je povolená také samoobslužná správa skupin (SSGM). Nastavení SSGM řídí chování pouze na portálu Moje skupiny.

Zakázání vytváření skupin pro uživatele, kteří nejsou správci:

  1. Ověřte, že uživatelé bez oprávnění správce mohou vytvářet skupiny:

    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. Pokud se vrátí EnableGroupCreation : True, můžou uživatelé, kteří nejsou správci, vytvářet skupiny. Zakázání této funkce:

     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
    
    

Správa vlastníků skupin

Pokud chcete do skupiny přidat vlastníky, použijte rutinu New-MgGroupOwner:

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

Parametr -GroupId je ObjectID skupiny, do které chceme přidat vlastníka, a -DirectoryObjectId je ObjectID uživatele nebo instančního objektu, který chceme přidat jako vlastníka.

Pokud chcete načíst vlastníky skupiny, použijte rutinu Get-MgGroupOwner:

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

Rutina vrátí seznam vlastníků (uživatelů a instančních objektů) pro zadanou skupinu:

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

Pokud chcete odebrat vlastníka ze skupiny, použijte rutinu Remove-MgGroupOwnerByRef:

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

Rezervované aliasy

Když je skupina vytvořena, určité koncové body umožňují koncovému uživateli zadat mailNickname nebo alias, který se má použít jako součást e-mailové adresy skupiny. Skupiny s následujícími vysoce privilegovanými e-mailovými aliasy může vytvořit pouze globální správce Microsoft Entra. 

  • zneužití
  • správce
  • správce
  • hostmaster
  • majordomo
  • poštmistr
  • kořen
  • Zabezpečený
  • security
  • ssl-admin
  • webmaster

Zpětný zápis skupiny do místního prostředí

V současnosti se mnoho skupin stále spravuje v místní Active Directory. Aby bylo možné zodpovědět požadavky na synchronizaci cloudových skupin zpět do místního prostředí, je teď k dispozici funkce zpětného zápisu pro ID Microsoft Entra pomocí cloudové synchronizace Microsoft Entra.

Důležité

Verze Public Preview zpětného zápisu skupiny v2 v Microsoft Entra Connect Sync už nebude k dispozici po 30. červnu 2024. Tato funkce bude k tomuto datu ukončena a v aplikaci Connect Sync již nebude podporováno poskytování cloudových skupin zabezpečení do služby Active Directory. Funkce bude fungovat i po datu ukončení; po tomto datu však již nebude podporována a může přestat fungovat kdykoli bez předchozího upozornění.

Ve službě Microsoft Entra Cloud Sync nabízíme podobné funkce označované jako Zřizování skupin pro Active Directory, které můžete použít místo zpětného zápisu skupiny v2 pro zřizování skupin zabezpečení cloudu pro Active Directory. Pracujeme na vylepšení této funkce ve službě Cloud Sync spolu s dalšími novými funkcemi, které vyvíjíme ve službě Cloud Sync.

Zákazníci, kteří používají tuto funkci Preview v Connect Sync, by měli přepnout svoji konfiguraci z Connect Sync na Cloud Sync. Můžete se rozhodnout přesunout veškerou hybridní synchronizaci do služby Cloud Sync (pokud podporuje vaše potřeby). Službu Cloud Sync můžete také spustit vedle sebe a přesunout pouze zřizování skupin zabezpečení cloudu do služby Active Directory do Cloud Sync.

Pro zákazníky, kteří zřídí skupiny Microsoftu 365 pro službu Active Directory: pro tuto funkci můžete nadále používat zpětný zápis skupiny v1.

K vyhodnocení přesunu výhradně do služby Cloud Sync můžete použít průvodce synchronizací uživatelů.

Další kroky

Další dokumentaci k Azure Active Directory PowerShellu najdete v rutinách Microsoft Entra.