どのように保護することを提案しますか?
ハッシュは一方通行であり、元のデータに戻すことはできません。
ユーザーのパスワードは、復元する必要がないためハッシュ化されます。データベース内のパスワードハッシュは、ユーザーがログインを試みる際のみ参照されます。入力されたパスワードのハッシュ値が、そのユーザーレコードに保存されているパスワードハッシュと比較されます。
SMTP パスワードや API キーなどは、プレーンテキストで保存することが一般的です。これらは元の形式で送信される必要があるため、ハッシュ化すると使用できなくなります。もしサードパーティがパスワードのハッシュを受け入れる場合、保護手段としてのハッシュ化には何のメリットもありません。
上記で Jay が述べたように、サーバーの物理的な整合性が侵害され app.yml にアクセスされてしまった場合、SMTP パスワードのリセットよりもはるかに深刻な問題に直面していることになります。
ここで重要な注意点として、SMTP パスワードを他の場所で使用すべきではありません。これは Discourse に限ったことではなく、すべてのシステムおよびすべてのアカウントにおける優れたセキュリティプラクティスです。