Hiện tượng
Giả định rằng bạn đã có Microsoft SQL Server 2012, 2014 hoặc 2016 đang chạy trên một máy chủ có bật tiêu chuẩn xử lý thông tin liên bang (FIPS). Trong tình huống này, khi bạn chạy hoặc xác thực gói dịch vụ tích hợp Microsoft SQL Server (SSIS) có chứa một cấu phần script dòng dữ liệu, bạn nhận được thông báo lỗi sau đây:
Hệ thống. thương tiết ngoại lệ: việc triển khai này không phải là một phần của các thuật toán mã hóa trong Windows Platform FIPS. tại System. Security. mật mã. nhà cung cấp dịch vụ MD5.. ctor ()
Lưu ý Sự cố này xảy ra khi bộ khóa đăng ký sau đây được đặt là 1:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
Nguyên nhân
Sự cố này xảy ra vì SSIS sử dụng thuật toán MD5. Thuật toán MD5 không tuân thủ FIPS.
Giải pháp
Thông tin về gói dịch vụ
SQL Server 2016
Để khắc phục sự cố này trong SQL Server 2016, hãy tải gói dịch vụ 1 cho sql server 2016.
Mỗi bản dựng mới cho SQL Server 2016 chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản dựng trước đó. Chúng tôi khuyên bạn nên cài đặt bản dựng mới nhất cho SQL Server 2016.
SQL Server 2014Để khắc phục sự cố này trong SQL Server 2014, hãy tải xuống gói dịch vụ 2 cho sql server 2014.
Mỗi bản cập nhật mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản Cập Nhật trước đó. Chúng tôi khuyên bạn nên cài đặt bản dựng mới nhất cho SQL Server 2014.
SQL Server 2012Để khắc phục sự cố này trong SQL Server 2012, hãy tải gói dịch vụ 3 cho sql server 2012.
Mỗi bản cập nhật mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản Cập Nhật trước đó. Chúng tôi khuyên bạn nên cài đặt gói dịch vụ mới nhất dành cho SQL Server 2012.
Cách giải quyết
Để giải quyết vấn đề này, hãy thử một trong các phương pháp sau đây:
-
Tắt chính sách FIPS trên máy chủ. Để thực hiện điều này, hãy xem mục "để cấu hình thiết đặt chính sách FIPS" trên trang web TechNet sau đây:
Bổ sung đối phó hệ thốngLưu ý́
-
Bạn phải khởi động lại ứng dụng để thiết đặt mới có hiệu lực.
-
Thiết đặt này ảnh hưởng đến giá trị sổ đăng ký sau đây trong Windows Server:
HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\EnabledGiá trị sổ đăng ký này phản ánh thiết đặt của FIPS hiện tại. Nếu thiết đặt này được bật, giá trị là 1. Nếu thiết đặt này bị vô hiệu hóa, giá trị là 0.
-
-
Sử dụng các giải pháp Microsoft .NET khác thay vì cấu phần script.Lưu ý Thuật toán MD5 là mã hóa cứng trong cấu phần script dòng dữ liệu. Do đó, bạn không thể thay đổi cấu phần tập lệnh này.
Thông tin Bổ sung
Các dịch vụ tích hợp SQL Server sử dụng một số thuật toán mã hóa Windows không tuân thủ với FIPS 140-2, vốn là các yêu cầu bảo mật cho mô-đun mã hóa. Ví dụ, SSIS 2012 sử dụng MD5. Điều này không tuân theo FIPS 140-2, đối với các giá trị băm máy tính không được sử dụng cho bảo mật. FIPS 140-2 định nghĩa các tiêu chuẩn bảo mật mà Hoa Kỳ và các chính phủ Canada sử dụng để xác thực mức độ bảo mật cho các sản phẩm thực hiện mật mã.
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".