it-swarm.com.de

Wie exportiere ich Benutzer mit Passwörtern?

Wie exportiere ich Benutzer mit Passwörtern? Das Modul Benutzer exportieren kann nicht helfen, es exportiert ohne Passwörter.

3
Vic Nicethemer

Benutzerkennwörter werden mit einem Einweg-Hashing-Algorithmus gespeichert und können nicht in Klartext konvertiert werden. Darüber hinaus verwendet jede Drupal - Site ein eindeutiges kryptografisches Salt , sodass auf zwei Drupal - Sites nicht dasselbe Klartextkennwort angezeigt wird im gleichen Hash-Passwort.

Mit anderen Worten, es gibt keine Möglichkeit, eine Liste von Benutzernamen und Klartextkennwörtern zu erstellen.

8
mpdonadio

Wie @ MPD sagt , können Sie dies nicht tun, Sie können jedoch alle Benutzer exportieren und mit einem zufälligen Passwort importieren und auf diese Weise das Passwort festlegen:

  • Verwenden Sie das Modul Mass Password Reset , um alle Benutzerkonten zurückzusetzen und alle Benutzer zu benachrichtigen.

  • Verwenden Sie Passwortänderung erzwingen , um Benutzer zu zwingen, ihr Passwort bei ihrer nächsten Anmeldung zu ändern.

Referenz

Generieren Sie regelmäßig ein neues Passwort für Benutzer und benachrichtigen Sie den Benutzer über ein neues Passwort.

3

In sehr begrenzten Anwendungsfällen müssen Sie möglicherweise bestimmten Benutzern erlauben, die Kennwörter anderer Benutzer zu sehen. Sie können das Modul AES verwenden.

Um diese Passwörter zu exportieren, müssen Sie jedoch ein benutzerdefiniertes Modul unter Verwendung der Entschlüsselungsmechanismen des AES-Moduls schreiben (da die Passwörter nicht auch als einfacher Text gespeichert werden).

Ein Hinweis zur Warnung: Ich empfehle dringend zu überprüfen, ob Benutzer wirklich die Passwörter anderer Benutzer sehen müssen. Dies hat enorme Auswirkungen auf die Sicherheit Ihrer Website und - da viele Benutzer auf verschiedenen Websites immer noch dieselben Kennwörter verwenden - auf die Sicherheit der anderen Profile Ihrer Benutzer im Internet.

Bearbeiten: Nachdem Sie weitere Einblicke in Ihre Anforderungen gegeben haben, können Sie die Kennwörter in einer anderen Anwendung ändern, wenn a Drupal = Benutzer legt ein neues Passwort fest, ohne es unversehrt speichern zu müssen.

Sie müssen ein benutzerdefiniertes Modul erstellen. Implementieren Sie die folgenden Hooks (ersetzen Sie MYMODULE durch Ihren Modulnamen):

/**
 * Implements hook_form_alter().
 */
function MYMODULE_form_alter(&$form, &$form_state, $form_id) {
  // Alter all forms that allow editing the password:
  switch ($form_id) {
    case 'user_register_form':
    case 'user_profile_form':
      // Add an own submit handler to the user forms.
      $form['#submit'][] = 'MYMODULE_set_password_submit';
      break;
  }
}

/**
 * Submit handler setting the password in the third-party application.
 */
function MYMODULE_set_password_submit($form, &$form_state) {
  // Whether the password was changed.
  if (!empty($form_state['values']['pass'])) {
    // Get the password.
    $password = $form_state['values']['pass'];

    // And now you can use the contents of $password to call
    // your other applications API for resetting passwords or
    // hashing / setting the password using direct database
    // access.

  }
}
2
Mario Steinitz

sie exportieren nur Daten (nicht Struktur und Daten) aus der Benutzertabelle der alten Datenbank und importieren diese in die neue Datenbank. Alle Benutzer mit Passwort können auch auf diese Weise exportiert werden

0
Nabanita Nazir