كيفية التعامل مع مصادقة المستخدم والتعديل غير المشروع في لغات البرمجة النصية؟

StackOverflow https://stackoverflow.com/questions/1365254

سؤال

أقوم ببناء تطبيق سطح مكتب مركزي باستخدام Python/Wxpython. أحد المتطلبات هو مصادقة المستخدم ، التي أحاول تنفيذها باستخدام LDAP (على الرغم من أن هذا ليس إلزاميًا).

سيكون مستخدمو النظام مهندسين ميكانيكيين وكهربائيين يصنعون ميزانيات ، وستكون المشكلة الأكبر هي التجسس الصناعي. إنها مشكلة شائعة تحدث التسريبات بشكل شائع من القاع على طرق غير رسمية ، وقد يشكل ذلك مشاكل. يتم إعداد النظام بطريقة يمكن لكل مستخدم الوصول إلى الجميع والمعلومات التي يحتاجها فقط ، بحيث لا يوجد شخص واحد سوى الأشخاص في الأعلى لديه معلومات مالية في المشروع بأكمله.

المشكلة هي أنه ، بكل طريقة يمكنني التفكير في تنفيذ نظام المصادقة ، فإن انفتاح بيثون يجعلني أفكر في طريقة واحدة على الأقل لتجاوز/الحصول على معلومات معقولة من النظام ، لأن "التجميع" py2exe هو الأقرب الذي يمكنني الوصول إليه من الكود على Windows.

أنا لا أحاول حقًا يخفي الكود ، ولكنه يجعل روتين المصادقة آمنًا من تلقاء نفسه ، يجعله بطريقة لا يعني الوصول إلى الكود القدرة على الوصول إلى التطبيق. شيء واحد أردت إضافته ، كان نوعًا من توقيع التعليمات البرمجية على روتين الوصول ، بحيث يمكن للمستخدم التأكد من أنه لا يقوم بتشغيل تطبيق عميل معدّل.

إحدى الطرق التي فكرت بها في تجنب ذلك هو صنع ملف C وحدة للمصادقة ، لكنني أفضل عدم القيام بذلك.

بالطبع ، هذا السؤال يتغير الآن وليس فقط "هل يمكن لأي شخص أن يوجهني في الاتجاه الصحيح حول كيفية بناء نظام مصادقة آمن يعمل على Python؟ هل يوجد شيء من هذا القبيل بالفعل؟" ، ولكن "كيف تصلب البرمجة النصية (بيثون) ضد التعديل غير المشروع؟ "

هل كانت مفيدة؟

المحلول

ما مدى ضرر المستخدمين؟ حقًا.

بالضبط ما مدى ضارة؟

إذا كان المستخدمون الخاصون بك من أجهزة الاجتماعية الشريرة ولا يمكن الوثوق بهم بحل سطح المكتب ، فعندئذٍ لا تبني حل سطح المكتب. بناء موقع ويب.

إذا كان المستخدمون مستخدمون عاديون ، فسوف يقومون بتجميع البيئة عن طريق تثبيت الفيروسات والبرامج الضارة والألواح الرئيسية من مواقع الإباحية قبل أن يحاولوا (أ) تعلم Python (ب) تعلم كيفية عمل أمنك و (ج) بذل جهد صادق في كسرها.

إذا كان لديك بالفعل مشكلات أمنية لسطح المكتب (أي السلامة العامة ، العسكرية ، إلخ) ، ثم إعادة التفكير في استخدام سطح المكتب.

خلاف ذلك ، استرخ ، افعل الشيء الصحيح ، ولا تقلق بشأن "البرمجة النصية".

برامج C ++ أسهل في الاختراق لأن الناس كسولون ويسمحون بحقن SQL.

نصائح أخرى

ربما:

  1. يدخل المستخدم بيانات اعتماده في عميل سطح المكتب.
  2. يقول العميل للخادم: "مرحبًا ، اسم المستخدم الخاص بي وكلمة المرور الخاصة بي كلمة المرور".
  3. الخادم يتحقق من هذه.
  4. يقول الخادم للعميل: "مرحبًا ، اسم المستخدم. إليك الرمز المميز السري الخاص بك: ..."
  5. بعد ذلك ، يستخدم العميل الرمز المميز السري مع اسم المستخدم "لتوقيع" الاتصالات مع الخادم.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top