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