Accounts

Keycloak ist ein Open-Source Identitätsmanagement, welches die Accounts für Moodle (und auch weitere Plattformen) orchestriert. So lassen sich einfacher sichere Zugänge zu multiplen Applikationen sicherstellen. In diesem Fall gehen wir auf die Verwaltung der Accounts von Lehrenden und Lernenden für Moodle ein. Hier weichen viele Prozesse vom Standardmoodle ab. Im Folgenden wird detailliert auf die Schritte zur Verwaltung der Moodle Accounts durch den Schulbereichsadmin (SBA) eingegangen.

Der CSV Import über Keycloak ist zu benutzen, um:

  • neue Accounts für Moodle anzulegen und in Klassen (globale Gruppen) und Kurse hinzuzufügen. Sowohl die Klassen als auch die Kurse können bereits bestehen oder werden durch den Import erstellt.
  • Lernende, deren Accounts bereits durch einen CSV-Import angelegt wurden, zu bestehenden oder neuen Klassen / globalen Gruppen hinzufügen
  • Passwörter / Kennwörter von einzelnen Accounts oder ganzen Klassen zu ändern

Konkret wird ein SBA über den Browser in Moodle einsteigen und sich einloggen. Die Accountverwaltung an sich passiert über einen Link aus Moodle direkt in Keycloak. Parallel wird ein Tabellenkalkulationsprogramm (LibreOffice Calc oder auch Microsoft Excel) benötigt, um eine CSV-Datei mit den Accountdaten zu erstellen.

Im Folgenden wird auf den Standardfall für den CSV-Import eingegangen: Das Neuanlegen von Moodle Accounts für Schüler-/, Lehrer-/, Teilnehmer-/ und Trainer:innen.

Im Nachgang werden dann Spezialfälle behandelt, wie z.B. die Passwortzurücksetzung.

Übersicht - Inhalte auf dieser Seite

CSV-Import zum Accounts anlegen und oder einschreiben

Der Absprung zu Keycloak: Schule “Ihre Schule” verwalten

Nachdem der Moodle Login durchgeführt wurde, findet sich auf der linken Seite ganz unten der Eintrag “Schule “Ihre Schule” verwalten” (1). Mit Klick auf diesen, öffnet sich eine Seite ähnlich zum folgenden Screenshot. Hier findet sich der Absprung zu Keycloak (4), wo die Accountverwaltung per CSV-Upload stattfindet. Ferner ist hier eine Vorlage für die benötigte CSV-Datei (3) zu finden. Auch werden auf dieser Seite etwaige aktive Uploads (2) angezeigt. Mehr dazu später.

Schule verwalten

Die nächsten Schritte hin zum CSV-Import wären:

  • die “Vorlage: CSV-Datei” laden oder unten zu findende Tabelle kopieren
  • Tabelle in Tabellenkalkulationsprogramm befüllen (siehe unten)
  • CSV richtig speichern, bzw. Einstellung für Trennzeichen und Codierung merken
  • Absprung zu Keycloak öffnen: (3) im oberen Screenshot

Die CSV-Datei und ihr Format

