web-dev-qa-db-ja.com

settings.phpに保存されているdbパスワードの暗号化

Settings.phpのdbパスワードはプレーンテキストとして保存されます。そのパスワードを暗号化する方法はありますか?

私のクライアントは、ファイルのアクセス許可が適切であるにもかかわらず、セキュリティ上のリスクがあると言っています。

5
doron

セキュリティは常に妥協の問題です。問題は常に、どのような脅威から防御したいか、そしてどの程度の障害に対処するかです。

たとえば、DBパスワードを要求する小さなスクリプトを作成し、それを(APC/APCuを使用して)共有メモリに保存してから、Drupal settings.phpからDBパスワードを読み取ります。もちろん、Apacheの再起動では、DBパスワードを指定する必要があります。しかし、どのファイルにもパスワードがありません。妥協、参照してください?

誰かが任意のPHP=コードを実行できた場合、確かにパスワードを取得できますが、とにかくそれほど重要ではありませんよね?

1
user49

これは特にDrupalの質問ではありません。 [〜#〜] owasp [〜#〜] のセキュリティ基準に応じて、パスワードを平文で保持しているsettings.phpはリスクと見なすことができます(通常の場合、通常Drupal環境では当てはまりません)

これは 情報セキュリティスタック交換のスレッド でトピックについて説明していますが、私の意見では少し偏執的であり、ほとんどのオプションはサイトの速度を低下させます。

5
pcambra

これを行うことは可能です。私はこれを自分のウェブサイトに実装し、これに関する投稿もここに書きました:

http://techrappers.com/post/3508/how-secure-settingsphp-file-drupal

上記の記事では、PHPスクリプトとAES-256-CBC暗号化方式を使用して、settings.phpファイル内に暗号化パスワードを実装する手順を順を追って説明しています。

0
Sahil Gupta