Passwort-Reset in WordPress deaktivieren

Immer wieder findet man vermeindliche Kleinigkeiten, mit denen man sich noch besser gegen Angreifer schützen kann. Einer dieser blind Spots war bei mir bisher die Passwort-zurücksetzen-Funktion meiner Webseiten. WordPress liefert hier leider keine einfache Konfigurationseinstellung, um sie zu deaktivieren.

Da ich in meinem Fall neben dem WordPress-Nutzer auch gleichzeitig der Serveradmin bin und mir direkt auf der Kommandozeile ein neues Passwort verpassen kann, benötige ich den Weg über eine Passwort-Reset-E-Mail gar nicht und kann diese Funktion auch genauso gut abschalten. So besteht nicht mehr die Gefahr, dass meine Webseiten durch gehijackte E-Mail-Accounts kompromittiert werden können.

Hierfür notwendig ist ein winziges Plugin, das man sich schnell selbst zusammenschreiben kann. Der Inhalt kann wie folgt aussehen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
  /*
    Plugin Name: KillPWReset
    Description: Disables the Password Reset in WordPress.
    Version: 0.1c1
  */


function killpwreset_disable($userid) {
  return false;
}

function killpwreset_errortext($errortext) {
  return "Login failed.";
}

add_filter("allow_password_reset", "killpwreset_disable");
add_filter("login_error",          "killpwreset_errortext");
?>

Der Code sorgt dafür, dass für sämtliche Nutzer der Passwort-Reset deaktiviert wird (man kann es auch per User-ID steuern (z.B. nur Gäste, aber keine Admins). Weiterhin sorgt er dafür, dass eine generische Fehlermeldung erzeugt wird, wenn ein Login fehlschlägt. Typischerweise ist in der Fehlermeldung die Passwort-Reset-Funktion mit verlinkt. So wird der Fehlertext samt Link einfach überschrieben.

Deaktivierte Grüße, Kenny

1 Kommentar » Schreibe einen Kommentar

  1. Danke für den Tipp - hätte nicht gedacht, dass das so leicht geht. Das Plugin ist wirklich minimalistisch und erfüllt seinen Zweck perfekt.

    Kann es nur empfehlen, falls jemand wie ich diese Seite über Google findet.

Schreibe einen Kommentar

Um Ihnen beim weiteren Kommentieren auf dieser Webseite die erneute Eingabe Ihrer Daten zu ersparen, wird beim Absenden Ihres Kommentars ein Cookie an Ihren Browser gesendet und von diesem gespeichert. Mit dem Absenden eines Kommentars auf dieser Webseite stimmen Sie der Speicherung und Übertragung dieses Cookies explizit zu.

Pflichtfelder sind mit * markiert.