Im Folgenden wird auf die CSV-Datei, ihr Format und die richtige Befüllung eingegangen. Generell gilt folgendes Format für die CSV.

	login,nachname,vorname,email,passwort,lehrer,klasse,kurs vorlage
  • login - Anmeldename, dieser ist fix und kann also nur bei der Neuanlage bestimmt werden. login dient als UID, unique identifier, das heißt, er muss einzigartig sein, falls Personen ähnliche Namen haben sollten. Login kann im Nachhinein weder vom User selber, noch vom SBA geändert werden und sollte vom SBA für zukünftige Imports dokumentiert werden.
  • nachname, vorname - wird aktuell beim CSV-Import überschrieben
  • email - kann vom User geändert werden. Soll nicht mit Emails gearbeitet werden, kann man auch XY@test.invalid oder ähnliche Platzhalter eintragen. Wichtig wäre hierbei, dass sich der Aufwand als SBA erhöht, denn ohne hinterlegte E-Mail Adresse kann selbstständig kein Passwort mehr zurückgesetzt werden kann.
  • passwort - mit der Option “Existierende Passwörter überschreiben?” in Keycloak besteht die Möglichkeit, das Passwort des jeweiligen Schülers neu zu bestimmen
  • lehrer - “0” oder leer für Schüler, 1 für Lehrer
  • klasse - bestimmt die Klasse als globale Gruppe. Schüler:innen können aber auch mehreren globalen Gruppen angehören, z.B. Klasse + Jahrgangsstufe. Kann existieren oder wird durch den CSV Import angelegt. Aktuell kann nur eine klasse pro User und Import hinterlegt werden.
  • kurs - Kann existieren oder wird durch den CSV Import angelegt. Aktuell kann nur ein kurs pro User und Import hinterlegt werden.
  • vorlage - relevant, wenn der Kurs vor dem Import noch nicht existiert. Das Feld kann leer bleiben oder die Werte 1,2 oder 3 haben. Es gibt die Möglichkeit 3 verschiedene Kursvorlagen zu hinterlegen.
Info

Hinweis: Die Werte für lehrer, klasse, kurs und vorlage sind optional zu befüllen.

Beispiel für eine CSV Datei:

  • 3 Accounts werden angelegt, 2 Schüler/Teilnehmer und 1 Lehrer/Trainer:

      login,nachname,vorname,email,passwort,lehrer,klasse,kurs vorlage
      schueler1,Test,Eins,s1@test.invalid,passwort123+,0,klasse1a,kurs1,0
      schueler2,Test,Zwei,s2@test.invalid,passwort123+,0,klasse1a,kurs1,0
      lehrer,Test,Lehrer,l@test.invalid,passwort123+,1,,kurs1
    
Info

Folgende Tabelle kann so markiert, kopiert und in ein Tabellenkalkulationsprogramm eingefügt werden. Groß- und Kleinschreibung werden bei den Überschriften (login, nachname, etc.) nicht beachtet.

login nachname vorname email passwort lehrer klasse kurs vorlage
schueler1 Test Eins s1@test.invalid passwort123+ 0 klasse1a kurs1 0
schueler2 Test Zwei s2@test.invalid passwort123+ 0 klasse1a kurs1 0
lehrer Test Lehrer l@test.invalid passwort123+ 1 kurs1 0

Als Standardeinstellung ist in Keycloak als CSV Trenner “;” und als CSV Encoding “UFT-8” eingestellt. Entweder muss dies beim Speichern der CSV in LibreOffice Calc oder Microsoft Excel eingehalten werden, oder falls man mit anderen Einstellungen arbeiten möchte, muss dies in den Feldern “CSV Trenner” und “CSV Encoding” in Keycloak entsprechend angepasst werden.

Richtig hochladen

Nachdem die Liste für die anzulegenden Accounts nun angelegt und gespeichert wurde, kann sich wieder dem Absprung von Moodle zu Keycloak gewidmet werden. Wie im ersten Abschnitt beschrieben, wird nun über “Schule “Ihre Schule’ verwalten” (1) > “Zum CSV-Import” (2) der Absprung von Moodle zu Keycloak geöffnet: Schule verwalten

Relevant ist hier der Reiter “CSV Import” (1) in der Leiste links. Damit öffnet sich ein ähnlicher Screen wie folgender:

Keycloak Interface

  • Moodle Installation: nicht relevant (falls hier mehrere Auswahlmöglichkeiten vorkämen, bitte eine Mail an den Support)
  • Schule: “-”
  • CSV-Datei auswählen: (3)
  • CSV-Trenner: Standardwert ist “;” (Semikolon), falls eine CSV mit “,” (Komma) oder “tab” als Trennzeichen gespeichert wurde, hier bitte entsprechend anpassen
  • CSV Encoding: Standardwert ist “UTF-8”, falls eine CSV mit “windows-1252” als Encoding gespeichert wurde, hier bitte entsprechend anpassen
  • Existierende Passwörter überschreiben: Standardwert: “OFF”, falls Passwörter vergessen wurden, wäre dies relevant.

