บทนำ
บทความนี้อธิบายถึงคำแนะนำ FIPS 140-2 และวิธีการใช้ Microsoft SQL Server ๒๐๑๒ในโหมดที่เข้ากันได้กับ FIPS 140-2หมายเหตุ
-
ข้อกำหนด "FIPS 140-2 สอดคล้องกัน," "FIPS 140-2 การปฏิบัติตาม" และ "โหมดที่เข้ากันได้กับ FIPS 140-2-" จะถูกกำหนดไว้ที่นี่สำหรับการใช้งานและความคมชัด ข้อกำหนดเหล่านี้ไม่ได้รับการยอมรับหรือกำหนดเงื่อนไขของรัฐบาล รัฐบาลสหรัฐอเมริกาและแคนาดารู้จักการตรวจสอบความถูกต้องของโมดูลการเข้ารหัสลับกับมาตรฐานเช่น FIPS 140-2 และไม่ได้ใช้โมดูลการเข้ารหัสลับในลักษณะที่ระบุหรือ conformant ในบทความนี้เราใช้ "FIPS 140-2-สอดคล้องกัน" "FIPS 140-2 การปฏิบัติตาม" และ "โหมดที่เข้ากันได้กับ FIPS 140-2" ในความรู้สึกว่า SQL Server ๒๐๑๒ใช้เฉพาะอินสแตนซ์ของอัลกอริธึมที่ได้รับการตรวจสอบความถูกต้องของอัลกอริทึมและฟังก์ชันการทำงานแบบแฮชในอินสแตนซ์ทั้งหมดที่เข้ารหัสลับหรือส่ง140-2 ออกข้อมูล นอกจากนี้ซึ่งหมายความว่า SQL Server ๒๐๑๒จะจัดการคีย์ในลักษณะที่ปลอดภัยเนื่องจากจำเป็นต้องมีโมดูลการเข้ารหัสลับของ FIPS 140-2 ที่ได้รับการตรวจสอบ กระบวนการการจัดการที่สำคัญยังมีทั้งการสร้างคีย์และที่เก็บคีย์
-
เราใช้ "ได้รับการรับรอง" ที่นี่เพื่อให้มีการตรวจสอบความถูกต้องของอินสแตนซ์ของอัลกอริทึม FIPS 140-2 หรือระบบปฏิบัติการที่มีอินสแตนซ์ของอัลกอริธึมที่ได้รับการตรวจสอบ FIPS 140-2 ของอัลกอริทึม
ข้อมูลเพิ่มเติม
FIPS คืออะไร
การประมวลผลข้อมูลของรัฐบาลกลาง (FIPS) เป็นมาตรฐานที่ได้รับการพัฒนาโดยหน่วยงานราชการสองตัวต่อไปนี้:
-
สถาบันการศึกษาระดับมาตรฐานและเทคโนโลยี (NIST) ในประเทศสหรัฐอเมริกา
-
การจัดตั้งการรักษาความปลอดภัยการสื่อสาร (CSE) ในแคนาดา
มาตรฐาน FIPS จะแนะนำหรือบังคับใช้ในระบบการดำเนินการของรัฐบาลกลางในสหรัฐอเมริกาและแคนาดา
FIPS 140-2 คืออะไร
FIPS 140-2 เป็นคำสั่งที่มีชื่อว่า "ข้อกำหนดด้านความปลอดภัยสำหรับโมดูลที่เข้ารหัสลับ" จะระบุอัลกอริทึมการเข้ารหัสลับที่สามารถใช้ได้และวิธีการสร้างและจัดการคีย์การเข้ารหัสลับ ฮาร์ดแวร์ซอฟต์แวร์และกระบวนการบางอย่างอาจเป็น FIPS 140-2 ได้รับการรับรองและฮาร์ดแวร์ซอฟต์แวร์และกระบวนการบางอย่างอาจเป็น FIPS 140-2 ที่สอดคล้องกัน
ความแตกต่างระหว่างการเข้ากันได้กับ FIPS 140-2 เป็นไปตามมาตรฐาน FIPS 140-2 หรือไม่
คุณสามารถกำหนดค่า SQL Server ๒๐๑๒และทำงานในลักษณะที่สอดคล้องกับ FIPS 140-2 เมื่อต้องการกำหนดค่า SQL Server ๒๐๑๒ในลักษณะนี้ SQL Server ๒๐๑๒ต้องทำงานบนระบบปฏิบัติการที่เป็น FIPS 140-2 ได้รับการรับรองหรือบนระบบปฏิบัติการที่มีโมดูลที่เข้ารหัสลับที่ได้รับการรับรอง ความแตกต่างระหว่างการปฏิบัติตามข้อบังคับและการรับรองไม่ละเอียด อัลกอริทึมสามารถได้รับการรับรอง ไม่เพียงพอที่จะใช้อัลกอริทึมจากรายการที่ได้รับการอนุมัติใน FIPS 140-2 คุณจำเป็นต้องใช้อินสแตนซ์ของอัลกอริทึมดังกล่าวที่ได้รับการรับรอง การรับรองต้องใช้การทดสอบและการตรวจสอบโดยห้องปฏิบัติการประเมินที่ได้รับการรับรองจากรัฐบาล Windows Server ๒๐๐๓, Windows XP และ Windows Server ๒๐๐๘มีอัลกอริทึมที่ได้รับอนุญาตและอินสแตนซ์ของระบบปฏิบัติการเหล่านี้แต่ละระบบจะได้รับการทดสอบการทดสอบและการรับรองจากรัฐบาล
ผลิตภัณฑ์แอปพลิเคชันใดบ้างที่สามารถเข้ากันได้กับ FIPS 140-2
แอปพลิเคชันทั้งหมดที่ทำการเข้ารหัสลับหรือการแฮชและทำงานบน Windows เวอร์ชันที่ได้รับการรับรองสามารถเข้ากันได้โดยใช้เฉพาะอินสแตนซ์ที่ได้รับการรับรองของอัลกอริทึมที่ได้รับการอนุมัติและการปฏิบัติตามข้อกำหนดที่สำคัญและการจัดการที่สำคัญโดยใช้ฟังก์ชัน Windows สำหรับการสร้างคีย์และการจัดการคีย์ โปรดทราบว่าพื้นที่ในแอปพลิเคชันที่เข้ากันได้กับ FIPS อาจมีการเปิดใช้งานอัลกอริทึมหรือกระบวนการ noncompliant ตัวอย่างเช่นกระบวนการภายในที่อยู่ภายในระบบและข้อมูลภายนอกบางอย่างที่จะถูกเข้ารหัสลับจากอินสแตนซ์อัลกอริทึมที่ได้รับการรับรองจะได้รับอนุญาต
เป็น SQL Server ๒๐๑๒ที่สอดคล้องกับ FIPS 140-2 เสมอหรือไม่
ไม่ใช่ SQL Server ๒๐๑๒สามารถเข้ากันได้กับ FIPS 140-2 เนื่องจากสามารถกำหนดค่าและเรียกใช้ได้ด้วยวิธีการที่จะใช้เฉพาะอินสแตนซ์อัลกอริทึมที่ได้รับการรับรอง FIPS 140-2 ที่เรียกว่าโดยใช้ CryptoAPI สำหรับการเข้ารหัสลับหรือโดยการทำให้การทำเครื่องหมายในอินสแตนซ์ทั้งหมดที่จำเป็นต้องมีการปฏิบัติตามข้อบังคับ FIPS 140-2
คุณสามารถกำหนดค่า SQL Server ๒๐๑๒ให้เป็น FIPS 140-2 ได้อย่างไร
-
ความต้องการของระบบปฏิบัติการ: คุณต้องติดตั้ง SQL Server ๒๐๑๒บนเซิร์ฟเวอร์ที่ยึดตามระบบปฏิบัติการใดระบบหนึ่งต่อไปนี้:
-
Windows Server 2003
-
Windows XP
-
Windows Server 2008
-
-
ความต้องการในการดูแลระบบของ Windows: ต้องตั้งค่าโหมด FIPS ก่อนที่ SQL Server ๒๐๑๒จะเริ่มต้น SQL Server อ่านการตั้งค่าเมื่อเริ่มต้น เมื่อต้องการตั้งค่าโหมด FIPS ให้ทำตามขั้นตอนต่อไปนี้:
-
เข้าสู่ระบบ Windows เป็นผู้ดูแลระบบ Windows
-
คลิก เริ่ม
-
คลิกแผงควบคุม
-
คลิกเครื่องมือการดูแลระบบ
-
คลิกนโยบายความปลอดภัยภายในเครื่อง หน้าต่าง การตั้งค่าความปลอดภัยภายในเครื่อง จะปรากฏขึ้น
-
ในบานหน้าต่างนำทางให้คลิกนโยบายภายในเครื่องแล้วคลิกตัวเลือกความปลอดภัย
-
ในบานหน้าต่างด้านขวาให้ดับเบิลคลิกที่การเข้ารหัสลับระบบ: ใช้อัลกอริทึมที่เข้ากันได้กับ FIPS สำหรับการเข้ารหัสลับการทำซ้ำและการลงชื่อเข้าใช้
-
ในกล่องโต้ตอบที่ปรากฏขึ้นให้คลิกเปิดใช้งานแล้วคลิกนำไปใช้
-
คลิก ตกลง
-
ปิดหน้าต่างการตั้งค่าการรักษาความปลอดภัยภายในเครื่อง
-
-
ความต้องการของผู้ดูแลเซิร์ฟเวอร์ SQL
-
เมื่อบริการ SQL Server ตรวจพบว่าโหมด FIPS ถูกเปิดใช้งานเมื่อเริ่มต้นระบบ SQL Server จะบันทึกข้อความต่อไปนี้ในบันทึกข้อผิดพลาด SQL Server:
การขนส่งนายหน้าบริการกำลังทำงานในโหมดการปฏิบัติตามกฎระเบียบ FIPSนอกจากนี้คุณอาจพบข้อความต่อไปนี้ที่บันทึกไว้ในแฟ้มบันทึกเหตุการณ์ของ Windows:
คุณสามารถตรวจสอบว่าเซิร์ฟเวอร์กำลังทำงานในโหมด FIPS ด้วยการค้นหาข้อความเหล่านี้
-
สำหรับการรักษาความปลอดภัยของกล่องโต้ตอบ (ระหว่างบริการ) การเข้ารหัสจะใช้อินสแตนซ์ของ AES ที่ได้รับการรับรอง FIPS ถ้าเปิดใช้งานโหมด FIPS ถ้าโหมด FIPS ถูกปิดใช้งานการเข้ารหัสจะใช้แบบ RC4
-
เมื่อคุณกำหนดค่าจุดสิ้นสุดของนายหน้าบริการในโหมด FIPS ผู้ดูแลระบบต้องระบุ "AES" สำหรับนายหน้าบริการ ถ้าจุดสิ้นสุดถูกกำหนดค่าให้เป็นแบบ RC4 SQL Server จะสร้างข้อผิดพลาด เลเยอร์การขนส่งจะไม่เริ่มทำงาน
-
SQL Server ๒๐๑๒ดำเนินการในโหมดที่เข้ากันได้กับ FIPS 140-2 อย่างไร
-
ด้วยโหมด FIPS ใน Windows เปิดอยู่ในพื้นที่ทั้งหมดที่ผู้ใช้ไม่มีตัวเลือกว่าจะเข้ารหัสลับ/แฮชและวิธีที่จะทำให้ SQL Server ๒๐๑๒จะดำเนินการตามข้อกำหนดของ FIPS 140-2 (SQL Server ๒๐๑๒จะใช้ CryptoAPI ใน Windows และจะใช้เฉพาะอินสแตนซ์ที่ได้รับการรับรองของอัลกอริทึมเท่านั้น)
-
ด้วยโหมด FIPS ใน Windows เปิดอยู่ในพื้นที่ทั้งหมดที่ผู้ใช้มีตัวเลือกว่าจะใช้การเข้ารหัสลับ SQL Server ๒๐๑๒จะเปิดใช้งานการเข้ารหัสลับที่เข้ากันได้กับ FIPS 140-2 เท่านั้นหรือจะไม่เปิดใช้งานการเข้ารหัสลับใดๆ
-
ข้อมูลที่สำคัญสำหรับนักพัฒนาซอฟต์แวร์ในพื้นที่ทั้งหมดที่นักพัฒนาหรือผู้ใช้เขียนโค้ดของตนเองสำหรับการเข้ารหัสลับหรือการแฮชพวกเขาจะต้องได้รับคำแนะนำให้ใช้เฉพาะ CryptoAPI (และดังนั้นจึงมีเฉพาะอินสแตนซ์ที่ได้รับการรับรอง) และระบุเฉพาะอัลกอริทึมที่ได้รับอนุญาตโดย FIPS 140-2 โดยเฉพาะอย่างยิ่งพวกเขาจะต้องระบุเพียงหนึ่ง DES (ไม่มีการใช้งาน) หรือ AES สำหรับการเข้ารหัสลับและเฉพาะ SHA-1 สำหรับการแฮช
ผลกระทบของการเรียกใช้ SQL Server ๒๐๑๒ในโหมดที่เข้ากันได้กับ FIPS 140-2 คืออะไร
-
การใช้การเข้ารหัสลับที่เข้มงวดอาจมีผลต่อประสิทธิภาพการทำงานของกระบวนการเหล่านั้นที่มีการเข้ารหัสลับที่เข้มงวดน้อยลงเมื่อกระบวนการไม่ดำเนินการเป็น FIPS 140-2 สอดคล้องกัน
-
การเลือกการเข้ารหัสลับสำหรับ SSIS (UseEncryption = True) จะสร้างข้อความแสดงข้อผิดพลาดที่ระบุว่าการเข้ารหัสลับที่พร้อมใช้งานไม่เข้ากันกับการปฏิบัติตามมาตรฐาน FIPS และไม่ได้รับอนุญาต ในคำอื่นๆไม่มีการเข้ารหัสลับของกระบวนการข้อความ
-
การใช้การเข้ารหัสลับร่วมกับ DTS รุ่นเก่าไม่สอดคล้องกับ FIPS 140-2 โปรดทราบว่าสำหรับ DTS โหมด FIPS ใน Windows จะไม่ได้รับการตรวจสอบ ดังนั้นจึงเป็นความรับผิดชอบของผู้ใช้ในการเลือกไม่มีการเข้ารหัสลับเพื่อให้สอดคล้องกัน
-
เนื่องจากการเข้ารหัสลับของ SQL Server ๒๐๑๒และกระบวนการทำงานแบบแฮชได้รับการเข้ากันได้กับ FIPS 140-2 แล้วการดำเนินการตามข้อกำหนดแบบเต็ม (ที่มีโหมด FIPS ใน Windows จะเปิดใช้งาน) จะมีผลกระทบน้อยหรือไม่มีผลต่อการใช้งานหรือประสิทธิภาพการทำงานของผลิตภัณฑ์
ฉันจะเรียนรู้เพิ่มเติมเกี่ยวกับ FIPS 140-2 ได้ที่ไหน
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ FIPS 140-2 standard และวิธีการดาวน์โหลดให้ไปที่เว็บไซต์ NIST ดังต่อไปนี้:
http://csrc.nist.gov/cryptval/140-2.htmMicrosoft มีข้อมูลที่ติดต่อของบริษัทอื่นเพื่อช่วยให้คุณค้นหาการสนับสนุนทางเทคนิค ข้อมูลที่ติดต่อนี้อาจมีการเปลี่ยนแปลงโดยไม่มีการแจ้งให้ทราบ Microsoft ไม่รับประกันความถูกต้องของข้อมูลที่ติดต่อของบริษัทอื่นนี้