# Миграция паролей из Drupal в Discourse с помощью плагина discourse-migrate-password

**URL:** <https://meta.discourse.org/t/drupal-password-migrate-into-discourse-with-discourse-migrate-password-plugin/279694>\
**Category:** Migration\
**Created:** [21.Сентябрь.2023 13:27:11 UTC](https://meta.discourse.org/t/drupal-password-migrate-into-discourse-with-discourse-migrate-password-plugin/279694 "2023-09-21T13:27:11Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)\
**Post date:** [22.Сентябрь.2023 15:25:26 UTC](https://meta.discourse.org/t/drupal-password-migrate-into-discourse-with-discourse-migrate-password-plugin/279694/4 "2023-09-22T15:25:26Z")

</div>

Плагин работает путем [переопределения](https://github.com/communiteq/discourse-migratepassword/blob/master/plugin.rb#L210-L227) метода `confirm_password?` класса User. Сначала он вызывает оригинальную проверку пароля и ничего не делает, если пароль принят основной логикой Discourse.

Если это не так, он проверяет, есть ли у пользователя пользовательское поле `import_pass`, и если да, использует все доступные алгоритмы для проверки введенного пароля относительно хеша `import_pass`.

Если совпадение найдено, введенный пароль сохраняется как пароль пользователя, и пользователю разрешается вход.

---

_[View the full topic](https://meta.discourse.org/t/drupal-password-migrate-into-discourse-with-discourse-migrate-password-plugin/279694)._