Nachdem diese Einstellungen überprüft und möglicherweise angepasst wurden, kann unter (3) nun die relevante CSV-Datei mit Klick auf den Button “Datei auswählen” ausgewählt werden.

Nach dem Auswählen wird mit dem Button “CSV Datei hochladen und prüfen” der Upload durchgeführt. Dieser ist aber noch nicht entgültig, sondern kann nächsten Schritt nochmal geprüft werden.

Überprüfen und bestätigen

Nachdem der Button “CSV-Datei hochladen und prüfen” (1) gedrückt wurde und keine Fehlermeldung erschienen ist, (Mehr zu Fehlermeldung beim CSV-Import), erscheint eine Reihe an Tabellen mit Infos über die anstehenden Aktionen:

Keycloak CSV-Import prüfen

Im Folgenden werden diese Tabellen am unter CSV Format erwähntem Beispiel erläutert:

3 Accounts werden angelegt, 2 Schüler/Teilnehmer und 1 Lehrer/Trainer (siehe oben)

Gruppiert werden die Aktionen je danach, ob sie Kurse, Klassen oder Benutzer betreffen. (2)

Zu prüfen gilt hier, sowohl für Kurse als auch für Klassen, ob der Kursname unter in der Tabelle unter “Name” richtig übernommen wurde Standardmäßig wird nach dem Import der Kurzname der Schule vor den Kursnamen gestellt, etwa so: “BSBF_kurs1”. Wichtig ist auch der Hinweis unter “Aktion” (3) darauf, dass “Neu anlegen” und nicht “Verwenden” eingetragen ist. In letzterem Fall besteht besagter Account bereits.

Für Kurse wird unter Lehrereinschreibungen der username/login des Lehrers angezeigt, welcher in der CSV eine “1” bei lehrer und “kurs1” unter kurs zugewiesen bekommen hat. Entsprechend ist das Feld für den “kurs2” leer, da dieser im Beispiel keinen Lehrer zugewiesen bekommen hatte.

Bei Klassen dagegen sind auf gleicher Position die Kurseinschreibungen der jeweiligen Klasse zu finden. In Moodle exisitert das Konzept von “globalen Gruppen”, welche im vereinfachten Kontext wie Klassen bzw. Gruppen gesehen werden können. Diese Logik macht besonders bzgl. der Teilnehmerverwaltung von Kursen Sinn. Hier im Beispiel werden also die User der Klasse 1a, also “schueler1” in Kurs1 eingetragen und entsprechend User der Klasse 1b (schueler2) in Kurs 2 eingeschrieben. (Mehr zu Einschreibungen)

Letztlich sind unter (6) die anzulegenden Useraccounts zu finden, hier lassen sich nochmal die Details und Zuweisungen überprüfen.

Stimmen soweit alle Details, kann mit dem Button “Auftrag übernehmen und durchführen” (7) der Upload und das Einspielen der CSV-Datei gestarten werden.

Weitere Fälle für den CSV-Import

Account bereits angelegt, was ist mit dem CSV-Import möglich?

wenn das Schülerprofil bereits in Keycloak und Moodle besteht, man es aber einer weiteren globalen Gruppe (z.B. Klasse + Jahrgangsstufe) hinzufügen will, müssen die Werte für login, nachname, vorname stimmen. email kann die originale Mail oder eine fiktive wie “X@test.invalid” sein. Unter klasse wird dann die weitere globale Gruppe bestimmt (kann bestehen oder wird durch in Import erstellt).

Kennwörter überschreiben / zurücksetzen

Um ein Passwort neu zu bestimmen, kann mit dem Aktivieren der Option “Existierende Passwörter überschreiben?” vor dem CSV Upload das bestehende Passwort durch das in der CSV überschrieben werden. Dafür müssen die Felder login, nachname, vorname und email zur Zuordnung passen, der Rest ist optional.