アカウントを匿名化しても、パスワードとカスタムユーザーフィールドはそのまま残りますか?

匿名化されたユーザーのパスワードとカスタムフィールドが削除/匿名化されないのはなぜですか?

「いいね!」 1

こんにちは、sebixさん

テストインスタンスでユーザーを匿名化しました。カスタムフィールドの値が削除され、パスワードハッシュが変更されたため、以前のパスワードと一致しなくなりました。

「いいね!」 1

これは興味深いですね。
私は1772人のユーザーを匿名化しましたが、全員が import_pass カスタムフィールドを保持していました。import_id もですが、それほど気にはしていません。

Discourseの「latest-release +157」(Discourseに表示されるバージョン、おそらく0f4beab0fbbd7a163d399e2f94a6aa9cc3dd3ec8だと思います)を使用しています。11コミット遅れていますが、これらのコミットには関連する変更は含まれていないようです。

パスワードについて:おっしゃる通り、ハッシュは変更されました。私はそれに気づきませんでした。この情報を最初の投稿やドキュメントに追加していただけますか?

「いいね!」 3

詳細を追加していただきありがとうございます :slight_smile:

これらのフィールドは Migrated password hashes support から来ています。

そのため、Discourseに直接関係はありません。プラグインは、ほとんどのメンバーが少なくとも一度はログインした後、しばらくしてからアンインストールしても安全です。プラグインをアンインストールしてもこれらのフィールドが保持されるかどうかはわかりません。保持されないはずですが、もし保持される場合は、railsコンソールから空にすることができます。

はい、すぐにそうします。


編集:完了しました。

「いいね!」 2

実際には、そのプラグインはこのカスタムフィールドを読み取ります。ほとんどのインポートスクリプトによって追加されます。

プラグインのアンインストールロジックに関する規定はないため、プラグインによって追加された設定、データベーステーブル、またはカスタムフィールドは、プラグインが削除されても残ります。

ちなみに、ほとんどのインポートスクリプトは import_username というカスタムフィールドも保存します。

匿名化手順で、それらがどこから来たかに関わらず、すべてのユーザーカスタムフィールドを削除することが望ましいかもしれないと思います。カスタムフィールドのレジストリや所有権のようなものがないという事実以外にも。

「いいね!」 6

ユーザーが匿名化を希望し、アカウントの匿名化を依頼されたことがありましたが、その後、アカウントを再開したいとのことでした。パスワードフィールドを変更せずにそのままにしておくことで、アカウントの所有者が誰であるかを知っていたため、アカウントを再アクティブ化することができました。

「いいね!」 1