2011-10-18 36 views
25

Tôi muốn biết thực hành tốt nhất hoặc những gì được khuyến nghị thực hiện khi tạo một biến cho thông tin đăng nhập/máy chủ MySQL.Thông tin đăng nhập/máy chủ của MySQL biến các phương pháp hay nhất

define('HOST', 'localhost'); 
    // etc.. 
    mysql_connect(HOST, // etc... 

vs

$host = 'localhost'; 
    // etc.. 
    mysql_connect($host, // etc... 

Đối với cả hai bạn có thể dễ dàng kiểm tra các biến khai báo hoặc hằng số là gì và có lẽ có thể tìm thấy giá trị một cách dễ dàng là gì. Tôi có mã mà nhiều người dùng có thể chia sẻ và sử dụng.

Cách tốt nhất để bảo vệ các biến này là gì?

Trả lời

31

Dưới đây là vài giải pháp

1) Bạn cung cấp cho mỗi người dùng một người dùng và mật khẩu và mỗi người dùng có quyền truy cập của họ trong cơ sở dữ liệu (chỉ chọn , hoặc chèn vv ..). Vì vậy, trong mã của bạn, bạn chỉ cần bao gồm một db.config.php để tất cả các biến được thiết lập. Nó không thực sự quan trọng nếu người dùng echo các biến vì họ sử dụng riêng của họ. .

2), bạn có thể cung cấp một tên người dùng thông thường/pass cho cơ sở dữ liệu và sau đó mã hóa các tập tin (hoặc sử dụng custom encoding, ưu zend hoặc ionCube và unset các biến Dưới đây là một số mẫu mã:

// file mysql_connect.php 

$link = mysql_connect("localhost", "mysql_user", "mysql_password") 
    or die("cannot connect to database : " . mysql_error()); 

// then this file is encoded so nobody can view it. 

3) Tại một số thời điểm, một người nào đó, bằng cách nào đó sẽ có thể tìm thấy thông tin này. Tôi chỉ đơn giản khuyên bạn nên tin tưởng người dùng của bạn (giả sử đây là những nhà phát triển)

+0

Điều thứ hai có vẻ tốn kém cho những gì tôi cần làm, thứ ba, chưa); nhưng tôi thích cái đầu tiên, rất dễ dàng và gọn gàng. –

+0

Không có vấn đề gì bạn hoan nghênh –

1

Tại một số thời điểm trong mã của bạn, bạn sẽ phải mã hóa loại thông tin này, điều quan trọng là giữ nó ở một nơi duy nhất để quảng bá khả năng bảo trì. Tuy nhiên, như bạn đang lo lắng về an ninh Tôi đề nghị bạn kiểm tra này: Convert PHP file to binary

Các vấn đề liên quan