Governance الحوكمة
تتعلق بكيفية إدارة وتطوير واجهات برمجة التطبيقات (APIs) لضمان أمانها وفعاليتها. يمكنك التفكير في الحوكمة كنوع من النظام الذي يضمن أن كل شيء يتم بشكل مرتب ومنظم
فوائد الحوكمة
توفير التناسق:
تضمن الحوكمة أن جميع واجهات برمجة التطبيقات تُطور وتُختبر وتُنشَر بطريقة متسقة.
يعني ذلك أنه عندما يعمل فريقك على واجهة برمجة التطبيقات، يعرفون بالضبط ماذا يجب عليهم القيام به وكيف يفعلون ذلك.
تحديد التوقعات:
تحتاج إلى وضع قواعد واضحة لما هو مطلوب من الفريق الهندسي. على سبيل المثال:
ما هي متطلبات التوثيق؟
ما هي السياسات الخاصة بالتحقق من الهوية؟
كيف يجب التعامل مع النسخ المختلفة من الواجهات؟
توحيد العمليات:
يجب وضع عمليات قياسية لكيفية انتقال واجهات برمجة التطبيقات من مرحلة التطوير إلى الإنتاج.
هذا يعني أنه لا يمكن نشر أي واجهة برمجة التطبيقات دون المرور بعملية تحقق مناسبة.
مكونات الحوكمة
هناك عنصران رئيسيان في الحوكمة:
1. الوعي (Awareness)
معرفة واجهات برمجة التطبيقات الخاصة بك:
يجب أن تكون لديك رؤية شاملة لكل واجهات برمجة التطبيقات التي لديك.
تحتاج إلى معرفة لماذا توجد، من يمتلكها، وكيف تم توثيقها، وما هي الوظائف التي تقدمها.
فهم البنية التحتية:
يجب أن تعرف كل ما يتعلق بالبيئة التي تعمل فيها واجهات برمجة التطبيقات، بما في ذلك التطبيقات والبيانات والأجهزة.
التحكم في عملية النشر:
يجب أن يتم نشر واجهات برمجة التطبيقات بطرق معتمدة، ولا يُسمح بوجود واجهات "ظليلة" أو "غير مرخصة" (أي واجهات لم تتم الموافقة عليها).
2. السياسات والعمليات (Policy and Process)
تحديد السياسات:
كيف يتم تطوير واجهات برمجة التطبيقات؟
كيف يتم نشرها؟
ما هي متطلبات التوثيق والتصميم لكل واجهة؟
توثيق واجهات برمجة التطبيقات
توثيق واجهات برمجة التطبيقات هو جزء مهم من الحوكمة.
التوثيق الجيد ضروري:
إذا لم يكن لديك توثيق جيد، فقد يصبح من الصعب على الفرق الأخرى استخدام واجهات برمجة التطبيقات.
التوثيق الجيد يساعد في الأمان أيضاً، لأنه يوفر معلومات واضحة حول كيفية استخدام واجهة برمجة التطبيقات بشكل صحيح.
Open API Specification (OAS):
هذه هي المواصفة القياسية لصياغة وثائق واجهات برمجة التطبيقات.
يمكن أن تكون بصيغة YAML أو JSON وتساعد المطورين على فهم واجهة برمجة التطبيقات.
تقييم المخاطر
فهم المخاطر:
يجب أن تعرف ما هي البيانات التي يتم التعامل معها، من لديه الوصول إليها، وما هي الثغرات المحتملة.
تحديد خطة استجابة:
كيف ستستجيب إذا حدث هجوم على واجهة برمجة التطبيقات الخاصة بك؟
مثال عملي
تخيل أنك تعمل في شركة تطوير برمجيات ولديك واجهات برمجة تطبيقات خاصة بالتطبيقات التي تقوم بإنشائها. إذا لم يكن لديك حوكمة مناسبة، يمكن أن يكون لديك واجهات غير مرخصة تعمل في الخلفية (أي "ظليلة")، مما قد يعرض بيانات العملاء للخطر.
لكن إذا وضعت حوكمة قوية، ستضمن أن كل واجهة تمر بعملية التحقق المناسبة، وأن كل شخص في الفريق يعرف ما يجب القيام به. سيتم توثيق كل شيء بوضوح، مما يسهل على الآخرين فهم واجهات برمجة التطبيقات الخاصة بك واستخدامها بأمان.
Last updated