-1

多数のデータベースに接続するWebアプリケーションで、データベースのユーザー名とパスワードを保存する最も安全な方法は何でしょうか。データベースに接続するためにそれらを使用する必要があるため、それらをハッシュすることはできません。データベースには機密情報が含まれている可能性があるため、プレーンテキストは実際にはそれをカットしません。それらをまだ使用できるように保管するための最も安全な方法は何でしょうか?

ありがとう!

4

2 に答える 2

1

これらの変数を別のファイルで定義して、Web アクセスできないフォルダーに保存するか、ファイルを Web アクセスできないようにして接続ファイルに含めることができます。

つまり、構成ファイル

PHPを使用している場合

資格情報ファイル

<?php 

define("database_username", "*****");

define("database_password", "*****");

define("database_server", "*****");

define("database_name", "*****");

?>

................................................................... ...................................................

接続スクリプト

   <?php 
    require ('../non-webaccessible-folder/credentials.php');

    class Databased {

    public static $connection;

    function __construct() {
        $this->connection = new mysqli(
                        database_server,
                        database_username,
                        database_password,
                        database_name
        );
    }

    public static function connect() {
        if (!isset(self::$connection)) {
            self::$connection = new mysqli(database_server, database_username, database_password, database_name);
        }
        return self::$connection;
    }

}

    ?>
于 2012-12-04T17:26:06.487 に答える
0

この問題の解決策に似た解決策がいくつかありますが、私の意見では、プレーンテキストの構成ファイルは完全に受け入れられます。侵入者があなたのファイルシステムにアクセスできたとしても、生のデータベース ファイルを手に入れることができます。

于 2012-12-04T17:25:20.570 に答える