วันพฤหัสบดีที่ 19 พฤษภาคม พ.ศ. 2554
วันศุกร์ที่ 8 เมษายน พ.ศ. 2554
ปกป้องข้อมูลที่สำคัญบนฐานข้อมูลด้วยการทำ Data Masking
ในองค์กรใหญ่ ๆ นั้น การพัฒนาระบบสารสนเทศใด ๆ มักจะแยกระหว่างระบบที่เป็น Production และระบบที่เป็น Test Environment โดยเฉพาะอย่างยิ่งระบบที่ต้องทำงานเกี่ยวข้องกับเรื่องเงิน ๆ ทอง ๆ และข้อมูลของลูกค้านั้น ข้อมูลที่จะนำมาใช้งานบน Test Environment นั้นควรจะเป็นข้อมูลที่ใกล้เคียงกับข้อมูลที่อยู่บน Production กล่าวคือ องค์ประกอบของฐานข้อมูล เช่น databases, tables, relation รวมไปถึงฟิลด์ข้อมูลต่าง ๆ ที่อยู่บน Test Environment นั้นจะต้องเหมือนกัน สิ่งที่แตกต่างกันก็คือ ข้อมูลที่นำออกมานั้นจะต้อง ไม่ใช่ข้อมูลจริง ๆ ใน Production Database เนื่องจากข้อมูลเหล่านั้นเป็นข้อมูลที่ถือว่าเป็นความลับสุดยอดของลูกค้า ดังนั้น ในระบบที่เราใช้ทดสอบนั้นจะต้องนำข้อมูลออกจากฐานข้อมูลให้มีโครงสร้างเหมือนกับ Production เพื่อให้การทดสอบระบบจะได้ผลที่เหมือนกับการทำงานบนระบบจริง แต่ข้อมูลที่นำมานั้นจะต้องไม่ใช้ข้อมูลที่ใช้งานจริง ซึ่งกระบวนการเช่นนี้เราเรียกกว่า "Data Masking"
ความสำคัญของ Data Masking
Data Masking เป็นกระบวนการที่ช่วยปกป้องข้อมูลในระบบฐานข้อมูลที่มีความสำคัญที่ต้องการนำออกมาเพื่อใช้ใน Testing Process โดยจะมีลักษณะโครงสร้างฐานข้อมูลที่เหมือนกับระบบที่ใช้งานจริง แต่ข้อมูลที่นำมานั้นจะผ่านกระบวนการต่าง ๆ ซึ่งจะไม่เหมือนข้อมูลต้นฉบับ โดยกระบวนการดังกล่าว ได้แก่
- Encryption/Decryption (เข้ารหัส/ถอดรหัส)
- Masking (การสวมข้อมูลผู้อื่นเข้าไปแทน)
- Substitution (การแทนที่ด้วยข้อมูลหรืออักษรอื่น)
- Nulling (การแทนด้วยค่า NULL)
- Shuffling (การสลับข้อมูล)
- Custom algorithms based on unique requirements (การใช้ algorithm ที่กำหนดขึ้นมาเอง)
รูปที่ 1 ตัวอย่างการทำ Data Masking
จากรูปจะเห็นได้ว่าข้อมูลใน Non-Production นั้นจะถูกเปลี่ยนแปลงไป ซึ่งเมื่อ Tester นำข้อมูลดังกล่าวไปใช้ใน Testing Process นั้นจะไม่เห็นข้อมูลจริงของลูกค้า แต่กระบวนการ Test ก็ไม่เกิดปัญหา เนื่องจากลักษณะข้อมูลและโครงสร้างที่นำมาทดสอบนั้น เหมือนกับฐานข้อมูลจริงที่ใช้งานบน Production ซึ่งหากองค์กรที่จัดเก็บข้อมูลที่สำดัญของลูกค้ามีกระบวนการพัฒนาระบบสารสนเทศเช่นนี้แล้วนั้น ก็สามารถสร้างความมั่นใจให้แก่ลูกค้าได้ว่าข้อมูลที่เป็นข้อมูลส่วนบุคคลของลูกค้า ถูกจัดเก็บเป็นอย่างดีแม้แต่บุคลากรภายในที่ไม่มีส่วนเกี่ยวข้องก็ไม่มีโอกาสล่วงรู้ข้อมูลได้