Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tôi nên giữ thông tin đăng nhập của cơ sở dữ liệu của mình ở đâu?

Trước hết, bạn nên biết rằng bất kể bạn làm gì, nếu kẻ tấn công giành được quyền truy cập vào các tệp máy chủ của bạn, chúng sẽ có thể đánh cắp mật khẩu.

Nếu bạn sử dụng nguồn dữ liệu của máy chủ ứng dụng thì bạn chỉ cần di chuyển vị trí của mật khẩu văn bản rõ sang một tệp khác.

Nếu bạn sử dụng một số hình thức mã hóa để tránh lưu trữ mật khẩu văn bản rõ ràng, ứng dụng của bạn sẽ vẫn phải giải mã nó bằng một mật khẩu khác mà ứng dụng đã có. Nếu kẻ tấn công cố gắng rất nhiều để có được quyền truy cập vào hệ thống của bạn, bạn có thể khá tự tin rằng hắn cũng sẽ biết điều đó. Những gì bạn đang làm là gây bối rối (và có được cảm giác an toàn giả tạo) hơn là thực sự bảo vệ nó.

Một giải pháp an toàn hơn là người dùng cung cấp mật khẩu (hoặc mật khẩu để giải mã mật khẩu DB) trong quá trình khởi động ứng dụng của bạn, nhưng điều đó sẽ khiến việc quản trị thực sự khó khăn. Và nếu bạn đã hoang tưởng (loại bảo mật tốt, không phải loại điên rồ) rằng ai đó có quyền truy cập vào máy chủ của bạn, bạn nên xem xét rằng mật khẩu DB sẽ nằm trong bộ nhớ hệ thống.

Ngoài ra, hãy giữ mật khẩu của bạn trong tệp cấu hình của bạn (mà bạn có thể khá chắc chắn rằng máy chủ sẽ không hiển thị với thế giới bên ngoài), khóa hệ thống của bạn và chỉ cấp cho người dùng cơ sở dữ liệu những quyền tối thiểu cần thiết.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để nhập tệp csv vào MySQL workbench?

  2. MySQL select có vẻ rất chậm nhưng không thể nghĩ cách cải thiện?

  3. Cách ánh xạ một cột MySQL JSON sang một thuộc tính thực thể Java bằng JPA và Hibernate

  4. Ngày Java SQL tắt trước 1 ngày

  5. Woocommerce nhận Mã sản phẩm bằng SKU sản phẩm