Handbuch:Passwörter zurücksetzen

From mediawiki.org
This page is a translated version of the page Manual:Resetting passwords and the translation is 76% complete.
Outdated translations are marked like this.

Es gibt viele Situationen, in denen ein Benutzer sein Passwort zurücksetzen muss. Typischerweise vergessen Benutzer ihr Passwort oder bemerken, dass durch eine Sicherheitslücke ihr Passwort möglicherweise bekannt geworden ist. In den meisten Fällen können sie ihr Passwort selber zurücksetzen, in dem sie "Email new password" nutzen.

Wenn die Nutzer ihren Accountnamen vergessen haben oder auf ihre Email nicht mehr zugreifen können, können zusätzliche Maßnahmen durch einen Administrator oder Systemadministrator notwendig sein.

Methoden

Spezial:Anmelden nutzen

Sofern der Benutzername für des Kontos bekannt ist, kann man das "Neues Passwort senden"-Werkzeug auf der Seite Spezial:Anmelden nutzen. Um dieses Feature zu benutzen, musst du die Spezial:Anmelden im betreffenden Wiki besuchen, deinen Benutzernamen in das Feld eintragen, und den "Neues Passwort per E-Mail zusenden" Knopf drücken. Dann wird ein zufälliges, temporäres Passwort mit Anleitung per Mail an die E-Mail Adresse des Accountes gesendet. This will happen even if the email address has not been confirmed.

Den Benutzername der betroffen E-Mail Adresse finden

Wenn Du die E-Mail-Adresse eines Benutzer kennst, aber nicht seinen Benutzernamen, kannst Du die user -Tabelle der MediaWiki Datenbank abfragen, um den zugehörigen Benutzernamen zu ermitteln. Zum Beispiel, um den Benutzernamen für user@example.com zu ermitteln, führe die folgende Abfrage aus:

SELECT user_name FROM user WHERE user_email = 'user@example.com';

Das changePassword.php Skript benutzen

Das changePassword.php Wartungs-Skript erlaubt es Systemadministratoren, das Passwort für einen Benutzer zu verändern. Für vollständige Anweisungen, siehe changePassword.php . Wenn Du bereits mit Wartungsskripten vertraut sind, führe den folgenden Befehl aus dem Unterverzeichnis maintenance aus:

# set the password for username 'example' to 'newpassword'
php run.php changePassword.php --user=example --password=newpassword

Achtung: Systemadministratoren sollten nicht das unverschlüsselte Passwort der Benutzer sehen. Denn es könnte sein, das die Benutzer das Passwort auch auf anderen Seiten verwenden. Falls einer ihrer Benutzerkonten, welcher dasselbe Passwort verwendet kompromittiert wird, könnte der Administrator verdächtigt werden. Es ist besser, "Neues Passwort per E-Mail zusenden" zu nutzen, um den Benutzer zu zwingen, das Passwort für sein eigenes Konto zurückzusetzen oder ein temporäres Passwort festzulegen, das der Benutzer direkt danach ändert.


Spezial:PasswortZurücksetzen benutzen

Special:PasswordReset erlaubt Konten mit der 'editmyprivateinfo'-Berechtigung, Kontopasswörter für die lokale Installation von MediaWiki zurückzusetzen.

Anleitung:

  • Geben Sie den Benutzernamen, den Sie zurücksetzen möchten, in das dafür vorgesehene Feld ein und klicken Sie auf "Passwort zurücksetzen".
  • Ein automatisch generiertes Passwort wird dem Benutzer per E-Mail zugesandt.

Um den Benutzernamen automatisch in Links einzufügen, verwenden Sie Special:PasswordReset?wpUsername=Foo.

Differences between Special:PasswordReset and Special:ChangePassword

MediaWiki differentiates between "resetting" and "changing" a password. In password reset request (via Special:PasswordReset or from the login page), you will be asked to provide either an email and/or username (this is configurable) and then an email is automatically sent to you with a generated password. No login is required to access this page, but might be restricted with internal permission checks.

