Hallo Ralph und Stefanie,
genau genommen ist nicht die Authentifizierungsmethode "mnet" die Ursache sondern der Wert "mnethostid" in der Tabelle "mdl_user". Solange dieser Wert sich von der eigenen "mnethostid" unterscheidet, kann ein Nutzer nicht bearbeitet werden, da Moodle
davon ausgeht, dass dieser Nutzer von einem anderen System verwaltet wird. Leider lässt sich das nicht über die Moodle-Oberfläche ändern.
Über einen etwas radikalen Eingriff in die Datenbank kann aber genau diese Blockade aufgehoben werden. Dabei genügt es allerdings nicht, einfach nur den Wert für "mnethostid" zu ändern, da möglicherweise bereits ein Account mit demselben Nutzernamen aber der
korrekten "mnethostid" existiert. Die beiden Werte "username" und "mnethostid" sind in der Tabelle "user" als "unique" eingerichtet. Daher muss mit der "mnethostid" gleichzeitig auch der Nutzername "username" gewechselt werden, da es sonst einen SQL-Fehler gibt.
Die folgende SQL-Anweisung wäre ein Weg, die Mahara-Nutzer wieder "ins Boot" zu holen:
UPDATE `mdl_user`
SET mnethostid = <korrekte mnethostid>,
username = CONCAT('mnet_', username)
WHERE auth = 'mnet'
In dem Beispiel wird einfach die "mnethostid" korrigiert und vor dem Benutzernamen das Präfix "mnet_" gesetzt, so dass der Name sich vom lokalen Pendanten unterscheidet und es keinen Konflikt gibt. Wichtig: Ihr müsst eure korrekte mnethostid ermitteln. Diese könnte ihr einfach von einem gültigen Account aus der Datenbank ermitteln. In einer Standardinstallation ist der Wert i.d.R. "1". Aber man weiß ja nie .
Denkbar wäre auch ein Ändern des Vor- oder Nachnamens, damit dieser Nutzer leichter
in der Nutzerliste erkannt wird.
UPDATE `mdl_user`
SET mnethostid = <korrekte mnethostid>,
username = CONCAT('mnet_', username),
firstname = CONCAT('mnet_', firstname)
WHERE auth = 'mnet'
In der WHERE-Klausel könnte noch der aktuelle Username angegeben werden, wenn die Anweisung nur für einen bestimmten Nutzer verwendet werden soll.
Ich hoffe, das hilft euch etwas weiter.