Tôi đang tìm hướng dẫn về mã hóa các trường (và/hoặc bảng nếu có thể) cho MySQL. Tôi sẽ giải quyết cho một hướng dẫn phong nha nhưng tôi thực sự muốn lời khuyên cụ thể về quản lý việc chuyển đổi từ một lược đồ không được mã hóa để sử dụng một trong những lĩnh vực được mã hóa. Cảm ơn!Thực tiễn tốt nhất cho mã hóa MySQL?
Trả lời
Cùng với AES_ENCRYPT cho các trường, nếu bạn đang lưu trữ thông tin nhạy cảm, tốt hơn cả enable SSL qua dây. Cũng xem xét việc tách mạng (vlan) của các máy cơ sở dữ liệu nhạy cảm và các thực hành bảo mật tiêu chuẩn khác. Key lưu trữ là quan trọng (đó là chia sẻ aes chìa khóa treo ra, chắc chắn không phải trên máy chủ web (s)!) Và xem xét tác động vào các chỉ mục/truy vấn từ tìm kiếm hoặc tham gia dữ liệu bảng sẽ không được đơn giản như nó đã từng được.
Có (ít nhất) hai cách tiếp cận thực sự. Bạn có thể mã hóa dữ liệu lưu trữ trong bảng của bạn (sử dụng EAS/chức năng DES ví dụ http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html)
Hoặc bạn có thể sử dụng phân vùng đĩa cứng được mã hóa để lưu trữ các thư mục dữ liệu của bạn (ví dụ với TrueCrypt)
Hãy suy nghĩ những gì bạn cố gắng đạt được với mã hóa? Không có giải pháp bảo mật đơn giản nào.
Hãy nhớ rằng khóa bạn đang sử dụng để mã hóa có thể được tìm nạp từ mã của bạn. Vì vậy, từ quan điểm của hacker, nhận được rằng mã hóa là khá dễ dàng. Bạn cần phải suy nghĩ về kiến trúc và infra của bạn là tốt.
Trong trường hợp của webapp, mã có thể không truy cập được, tùy thuộc vào kiến trúc. Kẻ trộm cắp sẽ phải thỏa hiệp cả cơ sở dữ liệu lẫn máy chủ web/container. – edoloughlin
Giá trị mã hóa cơ sở dữ liệu ở cấp trường là gì? Đây có phải là những gì bạn thực sự muốn, hoặc nó sẽ là đủ để mã hóa ở cấp hệ điều hành hoặc SAN? Bạn có kế hoạch để roll-over các phím, hoặc chỉ giữ cùng một khóa mã hóa cho cõi đời đời? Việc mã hóa sẽ phá vỡ các chỉ mục bảng, các tham chiếu hoặc các kiểu trường? Làm thế nào bạn sẽ chia sẻ khóa mã hóa trên một cụm cơ sở dữ liệu?
Tôi chỉ huy những điểm này bởi vì mã hóa cơ sở dữ liệu thường là một cái gì đó quản lý muốn, nhưng không ai thực sự có thể giải thích những giá trị gia tăng hoặc làm thế nào nó sẽ được thực hiện ...
giá trị gia tăng là tuân thủ HIPAA, ít nhất là đối với một số. –
Trước hết, chỉ có dữ liệu mã hóa không phải là câu trả lời.
Bạn nên biết và kiểm soát "Ai có thể truy cập và truy cập dữ liệu".
Mặc dù bạn mã hóa dữ liệu, nhưng kẻ tấn công có thể lấy dữ liệu được mã hóa. Để ngăn chặn nó, bạn nên kiểm soát đặc quyền hoặc quyền truy cập. Ngoài ra, bạn nên biết ai đã truy cập dữ liệu được mã hóa. Bởi vì trong những ngày này, dữ liệu có thể bị đánh cắp bởi không chỉ người dùng bên ngoài mà còn cả người dùng nội bộ.
Bạn nên mã hóa dữ liệu, kiểm soát đặc quyền và kiểm tra người đã truy cập.
Trong những ngày đó, ba (3) công nghệ đó đã được phát triển theo từng cách. Hầu hết các công ty đã mua từng giải pháp.
Nhưng đối với người dùng cá nhân, thật khó để mua và tự xây dựng môi trường đó. Ngoài ra, Chức năng mã hóa của MySQL không cung cấp các chức năng đó.
Tôi muốn xem lại điều này link cung cấp ba (3) chức năng đó.
Theo kinh nghiệm của tôi, nó có thể cung cấp sự bảo mật nhất định. (Tôi là CISO của SME.)
- 1. Thực tiễn tốt nhất cho mã xác nhận email
- 2. Thực tiễn tốt nhất để sao lưu MySQL
- 3. JavaScript Thực tiễn tốt nhất
- 4. DTO: thực tiễn tốt nhất
- 5. Mô hình hóa LDAP Thực tiễn tốt nhất
- 6. Thực tiễn tốt nhất cho cấu trúc tệp tùy chỉnh
- 7. Thực tiễn tốt nhất về hợp đồng mã
- 8. Thực tiễn tốt nhất cho ngoại lệ Python?
- 9. Android strings.xml Thực tiễn tốt nhất?
- 10. Giao dịch NHibernate Thực tiễn tốt nhất
- 11. CXF Wsdl2Java Thực tiễn tốt nhất
- 12. UIView Vẽ thực tiễn tốt nhất
- 13. Thực tiễn tốt nhất cho các lỗi trong RESTful API
- 14. Thực tiễn tốt nhất cho thông tin phiên bản?
- 15. Thực tiễn tốt nhất cho các đường dẫn PHP
- 16. Thực tiễn tốt nhất cho việc triển khai (php/mysql) để chia sẻ lưu trữ?
- 17. Thực tiễn tốt nhất cho việc tiêm phụ thuộc
- 18. ASP.Net MVC Cookies Thực tiễn tốt nhất
- 19. Python Daemon Packaging Thực tiễn tốt nhất
- 20. CSS @import Thực tiễn tốt nhất
- 21. Thực tiễn tốt nhất về Sitecore
- 22. iOS Facebook SDK - Thực tiễn tốt nhất?
- 23. Facebook Đăng nhập Thực tiễn tốt nhất
- 24. Thực tiễn tốt nhất cho hộp thoại phương thức góc
- 25. Thực tiễn tốt nhất cho bảng điều khiển Plone
- 26. Thực tiễn tốt nhất cho các phụ thuộc vào #defines?
- 27. Thực tiễn tốt nhất cho khách hàng Duplex WCF
- 28. Thực tiễn tốt nhất cho API an toàn?
- 29. Thực tiễn tốt nhất cho điều hướng tab?
- 30. Thực tiễn tốt nhất cho Android - lượt xem/hoạt động
Cảm ơn, một số cân nhắc tốt ở đây –