In password change request (via Special:ChangePassword), you'll be able to directly change the password on the spot (give the old one, and choose new one), but login is required to access the page. So if you cannot access Special:ChangePassword, use Special:PasswordReset to first get a temporary password to log in. But if you can access the former page, use it directly to change the password, this eliminates the need for the email stage. Special:PasswordReset can be disabled with Handbuch:$wgPasswordResetRoutes setting, if that's the case, and you cannot access Special:ChangePassword, then you need to ask your system administrator for help.


Nutzen der resetpassword-API

Die resetpassword -API bietet die gleiche Funktionalität wie Special:PasswordReset.

Direkte Änderung in der Datenbank

Um ein Passwort zurückzusetzen, können Sie den Wert des Feldes user_password innerhalb der Tabelle user in Ihrer Datenbank ändern. Im Allgemeinen ist es jedoch wesentlich einfacher und sicherer, "Neues Passwort per E-Mail senden" zu nutzen oder das Skript changePassword.php zu nutzen. Sie sollten die direkte DB-Änderung nur als letzten Ausweg verwenden, da es sehr einfach ist, versehentlich Ihr Wiki durcheinander zu bringen. Sichern Sie Ihre Datenbank immer, bevor Sie eine manuelle Änderung vornehmen. Das Folgende funktioniert nur bei Verwendung von MediaWikis Standard-Authentifizierungs-Provider. Wenn Sie eine Erweiterung verwenden, die den Authentifizierungsprozess modifiziert (wie LDAPAuth), funktioniert das Folgende möglicherweise nicht. You should only use direct DB modification as a last resort, as its very easy to accidentally mess up your wiki. Always backup your database before doing any manual modification. The following only works when using MediaWiki's default authentication provider. If you are using an extension that modifies the authentication process (Like LDAPAuth), the following may not work.

Das Format, das Sie in der Benutzertabelle sehen, hängt von $wgPasswordDefault in LocalSettings.php ab. Wenn Sie jedoch ein anderes Format verwenden, wird es bei der nächsten Anmeldung des Benutzers automatisch in das richtige Format geändert. Daher zeigen wir in diesem Leitfaden, wie Sie das Format "B" manuell einstellen können. Dieses Format lässt sich sehr einfach über eine SQL-Abfrage einstellen. Es ist nicht das Standardformat, da es schwächer als pbkdf2 ist. Das ist jedoch in Ordnung, da das Feld user_password bei der nächsten Anmeldung des Benutzers auf das richtige Format aktualisiert wird. However if you use a different format, it will automatically be changed to the correct format the next time the user logs in. Thus for this guide, we show how to manually set the "B" format. This format is very easy to set from an SQL query. It is not the default format as it is weaker than pbkdf2, however that's ok as the user_password field will be upgraded to the correct format the next time the user logs in.

MySQL "salted" (1234 ist das "salt". Sie können es durch eine beliebige Zahl ersetzen, solange beide Stellen, an denen die Zahl verwendet wird, gleich sind.)
UPDATE `user` SET user_password = CONCAT(':B:1234:', MD5(CONCAT('1234-', MD5('somepass')))) WHERE user_name = 'someuser';
PostgreSQL "salted"
update mwuser SET user_password = text(':B:1234:') || MD5(text('1234-') || MD5('somepass')) WHERE user_name = 'someuser';

Anmerkungen

Das Neustarten von Apache und das leeren des Browser Caches könnte auch helfen.

Es ist möglich, ein bekanntes Passwort von einem Benutzerkonto zu einem anderen zu kopieren:

SELECT user_id, user_name, user_password FROM user;
+---------+-----------+----------------------------------------------+
| user_id | user_name | user_password                                |
+---------+-----------+----------------------------------------------+
|       1 | User1     | :B:1d8f41af:1ba8866d9c43d30b7bc037db03a067de |
|       2 | User2     | :B:ee53710f:4291b056175513a5602d48eaeb79705c |
+---------+-----------+----------------------------------------------+

UPDATE user SET user_password = ':B:ee53710f:4291b056175513a5602d48eaeb79705c' WHERE user_id = 1;