Tùy chọn cho Mã hóa dữ liệu trong SQL Server 2008 R2 Phiên bản tiêu chuẩn?


7

Tôi đang giúp một người bạn thiết lập mã hóa dữ liệu trên phiên bản SQL Server 2008 R2 Standard. Theo nghiên cứu ban đầu, tôi nghĩ rằng tôi có thể sử dụng TDE nhưng không nhận ra rằng nó chỉ có sẵn cho các phiên bản Enterprise hoặc DataCenter của Máy chủ SQL. Khi nghiên cứu sâu hơn về các tính năng của SQL Server 2008 R2, tôi thấy rằng nó cho phép "Mã hóa dữ liệu và quản lý khóa" nhưng tôi không chắc ý nghĩa của nó hoặc cách triển khai nó.

Phương pháp hiệu quả nhất và chi phí thấp để mã hóa dữ liệu là gì? Tôi có nên làm gì đó thông qua SQL Server hay chỉ sử dụng các công cụ của bên thứ ba để mã hóa toàn bộ khối lượng nơi DB và bản sao lưu? Ngoài ra nếu ai đó có thể chỉ ra một cách để sử dụng "Mã hóa dữ liệu" là tính năng trong phiên bản tiêu chuẩn, tôi thực sự sẽ đánh giá cao. Mỗi lần tôi tìm kiếm mã hóa trên máy chủ sql, tôi tiếp tục tìm hiểu về cách sử dụng TDE và trong kịch bản hiện tại, quy mô doanh nghiệp không thể mua Phiên bản doanh nghiệp là không khả thi.

Lý do mã hóa - Tuân thủ HIPAA. Nếu quyền truy cập đạt được vào hệ thống tệp cho cơ sở dữ liệu hoặc sao lưu, dữ liệu được mã hóa và không thể được sử dụng. Điều này có thể bao gồm quyền truy cập vật lý vào máy hoặc truy cập thông qua quản trị viên cục bộ.

Câu trả lời:


8

Vì bạn đang sử dụng Phiên bản Chuẩn, bạn không thể sử dụng TDE. Vì vậy, các tùy chọn khác là

Sử dụng các khóa mã hóa ở cấp thể hiện / cơ sở dữ liệu :

SQL Server có hai loại khóa: đối xứng và không đối xứng. Các khóa đối xứng sử dụng cùng một mật khẩu để mã hóa và giải mã dữ liệu. Các khóa bất đối xứng sử dụng một mật khẩu để mã hóa dữ liệu (được gọi là khóa chung) và một mật khẩu khác để giải mã dữ liệu (được gọi là khóa riêng).

SQL Server có hai ứng dụng chính cho khóa: khóa chính dịch vụ (SMK) được tạo trên và cho phiên bản SQL Server và khóa chính cơ sở dữ liệu (DMK) được sử dụng cho cơ sở dữ liệu.

Ngoài ra, bạn có thể mã hóa ở cấp cột bằng cách tạo ENCRYPTION MASTER cùng với CREATE CERTIFICATE và sau đó CREATE SYMMETRIC KEY.

Một ví dụ về cách thực hiện việc này được mô tả tại Mã hóa Cột dữ liệu

Tham khảo: SQL Server và Khóa mã hóa cơ sở dữ liệu (Cơ sở dữ liệu)

Ở cấp độ Drive :

Sử dụng BitLocker vì đây là tính năng bảo vệ dữ liệu Mã hóa ổ đĩa có sẵn Windows Server 2008 R2. Tham khảo: Tổng quan về mã hóa ổ đĩa BitLocker Có nhiều phần mềm mã nguồn mở hoặc bên thứ ba để thực hiện cùng một công việc nhưng với chi phí bổ sung.

Lưu ý: Bit quan trọng nhất là LUÔN LUÔN sao lưu các khóa mã hóa của bạn .

Bạn có thể sử dụng phần mềm của bên thứ ba như sao lưu sql của Redgate cho phép bạn mã hóa các bản sao lưu bằng mật khẩu.

Tùy thuộc vào mức độ bạn cần mã hóa sẽ xác định xem có đáng để nâng cấp lên phiên bản doanh nghiệp hay không. Bạn phải đánh giá mã hóa TDE gốc so với khóa mã hóa và chứng chỉ so với mã nguồn mở so với mã hóa đĩa.


Tôi không đồng ý với việc sử dụng BitLocker. Điều này từ tài liệu MS: "BitLocker không bảo vệ nội dung của máy tính trong khi Windows đang chạy." preview.tinyurl.com/hw9pzcm
Dina

5

Câu hỏi cũ, tôi hiểu, nhưng một câu trả lời ngoài các câu trả lời trên còn tồn tại kể từ SQL Server 2016 SP1.

SQL Server 2016 đã giới thiệu "Luôn được mã hóa" cũng như các tính năng bảo mật khác như Dynamic Data Masking và Row Level Security. Đây là những tính năng ban đầu được phát hành trong Enterprise Edition Only.

Hiện tại chúng tồn tại dưới dạng các tính năng khả dụng trong mọi SKU SQL Server 2016 - Enterprise, Standard hoặc thậm chí Express.

Đáng để kiểm tra và đáng để xem xét quá trình nâng cấp ngay bây giờ. Bạn có thể đọc thêm về điều này trên bài đăng của Microsoft về SP1 cho SQL Server 2016 ..


1
Tôi đã xem xét khả năng nâng cấp lên SQL Server 2016 SP1 cho các tính năng mới mà Microsoft phát hành. SQL Server 2016 SP1 chắc chắn sẽ thay đổi thị trường và quyết định cho nền tảng cơ sở dữ liệu.
Vladimir Oselsky

3

Đầu tiên, đặt câu hỏi "tại sao tôi mã hóa cơ sở dữ liệu này?"

Nếu câu trả lời là "để ẩn dữ liệu khỏi quản trị viên cơ sở dữ liệu" thì mã hóa SQL Server dưới bất kỳ hình thức nào không phải là câu trả lời. Trong trường hợp đó, ứng dụng khách sẽ được mã hóa dữ liệu và lưu trữ bản mã trong cơ sở dữ liệu. Bằng cách đó, cả máy chủ cơ sở dữ liệu cũng như quản trị viên cơ sở dữ liệu (cũng không phải quản trị viên mạng) cũng không thấy dữ liệu hoặc khóa mã hóa không được mã hóa.

Mã hóa dữ liệu trên máy khách trước khi gửi đến máy chủ có nghĩa là các tệp cơ sở dữ liệu và bản sao lưu cơ sở dữ liệu đều được mã hóa và được bảo vệ chống lại ai đó ăn cắp băng dự phòng hoặc đĩa cứng và cũng được bảo vệ chống lại tài khoản quản trị viên lừa đảo hoặc bị xâm phạm.

Xem bài viết trên blog của Laurentiu Cristofor Ai cần mã hóa? HIPAA Tuân thủ SQL Server 2008 trên Blog bảo mật máy chủ SQL


0

Câu trả lời ban đầu còn lại là một chỉnh sửa cho câu hỏi của tác giả:

Giải pháp sử dụng

Sau khi trình bày các tùy chọn khác nhau cho Quản trị viên hệ thống phụ trách dự án, quyết định được đưa ra với Mã hóa ổ đĩa BitLocker. Tôi đã dừng SQL Instance trong quá trình mã hóa và không gặp vấn đề gì khi khởi động lại nó sau khi mã hóa hoàn tất.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.