4 .11. 2020

Teams pro administrátory: Omezení tvorby týmů

Ve výchozím nastavení má každý uživatel možnost založi a spravovat svůj vlastní tým. To je ve většině případů naprosto v pořádku, ale mohou nastat situace, kdy toto chování chcete omezit.

V komerční sféře se s tímto požadavkem setkáváme spíše výjimečně, ale ze strany škol jde naopak o jeden z nejčastějších požadavků. Týmy vytvořené žáky se totiž tváří jako skupiny, znesnadňují orientaci v administraci a občas taky mají nevhodný (a nevtipný) název a obsah. Dá se pochopit že když se tak děje vlastně pod hlavičkou školy, není z toho škola moc nadšená.

Řešení je naštěstí poměrně snadné - i když zrovna toto patří k činnostem, které nenaklikáte. Budete potřebovat Powershell.

I když to nemusí být na první pohled zřejmé, tým je svým způsobem také skupina. A proto také pokud chceme omezit možnost tvorby týmů, musíme omezit právo na tvorbu skupin. Celý proces je popsán Microsoftem zde, náš článek se ho bude držet.

V první řadě potřebujete počítač s aktuální verzí Powershell (máte-li aktuální build desítek, mělo by být splněno) a nainstalovaný příslušný modul. V době tvorby článku je nutné použít jeho preview verzi. Spusťte powershell s administrátorskými právy a zadejte:

Install-module AzureADPreview

Potvrďte instalaci, nemusíte se (příliš) bát že se něco rozbije :-)

Založte skupinu - musí jít o security group, jinak to fungovat nebude, a přidejte do ní účty které mají mít právo tvořit týmy. Tvorbu skupin jsme ukazovali tady.

Následně použijte skript z výše zmíněných  stránek Microsoftu (pro jistotu se podívejte přímo tam, je možné že dojde k jeho aktualizaci):

$GroupName = ""
$AllowGroupCreation = "False"

Connect-AzureAD

$settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id
if(!$settingsObjectID)
{
$template = Get-AzureADDirectorySettingTemplate | Where-object {$_.displayname -eq "group.unified"}
$settingsCopy = $template.CreateDirectorySetting()
New-AzureADDirectorySetting -DirectorySetting $settingsCopy
$settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id
}

$settingsCopy = Get-AzureADDirectorySetting -Id $settingsObjectID
$settingsCopy["EnableGroupCreation"] = $AllowGroupCreation

if($GroupName)
{
$settingsCopy["GroupCreationAllowedGroupId"] = (Get-AzureADGroup -SearchString $GroupName).objectid
}
else {
$settingsCopy["GroupCreationAllowedGroupId"] = $GroupName
}
Set-AzureADDirectorySetting -Id $settingsObjectID -DirectorySetting $settingsCopy

(Get-AzureADDirectorySetting -Id $settingsObjectID).Values

Nezapomeňte správně nastavit název skupiny, která mí mít práva na zakládání týmů.

Ideální způsob je použít Powershell ISE, editor Powershellu s možností uložit skript do souboru.

Jakmile skript dojde k řádku Connect-AzureAD, budete vyzváni k přihlášení administrátorským účtem Office 365:

No a tím je hotovo. Od této chvíle pouze členové vybrané skupiny mohou zakládat týmy (a jiné skupiny).

Nebojte se powershellu, vypadá sice složitě ale opravdu to nic není. Ale pokud máte zájem aby to za vás udělal někdo jiný, můžete nás kontaktovat :-) Správu Office 365 umíme dobře.

 

4