بناء المصادقة أم شراؤها: الفاتورة التي لا تراها قادمة
المصادقة هي الميزة التي يجزم كل مهندس أنه قادر على بنائها في عطلة نهاية أسبوع، وهم محقّون. يمكنك بناء نموذج تسجيل دخول، وجدول مستخدمين، وبريد إعادة تعيين كلمة المرور بحلول مساء الأحد. عطلة نهاية الأسبوع حقيقية. لكن عطلة نهاية الأسبوع ليست التكلفة. التكلفة هي كل ما يأتي بعدها، وفق جدول زمني لا تحدّده أنت، لنظام لا يمكنك إيقافه أبداً.
الجزء الذي تظنه هو المهمة
بريد إلكتروني وكلمة مرور. جدول جلسات. رابط "نسيت كلمة المرور" يرسل رمزاً بالبريد. تسجيل دخول اجتماعي إن كنت متحمساً للإتقان. هذا فعلاً عطلة نهاية أسبوع، ولو كانت هذه هي المهمة كاملةً لوجب عليك بناؤها بلا تردد. لكنها ليست المهمة كاملةً، وأنت تعرف أنها ليست كذلك، ولهذا تقرأ مقالاً عن البناء مقابل الشراء بدلاً من أن تبنيه فحسب.
الفاتورة التي لا تراها قادمة
أنت الآن تملك سطح هجوم أمنياً، بشكل دائم. تجزئة كلمات المرور، وإعادة تجزئتها لكل مستخدم في اليوم الذي تدرك فيه أن معامل تكلفة bcrypt لديك كان مضبوطاً لعتاد عام 2019. تحديد المعدل وإقفال الحسابات. حشو بيانات الاعتماد، لأن نقطة نهاية تسجيل الدخول لديك تنضم إلى كل قائمة لإعادة تشغيل بيانات الاختراقات خلال شهر من الإطلاق. والأهم: المسؤولية. في اليوم الذي تخزّن فيه بيانات الاعتماد تصبح هدفاً، ويتوقف الاختراق عن كونه خطراً مجرّداً في عرض تسعير شخص آخر. إنه حادثتك أنت، وبريد الإفصاح الخاص بك، وثقة عملائك، وربما جهتك التنظيمية.
يحلّ عمل البروتوكولات لحظة بيعك لأي جهة جادة. SSO للمؤسسات يعني SAML، وSAML يعني التحقق من توقيع XML، وهو صنف خاص به من ثغرات CVE (أنت حقاً لا تريد أن تلتقي بالتفاف التوقيع في الإنتاج؛ المزيد عن ذلك هنا). SCIM يعني بناء التزويد وإلغاء التزويد، وإلغاء التزويد ضابط أمني: أخطئ فيه ويحتفظ موظف مفصول بصلاحياته. MFA يعني التسجيل، ورموز الاسترداد، وطابور الدعم حين يفقد أحدهم هاتفه. سجلات التدقيق تعني الاحتفاظ وإثبات عدم العبث، لأن مدقّق SOC 2 لدى العميل سيسأل، و"نسجّل في ملف ما في مكان ما" ليس جواباً.
الذيل التشغيلي لا ينتهي أبداً. تدوير المفاتيح وJWKS. إبطال الجلسات الذي يعمل فعلاً عبر الأجهزة. إبطال الرموز. والمناوبة، من أجل النظام الوحيد في حزمتك الذي إذا تعطّل أخذ كل شيء معه: لا أحد يسجّل الدخول، ولا استدعاء لواجهة برمجة التطبيقات يُصادَق عليه، ومنتجك كله صفحة خطأ 500. المصادقة من المستوى صفر. أنت توقّع على إبقاء نظام أمني من المستوى صفر يعمل إلى الأبد، بالعدد نفسه من الموظفين الذي كنت ستنفقه على منتجك الفعلي.
ذيل الامتثال سنوي. SOC 2 وISO 27001 واستبيان الأمان لعميل محتمل: كلٌّ منها يسأل، بالتفصيل، عن كل بند أعلاه. المدقّقون لا يسحرهم قول "بنينا حلّنا بأنفسنا". شراء المصادقة يتيح لك الإشارة إلى ضوابط المورّد؛ أما بناؤها فيجعل تلك الضوابط مسؤوليتك أنت لتوثيقها وإثباتها والدفاع عنها، كل عام.
متى يكون البناء هو القرار الصائب فعلاً
هذا ليس عرضاً يقول "اشترِ دائماً"، لأن ذلك سيكون غير صادق وسترى من خلاله مباشرةً. ابنِ مصادقتك الخاصة حين:
- تكون أداة داخلية صغيرة خلف VPN، وحفنة من المستخدمين، ولا سطح امتثال. عطلة نهاية الأسبوع هي فعلاً المهمة كاملةً.
- تكون المصادقة هي منتجك. إن كنت تبني شركة هوية، فابنِ الهوية. إنها عامل تميّزك، لا عبئك.
- تكون لديك متطلبات غير اعتيادية فعلاً لا يناسبها أي موفّر، و فريق أمان مخصّص سيتولّى النتيجة طوال عمرها بالكامل. لاحظ نصفَي تلك الجملة. الفريق هو النصف المكلف.
خارج تلك الحالات تكون الحسابات أبسط مما تبدو. تكلفة "البناء" لم تكن قط عطلة نهاية الأسبوع الأولى. إنها الملكية الدائمة لنظام حرج أمنياً لا يجعل منتجك أفضل بشيء، بل أكثر مِلكاً لك فحسب.
إعادة التأطير الصادقة
بناء المصادقة لا يجعل منتجك أكثر قيمةً لدى أي عميل واحد. لم يشترِ أحد قط برمجياتك لأنك كتبت بنفسك فحص توقيع SAML. كل ما يفعله هو تحويل المصادقة من مشكلة شخص آخر إلى مشكلتك أنت، إلى الأبد، وإنفاق الجهد الهندسي الذي كان بإمكانك توجيهه إلى الشيء الذي يدفع الناس مقابله فعلاً.
الاعتراض المعتاد على الشراء، وهو أن موفّري المصادقة يتقاضون ثروة لتفعيل ميزات المؤسسات، اعتراض حقيقي. لكنه جدال حول أي مورّد، لا حول البناء مقابل الشراء. جزء كبير من تلك الفاتورة ضريبة ميزات لست مضطراً لدفعها. اشترِ مصادقة تتضمن SSO وSCIM وMFA وسجلات التدقيق دون بوابة رسوم لكل اتصال، وعندها يجيب سؤال البناء مقابل الشراء عن نفسه في معظمه.
قبل أن تنفق دورة تطوير كاملة على نظام تسجيل دخول، يجدر بك أن ترى بالضبط ما الذي سيطلبه منه عملاء المؤسسات. إليك ما هو مُضمَّن، في كل خطة.