Office 365 a hromadné přidání uživatelů pomocí PowerShellu
Vážení kolegové ucitelé,
také jiste jako každý rok stojíte pred otázkou, jak pridat nové uživatele do svých systému. I já jsem si tuto otázku kladl a vzhledem k tomu, že od letošního školního roku nasazujeme Office 365 na celou školu, tzn. 472 žáku a 60 kantoru, nechtel jsem se smírit s tím, že bych uživatele vytvárel rucne. Chtel jsem využít integrovaného nástroje hromadného vytvorení uživatelu v Office 365. Asi tohoto pruvodce všichni znáte.
Ale když jsem se do problematiky více ponoril, zjistil jsem, že tímto importem mravencí práce s jednotlivými uživateli nekoncí. Napríklad prirazování licencí, prirazování do skupin, nastavování hesel a další drobnosti. Rozhodl jsem se proto, že se porozhlédnu po nejakém jiném ucelenejším rešení. Ale jediné, na co jsem narazil, byl PowerShell a jeho využití v Azure.
Podotýkám, že dosud jsem nemel žádnou zkušenost s tímto nástrojem. Presto jsem si rekl “jdu do toho“. A zacal jsem hledat a hledat a hledat… a nacházet a nacházet a nacházet. Až se mi do ruky dostala prezentace Jardy Šindlera z Microsoftu, kterou predstavil na Letní škole moderních ucitelu v roce 2014. Vzhledem k tomu, že Jardu znám a vím, že je to také puvodne ucitel, rekl jsem si - to je ta cesta J a také cástecne byla. Zacal jsem malými krucky pronikat do taju PowerShellu.
- krok instalace nutných komponent. Já mám Win10 Edu 64-bit, musel jsem proto doinstalovat následující komponenty :
- Microsoft Online Services Sign-In Assistant for IT Professionals RTW verze 7.250.4556.0 https://www.microsoft.com/en-us/download/details.aspx?id=41950
- Windows Azure AD Module for Windows PowerShell:
(32-bit) https://go.microsoft.com/fwlink/p/?linkid=236298
(64-bit) https://go.microsoft.com/fwlink/p/?linkid=236297
- spuštení PowerShellu „nutné spouštet s právy administrátora“
- krok prihlášení k Office 365 školy - použijte následující príkazy
- Import-Module MSOnline
- Connect-MsolService
Po zadání príkazu se objeví následující okno. Zde se prihlásíte stejným zpusobem jako do svého Office 365, kde máte oprávnení správce.
A máte pripojený Office 365 pomocí PowerShellu. A nyní následuje další série príkazu, jak situaci zvládnout.
Duležitý príkaz je - jaké dostupné licence vubec ve škole máte:
Get-MsolAccountSku
Výsledek napríklad:
Toto je duležité, jelikož názvy licencí budeme potrebovat pri prirazování licencí jednotlivým skupinám uživatelu.
Dále na doporucení používám pro studenty ješte subdoménu, v mém prípade student.sszpkt.cz, a ješte dávám studenty do oddelení student (napr. jako ve firmách - marketingové, úcetní atd.)
A už se blížíme k samotnému príkazu pro pridání J Upozornení „ príkazy se musí zadávat na jeden rádek“
Import-Csv -Path c:\ps\usero365all.csv| ForEach-Object {New-MsolUser -Department $_.Department -FirstName $_.FirstName -DisplayName $_.DisplayName -LastName $_.LastName -Password $_.Password -UserPrincipalName $_.UserPrincipalName -LicenseAssignment $_.LicenseAssignment -UsageLocation $_.UsageLocation}| Export-Csv -Path c:\ps\exportall.csv
A to je on J seznam studentu a veškeré parametry uživatele nacítám ze souboru usero365all.csv, který jsem si cástecne vygeneroval z Bakaláru a hodne musel upravit, aby odpovídal možnosti importu. Ale nebojte se, manuál pokracuje i v této cásti.
Jak vytvorit soubor usero365all.csv .
V Bakalárích ci jiném evidencním systému vytvoríte sestavu, kde Vám stací jméno a príjmení žáku, prípadne rocník nebo trída. Já jsem udelal jméno a príjmení.
Cílem je tento formát:
Jak vidíte, je potreba v excelu použít ruzné možnosti a funkce, abyste dosáhli tíženého výsledku. Pripravené soubory vcetne všech funkcí jsou soucástí tohoto clánku a budou ke stažení J.
Použité funkce: napríklad =CONCATENATE(diakritika(A3);diakritika(ZLEVA(B3));D3) z toho funkce „diakritika“ je vytvorená speciálne pro zrušení diakritiky v excelovském souboru.
Pozor, nelekejte se !!!! Funkce už je naprogramovaná v dodaném vzorovém souboru
Funkce diakritika:
Otevrete si Microsoft Excel – nabídka Vývojár – Visual Basic. Otevre se program Microsoft Visual Basic, zde dejte pravé tlacítko myši na ThisWorkbook (je to vlevo) – Insert – Module. Otevre se Sešit1, do kterého prekopírujte tento skript:
Function diakritika(source As Variant) As String
Const cz As String = "áÁcCdDéÉeEíÍnNóÓrRšŠtTúÚuUýÝžŽ“
Const en As String = "aAcCdDeEeEiInNoOrRsStTuUuUyYzZ“
Dim TmpS As String
Dim OutS As String
Dim I As Integer
OutS = ""
If IsNull(source) Or source = "" Then
diakritika = ""
Else
For I = 1 To Len(source)
TmpS = Mid(source, I, 1)
If InStr(1, cz, TmpS, vbBinaryCompare) > 0 Then TmpS = Mid(en, InStr(1, cz, TmpS, vbBinaryCompare), 1)
OutS = OutS & TmpS
Next I
diakritika = OutS
End If
End Function
Poté zvolte nabídku Debug – Compile VBAProject.
Když pridáte své žáky do vzorové tabulky SEZNAM2015_vzorMS.xls a rozkopírujete vzorec, bude vše funkcní i u Vás. Když máte hotovo, uložíte jako CSV soubor (usero365all.csv)
Ale pozor, ješte nekoncíme J
Tento soubor má položky oddelené stredníkem a my potrebujeme cárkou, proto prichází na radu Poznámkový blok a funkce nahradit CTRL+H
A ješte než uložíme, je potreba zmenit kódování na UTF-8
A to vše máme uložené v mém prípade na disku C: ve složce PS.
A ted již v klidu mužeme prejít na príkaz
Import-Csv -Path c:\ps\usero365all.csv| ForEach-Object {New-MsolUser -Department $_.Department -FirstName $_.FirstName -DisplayName $_.DisplayName -LastName $_.LastName -Password $_.Password -UserPrincipalName $_.UserPrincipalName -LicenseAssignment $_.LicenseAssignment -UsageLocation $_.UsageLocation}| Export-Csv -Path c:\ps\exportall.csv
Tímto dostanete uživatele do Office 365, ale možná nekterí z Vás by rádi pridali uživatelum i další typ licence. Na to jsem použil následující príkaz
Get-MsolUser -Department "student" | Set-MsolUserLicense -AddLicenses "sszpkt:STANDARDWOFFPACK_STUDENT"
Tímto jsem pridal 472 studentu a všichni mají pridanou licence Office ProPlus a predplatné plán E1.
Verím, že tento podrobný popis Vám pomuže s nelehkým úkolem, jak pridat velkém množství uživatelu.
Pokud byste meli zájem i o prípadné pokracování podobných návodu, neváhejte me kontaktovat na email rejthar@sszpkt.cz
Vzorové soubory ke stažení najdete na adrese:
https://www.maleskoly.info/wordpress/wp-content/uploads/2015/09/usero365.zip
Preji mnoho štastných uživatelu Karel Rejthar
Comments
- Anonymous
September 17, 2015
Vážení kolegové učitelé , ředitelé a pracovníci ve školství - Anonymous
September 20, 2015
Vážení kolegové učitelé,
dnešní článek navazuje na - Anonymous
November 19, 2015
Hezké, článek mnohým určitě pomůže. Možná bych ještě navíc ukázal PowerShell ISE a jeho vymoženosti při skriptování v powershellu. Ve VB skriptu na diakritiku do excelu bych přidal ü,ľ,öäë pro cizojazyčná jména. - Anonymous
October 15, 2016
Dobrý den, děkuji za užitečný článek a prosím o pomoc. nepodařilo se mi stáhnout soubory z Vašeho webu, můžete mi nějak pomoci?Děkuji.- Anonymous
October 21, 2016
Dobrý den, testoval jsem odkaz a vše se stahlo. http://www.maleskoly.info/wordpress/wp-content/uploads/2015/09/usero365.zip pridavam link ještě jednou.
- Anonymous