Schüler-csv-upload mit unbekannten Email-Adressen

Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -
Number of replies: 16

Hallo,

das Thema wurde vor einiger Zeit schon einmal hier diskutiert, leider funktioniert der workaround nun bei mir nicht mehr (Moodle 2.7.4+ (Build: 20150115).

Ich habe nach dem Umzug unserer Moodle-Instanz vom einem schuleigenen Server zu einem vom Land gehosteten System die Benutzerverwaltung von LDAP auf CSV-Upload umgestellen müssen, weil definitiv nur "Manuelle Konten" zur Authentifizierung unterstützt werden. Ein Problem ergibt sich dabei dadurch, dass die Upload-Datei aus den Daten der Schulanmeldung gewonnen wird. Diese enthält aber keine Email-Adressen und selbst wenn, wären diese weder vollständig noch bei Jugendlichen erfahrungsgemäß alle funktionsfähig. Deshalb sollen die Email-Adressen beim ersten Login der Schüler abgefragt werden und über einen Klick auf einen Bestätigungslink, der an diese Adresse geschickt wird, auf Funktionsfähigkeit überprüft werden. Ohne funktionierende Email soll also kein Login möglich sein. Das funktionierte per LDAP und mit einem Workaround im Herbst  auch noch per CSV-Upload. 

Schüler konnten dazu mit vorgegebenen Benutzernamen (Schema vorname.nachname.klasse z.B. karl.meier.3ita14), aber unbekannter Emailadresse, erst mit einer Fake-Adresse unserer Domain per CSV-Upload angemeldet werden. Im zweiten Schritt wurde diese Adresse per CSV-Upload wieder entfernt und dann bei der ersten Anmeldung per Dialog vom Schüler abgefragt und verifiziert. Jetzt funktioniert das nicht mehr. Moodle verweigert das Entfernen der Email mit einem "unbekannten Fehler". Ich kann mir nicht vorstellen für über 1000 Schüler mit hoher Fluktuation Email-Adressen zu pflegen. Das Ändern von Fake-Adressen kann man m.E. nicht erzwingen. Fake-Adressen würden vor allen Dingen dazu führen, dass bei vergessenen Passwörtern kein neues zugeschickt werden könnte - das wäre für mich völlig unakzeptabel.

Ein Datenbankzugriff ist mir in der neuen Umgebung nicht mehr möglich und erscheint mir auch dem Problem unangemessen - schließlich handelt es sich ja schon in der vorher funktionierenden Form eher um einen Fehler als um eine Eigenschaft.

Kann mir jemand raten?

mit freundlichem Gruß

Uwe Krüger

Average of ratings: -
In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Andreas Schenkel -

Mit Datenbankzugriff kann man das eMail-Feld leeren. Dann müssen die User nach dem Anmelden an Moodle erst eine eMail-Adresse im Profil eintragen und bestätigen .... hilft aber hier nicht weiter, da ja kein DB-Zugriff möglich ist.  sad

Beim CVS-Upload allen Usern eine spezielle einheitliche eindeutige eMail-Adresse "hinterlegteEMail-Adresse"

Dann in der DB:

UPDATE mdl_user SET email=''   WHERE email='hinterlegteEMail-Adresse';



Eigentlich müsste der CVS-Upload auch das Anlegen der User mit leerem eMail-Feld ermöglichen. Leider ist das nicht so implementiert.

Average of ratings: Nützlich (1)
In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Steffen Bachmann -
Picture of Besonders aktive Moodler

"Ich kann mir nicht vorstellen für über 1000 Schüler mit hoher Fluktuation Email-Adressen zu pflegen."

Das sollen die lieben Schüler mal selbst machen, das gehört m.E. auch zum Umgang mit diversen webbasierten Systemen. Eine Frage für die Medienerziehung, nicht für den Admin, denke ich.

Kurz gesagt: Wer sich bei Facebook o.ä anmelden und dort eine gültige E-Mail-Adresse hinterlegen kann, kann das bei Moodle auch!


"Das Ändern von Fake-Adressen kann man m.E. nicht erzwingen."

Nein, aber den Schülern die Konsequenzen klar machen geht schon.


"Fake-Adressen würden vor allen Dingen dazu führen, dass bei vergessenen Passwörtern kein neues zugeschickt werden könnte..."

Und das wäre genau die passende Argumentation dazu.


Grüße

Steffen

In reply to Steffen Bachmann

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Also es geht doch - es geht noch lächelnd meine Aufzeichnungen vom Herbst waren wohl nur ungenau. Wenn ihr folgendermaßen vorgeht klappt es:

  1. Schueler mit Fake-Adresse - unbedingt aus der eigenen Domain per CSV-Upload anlegen (siehe https://moodle.org/mod/forum/discuss.php?d=228731),
  2. Danach die gleiche CSV-Datei ohne Email-Adressen ein zweites Mal hochladen und dabei:
  • "Uploadtyp" auf "Nur vorhandene aktualisieren",
  • "Vorhandene Nutzerdetails" auf "Mit Dateiwerten überschreiben",
  • optional: "Kennwortänderung fordern" auf "Alle",
  • "Doppelte E-Mail-Adressen verhindern" auf "Nein",

3. Schüler melden sich mit dem einheitlichen Benutzernamen des Schemas eurer Schule an (z.B. vorname.nachname.klasse) und sind dabei gezwungen:

  • ihr persönliches Passwort nach eurer Richtlinie zu setzen (z.B. mind.  7 Zeichen, groß, klein, Zahl, Sonderzeichen),
  • eine Email-Adresse anzugeben, die dann auf Funktionsfähigkeit überprüft wird (Bestätigungslink in einer Email an diese Adresse anklicken),
  • die Datenschutzerklärung abzunicken.

Sonst ist kein Zugriff möglich. Bleibt nur der Wunsch offen, das Gleiche schon beim ersten Upload zu erreichen und die Benutzer durch den Admin editieren zu können.

Ich bin dabei ein Perl-Skript zu schreiben, welches aus einer jeweils aktuellen Schülerliste und der vorhergehenden die neuanzulegenden und zu löschenden Schüler ermittelt. Daraus werden dann entsprechende CSV-Upload-Dateien für Moodle, Owncloud und Windows automatisch erzeugt. Bis auf die beschriebene Hürde funktioniert es schon. Bei Bedarf meldet euch.


In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Thorsten Rochelmeyer -

Ich erlaube mir einmal, mich aus aktuellem Interesse mit zwei Fragen an diesen Thread dran zu hängen. Gibt es eine Möglichkeit bei der manuellen Erstellung von Nutzeraccounts - und nach Möglichkeit ohne Eingriffe in die Datenbank - Accounts ohne e-Mail Adresse anzulegen und diese nachträglich (beim ersten Login) durch den Nutzer befüllen zu lassen?

Ich habe hier gerade eine Reihe von zukünftigen Nutzern von denen ich die e-Mail Adresse teilweise noch nicht kenne, die ich aber trotzdem gerne schon mal anlegen würde. Wenn ich anfange die Datenbank zu bearbeiten, ist das Ergebnis wahrscheinlich genau so verheerend wie ein Kopfsprung in ein schwarzes Loch oder der Kontakt mit Antimaterie ... niemand kann das wollen!

Zweite Frage in die gleiche Richtung: In der Grundeinstellung können die Nutzer ihre e-Mail Adresse nicht selbst ändern. Ich habe nicht nur keine Lust, nicht mehr aktuellen Adressen hinterher zu rennen, sondern ich möchte auch meine Nutzer in die Verantwortung nehmen, erreichbar zu sein. Daher wäre es gut, wenn die ihre Mail Adresse ändern könnten. Dass die Teilnehmer ihren Namen nicht ändern können ist gut und wichtig, aber Handynummern und e-Mail Adressen wechseln die häufiger als manche Menschen ihre Unterwäsche. Da kann man nicht hinterher kommen. 

Danke

Thorsten


In reply to Thorsten Rochelmeyer

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Hallo Thorsten,

nein  genau, das geht nur mit dem beschriebenen Workaround per CSV-Upload bzw. per LDAP , ist also eher ein Bug. Normalerweise müsste dieses Verhalten ja das Standardverhalten sein. Der alte Grundsatz, kein Moodleuser kann ohne Emailadresse angelegt werden, ist der eigentliche Fehler. Besser müsste es heißen, kein Moodleuser kann sich ohne funktionierende Email-Adresse an Moodle anmelden. Dann könnte man, bei welcher Einschreibeart auch immer, das Emailfeld frei lassen und die Abfrage startet wie beschrieben. Fake-Adressen als Lösung sind zwar einfach, aber wie Ralf Hilgenstock ja erläutert hat, auch ziemlich gefährlich und bei vergessenem Passwort unwirksam.

Deine zweite Frage verstehe ich nicht ganz, bei mir können Benutzer natürlich ihre Email ändern ohne dass der Benutzername änderbar wäre. Ich gehe davon aus, dass das standardmäßig so ist und das von dir beobachtete  abweichende Verhalten irgendwie herbeikonfiguriert wurde.

Average of ratings: Nützlich (1)
In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Andreas Schenkel -

Plugins ... Authentifizierung ... Manuelle Konten .... dort kann man einstellen, welche Felder editierbar sind und welche nicht.


Average of ratings: Nützlich (1)
In reply to Andreas Schenkel

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Thorsten Rochelmeyer -

Danke Andreas, jetzt wo Du es sagst, macht es Klick. Ich wäre aber ohne Deinen Tip wahrscheinlich in hundert Jahren nicht drauf gekommen bei den Plugins zu suchen.

In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Thorsten Rochelmeyer -

Danke Uwe, ich hatte so etwas befürchtet. Hört sich nach etwas an, was man mal in einen Feature Request packen könnte.

Die zweite Frage hat Andreas ja schon klären können. Das werde ich wohl tatsächlich selbst verfrickelt haben.

In reply to Thorsten Rochelmeyer

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Schreibst du den? Da das ja dann dauern wird, kannst du ja mal einen Upload versuchen - ist sicher auf Dauer empfehlenswerter als das manuell zu tun.

In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Thorsten Rochelmeyer -

Ich kann den schon schreiben, aber nicht kurzfristig. Frühestens nächste Woche ... vielleicht.

In reply to Thorsten Rochelmeyer

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Wenn du es nicht schaffst, sag bescheid, dann radebreche ich selber - aber nur wenn es wirklich nicht anders geht.

Das Skript ist nun fertig (Anhang). Es holt aus einem Import-Verzeichnis die neueste und die vorhergehende CSV-Schülerliste (Export aus der Datenbank der Schule), vergleicht sie und schreibt dann ins Export-Verzeichnis passenden CSV-Dateien für zu löschende und neu anzulegende Benutzer. Der hier beschriebene Workaround ist schon eingearbeitet. Ein einmaliger Upload der Datei reicht dann. Ziel ist es, dass alle Schüler sich zumindest prinzipiell an Moodle anmelden können ohne vorher Listen auszugeben etc.

In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Thorsten Rochelmeyer -

Ich bin tätig geworden: https://tracker.moodle.org/browse/MDL-49106

Es wäre natürlich schön, wenn ein paar von Euch diesen Vorschlag unterstützen würden, denn sonst wird der wahrscheinlich in der Prioritätenliste nicht all zu weit oben landen.

Ich werte es einfach mal als ein positives Zeichen, dass sich hier gerade nach einer ganzen Reihe trüber Tage wieder mal die Sonne zeigt wink

Viele Grüße

In reply to Thorsten Rochelmeyer

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Hallo Thorsten, das ist ja ein gelungener Text geworden wink Jetzt fehlt nur noch die breite Unterstützung der Moodle-Admins wink  Please vote!

In reply to Thorsten Rochelmeyer

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Leider funktioniert der der Workaround mit Fake-Emails für meine Installation Moodle 3.1.1+ (Build: 20160817) nicht mehr, weil beim User-Upload die Option "Doppelte Emailadressen verhindern" fehlt. Nun gibt es also keinen bekannten Weg mehr.

Im Tracker hat sich auch nichts mehr getan.

In reply to Uwe Krüger

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Andreas Schenkel -

nimm doch für jeden user eine andere email-adresse mit einer anderen ziffer im namen und dann löschst du hinterher alle emails und die user müssen beim Login eine eMail-Adresse im Profil eintragen

In reply to Andreas Schenkel

Re: Schüler-csv-upload mit unbekannten Email-Adressen

by Uwe Krüger -

Hallo Andreas,

um Email-Adressen löschen zu können, müsste ich an die Datenbank. Kann ich aber nicht sad

Aber es gibt doch noch eine Rettung:

Der Eintrag "Doppelte Email-Adresse verhindern" kann wieder hergestellt werden mit: Site administration ► Plugins ► Authentication ► Manage authentication. You can tick "Allow accounts with same email" smile