2012-12-04 204 views
-1

在連接到一堆數據庫的Web應用程序中,存儲數據庫用戶名和密碼的最安全方法是什麼?我不能哈希他們,因爲我仍然必須使用它們來連接到數據庫。由於數據庫可能包含敏感信息,純文本並不會真正削減它。什麼是最安全的方式來存儲他們,使他們仍然可以使用?如何存儲數據庫密碼?

謝謝!

+0

無論是IT安全論壇還是數據庫管理員論壇都可以提出這個問題嗎? –

+0

可能的[如何最好地存儲用戶信息和用戶登錄名和密碼]的副本(http://stackoverflow.com/questions/947618/how-to-best-store-user-information-and-user-login-and-密碼) – DocMax

回答

0

有一些解決方案提供瞭解決這個問題的一些表象,但在我看來,一個純文本配置文件是完全可以接受的。如果入侵者訪問你的文件系統,他們可以只抓取原始數據庫文件。

1

您可以在單獨的文件中定義這些變量,並將它們存儲在不可通過網絡訪問的文件夾中,或者使該文件不可訪問,並將其包含在連接文件中。

即配置文件

如果您在使用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; 
    } 

} 

    ?> 
相關問題