diff --git a/include/class.auth.php b/include/class.auth.php
index 74a4664b9165686b7705bc9bf4de73978fb93fe3..ccf352b9d7996b499190d64cf0328abc80347e35 100644
--- a/include/class.auth.php
+++ b/include/class.auth.php
@@ -322,6 +322,9 @@ abstract class StaffAuthenticationBackend  extends AuthenticationBackend {
 
         Signal::send('auth.login.succeeded', $staff);
 
+        if ($bk->supportsAuthentication())
+            $staff->cancelResetTokens();
+
         return true;
     }
 
@@ -431,6 +434,9 @@ abstract class UserAuthenticationBackend  extends AuthenticationBackend {
                 $user->getUserName(), $user->getId(), $_SERVER['REMOTE_ADDR']);
         $ost->logDebug('User login', $msg);
 
+        if ($bk->supportsAuthentication() && ($acct=$user->getAccount()))
+            $acct->cancelResetTokens();
+
         return true;
     }