التحقق من صحة البيانات
في مجال الحوسبة ، تُعرف عملية التحقق من صحة البيانات أو التحقق من صحة المدخلات بأنها عملية ضمان خضوع البيانات لعملية تنظيف للتأكد من جودتها ، أي أنها صحيحة ومفيدة. وتستخدم هذه العملية إجراءات روتينية، تُسمى غالبًا "قواعد التحقق" أو "قيود التحقق" أو "إجراءات الفحص"، للتحقق من صحة البيانات المدخلة إلى النظام، وجدواها، وأمانها. ويمكن تطبيق هذه القواعد من خلال الإمكانيات الآلية لقاموس البيانات ، أو من خلال تضمين منطق التحقق الصريح في برنامج التطبيق الخاص بالحاسوب وتطبيقه.
وهذا يختلف عن التحقق الرسمي ، الذي يحاول إثبات أو دحض صحة الخوارزميات لتنفيذ مواصفات أو خاصية معينة.
ملخص
يهدف التحقق من صحة البيانات إلى توفير ضمانات محددة جيدًا لمدى ملاءمة البيانات واتساقها في تطبيق أو نظام آلي. يمكن تعريف قواعد التحقق من صحة البيانات وتصميمها باستخدام منهجيات متنوعة، ونشرها في سياقات مختلفة. [ 1 ] ويمكن تطبيقها باستخدام قواعد سلامة البيانات التصريحية ، أو قواعد العمل القائمة على الإجراءات . [ 2 ]
لا تضمن ضمانات التحقق من صحة البيانات بالضرورة دقتها، وقد تُقبل أخطاء إدخال البيانات ، كالأخطاء الإملائية، على أنها صحيحة. ويمكن تطبيق ضوابط كتابية و/أو حاسوبية أخرى للحد من عدم الدقة في النظام.
أنواع مختلفة
عند تقييم أساسيات التحقق من صحة البيانات، يمكن وضع تعميمات فيما يتعلق بالأنواع المختلفة للتحقق من الصحة وفقًا لنطاقها وتعقيدها والغرض منها.
على سبيل المثال:
- التحقق من صحة نوع البيانات؛
- التحقق من النطاق والقيود؛
- التحقق من صحة الكود والمراجع المتبادلة؛
- التحقق المنظم ؛ و
- التحقق من الاتساق
التحقق من نوع البيانات
يتم عادةً إجراء التحقق من نوع البيانات على حقل بيانات واحد أو أكثر من الحقول البسيطة.
أبسط أنواع التحقق من صحة نوع البيانات هو التحقق من أن الأحرف الفردية المقدمة من خلال إدخال المستخدم تتوافق مع الأحرف المتوقعة لنوع بيانات أولي واحد أو أكثر كما هو محدد في لغة برمجة أو آلية تخزين واسترجاع البيانات.
على سبيل المثال، قد يتطلب حقل الأعداد الصحيحة إدخال الأحرف من 0 إلى 9 فقط.
فحص بسيط للنطاق والقيود
قد تتحقق عمليات التحقق البسيطة من النطاق والقيود من اتساق المدخلات مع نطاق أدنى/أقصى، أو مع اختبار لتقييم سلسلة من الأحرف، مثل اختبار واحد أو أكثر على التعبيرات النمطية. على سبيل المثال، قد يُشترط أن تكون قيمة العداد عددًا صحيحًا غير سالب، وقد يُشترط أن تستوفي كلمة المرور حدًا أدنى من الطول وأن تحتوي على أحرف من فئات متعددة.
التحقق من الرموز والمراجع المتبادلة
يشمل التحقق من صحة الكود والمراجع المتبادلة عمليات للتحقق من توافق البيانات مع قاعدة أو أكثر من القواعد أو المتطلبات أو المجموعات الخارجية ذات الصلة بمؤسسة أو سياق أو مجموعة معينة من الافتراضات الأساسية. وقد تتضمن قيود الصلاحية الإضافية هذه مراجعة البيانات المُقدمة مع جدول بحث معروف أو خدمة معلومات دليل مثل LDAP .
على سبيل المثال، قد يكون من الضروري إدخال رمز الدولة الذي يقدمه المستخدم لتحديد منطقة جغرافية سياسية حالية.
فحص منظم
يُتيح التحقق المُهيكل دمج أنواع أخرى من التحقق، إلى جانب عمليات معالجة أكثر تعقيدًا. قد تشمل هذه العمليات المعقدة اختبار القيود الشرطية لكائن بيانات معقد كامل أو مجموعة من عمليات المعالجة داخل النظام.
التحقق من الاتساق
يضمن التحقق من الاتساق أن تكون البيانات منطقية. على سبيل المثال، يمكن منع تاريخ تسليم الطلب من أن يسبق تاريخ شحنه.
مثال
تعد أنواع متعددة من التحقق من صحة البيانات ذات صلة بأرقام ISBN المكونة من 10 أرقام قبل عام 2007 (تطلب إصدار 2005 من ISO 2108 أن تحتوي أرقام ISBN على 13 رقمًا من عام 2007 فصاعدًا [ 3 ] ).
- الحجم. يجب أن يتكون رقم ISBN قبل عام 2007 من 10 أرقام، مع وجود فواصل أو مسافات اختيارية تفصل بين أجزائه الأربعة.
- التحقق من التنسيق. يجب أن تكون كل من الأرقام التسعة الأولى من 0 إلى 9، ويجب أن يكون الرقم العاشر إما من 0 إلى 9 أو X.
- رقم التحقق . للكشف عن أخطاء النسخ التي تم فيها تغيير الأرقام أو تبديلها، يجب أن يتطابق الرقم الأخير من رقم ISBN قبل عام 2007 مع نتيجة صيغة رياضية تتضمن الأرقام التسعة الأخرى ( أرقام التحقق ISBN-10 ).
أنواع التحقق
- عمليات التحقق المسموح بها من الأحرف
- تُستخدم عمليات التحقق للتأكد من وجود الأحرف المتوقعة فقط في الحقل. على سبيل المثال، قد يسمح حقل رقمي بالأرقام من 0 إلى 9، والفاصلة العشرية، وربما علامة الطرح أو الفواصل. وقد يمنع حقل نصي، مثل الاسم الشخصي، الأحرف المستخدمة في التنسيق . وقد يتطلب عنوان البريد الإلكتروني علامة @ واحدة على الأقل، بالإضافة إلى تفاصيل هيكلية أخرى. تُعدّ التعابير النمطية من الطرق الفعّالة لتنفيذ هذه التحققات.
- إجمالي الدفعة
- يتحقق النظام من السجلات المفقودة. يمكن جمع القيم الرقمية لجميع السجلات في دفعة واحدة. يُدخل إجمالي الدفعة، ويتحقق النظام من صحة الإجمالي، على سبيل المثال، جمع قيمة حقل "التكلفة الإجمالية" لعدد من المعاملات.
- التحقق من عدد الأفراد
- يتحقق هذا الشرط من وجود عدد صحيح من السجلات المرتبطة بكل سجل. على سبيل المثال، إذا صُنِّف سجل جهة اتصال على أنه "عميل"، فيجب أن يكون له طلب واحد على الأقل مرتبط به (عدد السجلات المرتبطة > 0). قد تتعقد هذه القاعدة بشروط إضافية. على سبيل المثال، إذا صُنِّف سجل جهة اتصال في قاعدة بيانات الرواتب على أنه "موظف سابق"، فيجب ألا يكون له أي مدفوعات رواتب مرتبطة به بعد تاريخ انتهاء الخدمة (عدد السجلات المرتبطة = 0).
- أرقام التحقق
- يُستخدم للبيانات الرقمية. لدعم اكتشاف الأخطاء، تتم إضافة رقم إضافي إلى رقم يتم حسابه من الأرقام الأخرى.
- فحوصات الاتساق
- يتحقق من الحقول للتأكد من تطابق البيانات في هذه الحقول، على سبيل المثال، إذا كان تاريخ انتهاء الصلاحية في الماضي، فإن الحالة ليست "نشطة".
- فحوصات الاتساق بين الأنظمة
- يقارن البيانات في أنظمة مختلفة لضمان اتساقها. قد تمثل الأنظمة نفس البيانات بشكل مختلف، وفي هذه الحالة تتطلب المقارنة تحويلًا (على سبيل المثال، قد يخزن أحد الأنظمة اسم العميل في حقل اسم واحد كـ 'Doe, John Q'، بينما يستخدم نظام آخر الاسم الأول 'John' والاسم الأخير 'Doe' والاسم الأوسط 'Quality').
- فحوصات نوع البيانات
- يتحقق من مطابقة المدخلات مع البيانات المكتوبة. على سبيل المثال، قد يرفض مربع إدخال يقبل البيانات الرقمية الحرف 'O'.
- التحقق من وجود الملف
- يتحقق هذا الإجراء من وجود ملف بالاسم المحدد. ويُعد هذا التحقق ضروريًا للبرامج التي تستخدم معالجة الملفات.
- فحص التنسيق
- يتحقق من أن البيانات بتنسيق محدد (قالب)، على سبيل المثال، يجب أن تكون التواريخ بتنسيق YYYY-MM-DD. يمكن استخدام التعابير النمطية لهذا النوع من التحقق.
- التحقق من الحضور
- يتحقق من وجود البيانات، على سبيل المثال، قد يُطلب من العملاء امتلاك عنوان بريد إلكتروني.
- فحص المدى
- يتحقق من أن البيانات تقع ضمن نطاق محدد من القيم، على سبيل المثال، يجب أن يكون الاحتمال بين 0 و 1.
- سلامة المرجع
- يمكن ربط القيم في جدولين من جداول قاعدة البيانات العلائقية باستخدام المفتاح الخارجي والمفتاح الأساسي. إذا لم تكن القيم في حقل المفتاح الخارجي مقيدة بآليات داخلية، فيجب التحقق من صحتها لضمان أن الجدول المرجعي يشير دائمًا إلى صف في الجدول المُشار إليه.
- التدقيق الإملائي والنحوي
- يبحث عن الأخطاء الإملائية والنحوية.
- التحقق من التفرد
- يتحقق من أن كل قيمة فريدة. يمكن تطبيق ذلك على عدة حقول (مثل العنوان، الاسم الأول، اسم العائلة).
- التحقق من البحث في الجدول
- تقارن عملية البحث في الجدول البيانات بمجموعة من القيم المسموح بها.
إجراءات ما بعد التحقق
- إجراءات إنفاذ القانون
- عادةً ما يرفض إجراء الإنفاذ طلب إدخال البيانات، ويُلزم مُدخل البيانات بإجراء تغيير يُطابق البيانات المطلوبة. يُعدّ هذا الإجراء مناسبًا جدًا للاستخدام التفاعلي، حيث يقوم شخص حقيقي بإدخال البيانات من خلال الحاسوب. كما أنه فعّال أيضًا في تحميل البيانات على دفعات، حيث قد يُرفض إدخال ملف، ويتم إرسال مجموعة من الرسائل إلى مصدر الإدخال لتوضيح سبب الرفض.
- يتمثل شكل آخر من أشكال تطبيق القواعد في تغيير البيانات تلقائيًا وحفظ نسخة متوافقة بدلًا من النسخة الأصلية. يُعد هذا الأسلوب مناسبًا للتغييرات الشكلية، مثل تحويل إدخال مكتوب بأحرف كبيرة إلى إدخال مكتوب بأحرف باسكال، دون الحاجة إلى تدخل المستخدم. أما الاستخدام غير المناسب لتطبيق القواعد التلقائي فيتمثل في الحالات التي يؤدي فيها إلى فقدان معلومات العمل، كحفظ تعليق مختصر إذا كان طوله أطول من المتوقع، وهو أمر غير مرغوب فيه عادةً لأنه قد يؤدي إلى فقدان بيانات مهمة.
- إجراء استشاري
- تسمح الإجراءات الاستشارية عادةً بإدخال البيانات دون تغيير، ولكنها ترسل رسالة إلى الجهة المصدرية تُشير إلى مشكلات التحقق التي وُوجهت. يُعد هذا الإجراء مناسبًا للأنظمة غير التفاعلية، وللأنظمة التي لا يُعد التغيير فيها بالغ الأهمية للعمل، ولعمليات تنظيف البيانات الموجودة، ولعمليات التحقق من صحة عملية الإدخال.
- إجراء التحقق
- تُعدّ إجراءات التحقق حالات خاصة من الإجراءات الاستشارية. في هذه الحالة، يُطلب من المستخدم التحقق من أن هذه البيانات هي ما يرغب فعلاً في إدخاله، في ضوء اقتراح مخالف. هنا، تقترح خطوة التحقق بديلاً (على سبيل المثال، قد يُظهر فحص عنوان بريدي تنسيقًا مختلفًا لهذا العنوان أو يقترح عنوانًا مختلفًا تمامًا). في هذه الحالة، يُفضّل منح المستخدم خيار قبول التوصية أو الاحتفاظ ببياناته. هذه ليست عملية تحقق صارمة، وهي مفيدة لجمع عناوين إلى موقع جديد أو إلى موقع غير مدعوم حاليًا من قواعد بيانات التحقق.
- سجل التحقق
- حتى في الحالات التي لم يكشف فيها التحقق من صحة البيانات عن أي مشكلات، يُعدّ توفير سجلّ لعمليات التحقق التي أُجريت ونتائجها أمرًا بالغ الأهمية. يُساعد هذا في تحديد أيّ عمليات تحقق مفقودة من صحة البيانات في ضوء مشكلات البيانات، وفي تحسين الأداء.
التحقق والأمان
قد تؤدي حالات الفشل أو الإغفال في التحقق من صحة البيانات إلى تلفها أو إلى ثغرة أمنية . [ 4 ] يتحقق التحقق من صحة البيانات من ملاءمتها للغرض المقصود، [ 5 ] وأنها صحيحة ومعقولة ومنطقية وآمنة قبل معالجتها.
انظر أيضاً
- معالجة البيانات – جمع ومعالجة عناصر البيانات لإنتاج معلومات ذات مغزى
- التحقق من البيانات
- التثليث (العلوم الاجتماعية) – الجمع بين أساليب بحث متعددة
- التحقق والتدقيق – أساليب التحقق من مطابقة المتطلبات
- جودة البيانات – حالة المعلومات النوعية أو الكمية
- التحقق من صحة البرمجيات والتحقق من صحتها – عملية في إدارة مشاريع البرمجيات، واختبار البرمجيات، وهندسة البرمجيات
- التحقق من صحة البيانات ومطابقتها – تقنية لتصحيح القياسات في العمليات الصناعية
مراجع
- ↑ منهجية التحقق من صحة البيانات 1.0
- ↑ التحقق من صحة البيانات، سلامة البيانات، تصميم التطبيقات الموزعة باستخدام Visual Studio .NET
- ↑ الأسئلة الشائعة حول معيار ISBN الجديد. مؤرشف بتاريخ 10-06-2007 في Wayback Machine ISO .
- ↑ الفصل العاشر. التحقق من صحة البيانات
- ↑ التحقق من صحة البيانات بكفاءة أكبر مع Spotless
روابط خارجية
- التحقق من صحة البيانات ، OWASP
- التحقق من صحة المدخلات ، سلسلة أوراق الغش الخاصة بـ OWASP، github.com
- معالجة البيانات
- أمن البيانات
- جودة البيانات
