"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > إتقان جانغو: بناء واجهة برمجة تطبيقات مصادقة المستخدم الآمنة من الصفر

إتقان جانغو: بناء واجهة برمجة تطبيقات مصادقة المستخدم الآمنة من الصفر

تم النشر بتاريخ 2024-08-31
تصفح:445

``## اليوم الرابع
لقد مرت أربعة أيام بالفعل على تحدي البرمجة #100daysofMiva. ???

؟ الغوص في جانغو: بناء واجهة برمجة تطبيقات آمنة لمصادقة المستخدم من الصفر!

هل أنت مستعد للارتقاء بمهاراتك في جانغو إلى المستوى التالي؟ ؟ في هذا البرنامج التعليمي، سأرشدك خلال إنشاء واجهة برمجة تطبيقات قوية لمصادقة المستخدم باستخدام Django. سواء كنت مطورًا متمرسًا أو بدأت للتو، سيرشدك هذا الدليل خطوة بخطوة خلال إعداد تسجيل المستخدم وتسجيل الدخول والمصادقة المستندة إلى الرمز المميز.

بحلول نهاية هذه الجلسة، سيكون لديك فهم قوي لكيفية:

    إعداد مشروع Django وتكوين الحزم الأساسية
  1. إنشاء وتخصيص وحدات التسلسل لبيانات المستخدم
  2. إنشاء طرق عرض للتعامل مع تسجيل المستخدم والمصادقة
  3. تنفيذ المصادقة المستندة إلى الرمز المميز للوصول الآمن إلى واجهة برمجة التطبيقات
  4. انضم إلينا ونحن نحول اللوحة الفارغة إلى نظام مصادقة قوي، ونفتح إمكانيات جديدة في رحلة Django الخاصة بك! ??

هيا بنا نتعلم البرمجة! ?✨

Mastering Django: Building a Secure User Authentication API from Scratch

الخطوة 1: إعداد بيئة Django الخاصة بك:

للقيام بذلك، يجب تثبيت

python: تأكد من تثبيت Python عن طريق تشغيل:
ماك/لينكس: غالبًا ما يتم تثبيت Python مسبقًا. يمكنك التحقق عن طريق تشغيل:

Mastering Django: Building a Secure User Authentication API from Scratch أو

Mastering Django: Building a Secure User Authentication API from Scratch إذا لزم الأمر، قم بتثبيت Python عبر Homebrew (macOS) أو مدير الحزم (Linux):

Mastering Django: Building a Secure User Authentication API from Scratch

الويندوز:

    قم بتنزيل وتثبيت بايثون من python.org.
  • تأكد من تحديد المربع لإضافة Python إلى المسار الخاص بك أثناء التثبيت.
الخطوة 2. إعداد بيئة افتراضية:

ماك/لينكس:

إنشاء وتفعيل بيئة افتراضية:

Mastering Django: Building a Secure User Authentication API from Scratch

الويندوز:

إنشاء وتفعيل بيئة افتراضية:

Mastering Django: Building a Secure User Authentication API from Scratch

الخطوة 3. تثبيت جانغو والحزم

الآن ما هو الإطار بدون حزمه؟...دعونا نثبت الحزم التي سنحتاجها.؟

مع تنشيط البيئة الافتراضية، تكون أوامر تثبيت Django والحزم الإضافية هي نفسها عبر جميع أنظمة التشغيل:

Mastering Django: Building a Secure User Authentication API from Scratch توضيح:
`

  1. djangorestframework: هذه مجموعة أدوات قوية ومرنة لبناء واجهات برمجة تطبيقات الويب باستخدام Django.
  2. djangorestframework-simplejwt: توفر هذه الحزمة مصادقة JSON Web Token (JWT)، والتي تُستخدم بشكل شائع لمصادقة API الآمنة.
الخطوة 4. إنشاء وتكوين مشروع جانغو

ماك/لينكس/ويندوز:

إنشاء مشروع وتطبيق Django:

Mastering Django: Building a Secure User Authentication API from Scratch دعونا نبسط الأمور الضرورية:

  1. startproject1: يقوم هذا الأمر بإنشاء مشروع Django جديد. المشروع عبارة عن مجموعة من الإعدادات لمثيل Django، بما في ذلك تكوين قاعدة البيانات والخيارات الخاصة بـ Django والإعدادات الخاصة بالتطبيق.
  2. startapp: يؤدي هذا إلى إنشاء تطبيق جديد داخل المشروع. التطبيقات هي مكونات مشروعك التي تتعامل مع وظائف محددة (على سبيل المثال، إدارة المستخدم).
الخطوة 5. تحديث إعدادات المشروع

جميع أنظمة التشغيل:

تعديل settings.py ليشمل تطبيقك والحزم المثبتة.

الملف: auth_project/settings.py

Mastering Django: Building a Secure User Authentication API from Scratch

الشرح هل لنا؟:

INSTALLED_APPS: هذا هو المكان الذي تسجل فيه تطبيقاتك وحزم الطرف الثالث. هنا، يمكنك إضافة Rest_framework لوظيفة API، وrest_framework_simplejwt لمصادقة JWT، والمستخدمين (التطبيق الذي أنشأته) لإدارة المهام المتعلقة بالمستخدم.

لا بأس ألا تعرف كل الخطوات مرة واحدة...الأمر يتطلب التدريب فقط، وستتمكن من تنفيذها بشكل صحيح

أتمنى المتابعة...الأمر ليس صعبًا إنه معقد؟

(لا أعرف إذا كان ذلك قد نجح؟)...

هل ننتقل...؟

ابقوا أعينكم من هنا يا رفاق؟

الخطوة 6. إنشاء المسلسلات

الملف: users/serializers.py

Mastering Django: Building a Secure User Authentication API from Scratch

توضيح:

    **المتسلسلات**: في Django REST Framework، يتم استخدام المتسلسلات لتحويل أنواع البيانات المعقدة (مثل نماذج Django) إلى JSON، والعكس صحيح.
  1. **RegisterSerializer**: يعالج هذا التسلسل المخصص تسجيل المستخدم. ويتضمن حقولًا مثل اسم المستخدم وكلمة المرور والبريد الإلكتروني وما إلى ذلك.
  2. **validate_password**: التأكد من أن كلمة المرور تلبي معايير أمان معينة.
  3. ** طريقة التحقق من الصحة **: التحقق المخصص للتحقق من تطابق حقلي كلمة المرور.
  4. **طريقة الإنشاء**: هذه الطريقة مسؤولة عن إنشاء المستخدم الجديد وحفظه.
الخطوة 7: إنشاء طرق العرض

الملف: users/views.py

Mastering Django: Building a Secure User Authentication API from Scratch توضيح:

    **العروض**: في Django، تتعامل العروض مع منطق معالجة طلبات المستخدم.
  1. **عرض التسجيل**: يعالج هذا العرض تسجيل المستخدم.
  2. **CreateAPIView**: طريقة عرض مدمجة للتعامل مع إنشاء سجلات جديدة. هنا، يتم استخدامه لإنشاء مستخدم جديد.
  3. **permission_classes**:allowAny يعني أن نقطة النهاية هذه يمكن لأي شخص الوصول إليها، حتى المستخدمين غير المصادقين، وهو أمر ضروري للتسجيل.
الخطوة 8: إعداد عناوين URL

الملف: users/urls.py

هذا الرمز مكتوب في عنوان URL للتطبيق

Mastering Django: Building a Secure User Authentication API from Scratch

توضيح:

أنماط عناوين URL: تحدد المسارات التي تعين طرق العرض.

**تسجيل/**: سيتعامل عنوان URL هذا مع تسجيل المستخدم.

ثم انتقل إلى ملف مشروعك: **auth_project/urls.py**

واكتب هذا...؟

Mastering Django: Building a Secure User Authentication API from Scratch

توضيح:

    **include('users.urls')**: يتضمن عناوين URL لتطبيق المستخدمين.
  1. مشاهدات JWT: TokenObtainPairView: يُرجع هذا العرض زوجًا من رموز الوصول والتحديث. TokenRefreshView: يتيح هذا العرض للعملاء تحديث رمز الوصول باستخدام رمز التحديث.
  2. **TokenObtainPairView**: يُرجع هذا العرض زوجًا من رموز الوصول والتحديث.
  3. **TokenRefreshView**: يتيح هذا العرض للعملاء تحديث رمز الوصول باستخدام رمز التحديث.
إلى الخطوة التالية، يمكنك الراحة جيدًا؟...لا يوجد ضغط من هنا فصاعدًا هيهي..

الخطوة 9: تشغيل عمليات الترحيل

يأمر:

Mastering Django: Building a Secure User Authentication API from Scratch

الوظيفة/الغرض من القيام بذلك هو تطبيق التغييرات على مخطط قاعدة البيانات الخاصة بك بناءً على النماذج والحقول التي حددتها في مشروعك. تلك التي قمنا بتنظيمها أعلاه؟

بمعنى آخر، يحافظ على تحديث المشروع

الخطوة 10: تشغيل الخادم والاختبار

يأمر:

Mastering Django: Building a Secure User Authentication API from Scratch

يبدأ هذا الأمر خادم تطوير Django، مما يجعل مشروعك متاحًا محليًا. (الميناء المحلي الخاص بك)

الآن دعونا نرى ما فعلناه حتى الآن...

الاختبار باستخدام Postman أو cURL (يمكنك تنزيل هذا الامتداد من IDE الخاص بك)

استخدام ساعي البريد

  1. افتح Postman (أو أي أداة اختبار API تفضلها).

  2. إعداد طلب جديد

    1. عنوان URL: http://127.0.0.1:8000/api/auth/register/
  • 2. الطريقة: نشر
  1. في علامة تبويب النص، حدد التنسيق الخام وتنسيق JSON.

  2. أدخل بيانات JSON التالية:

    جسم:

Mastering Django: Building a Secure User Authentication API from Scratch

    انقر على إرسال.
بالنسبة لهذا الجزء، يتمتع إطار عمل Django-Rest بواجهة مستخدم سهلة الاستخدام، لذا فمن الأسهل التنقل هنا أكثر من الآخرين

إذا نجحت، فيجب أن تتلقى استجابة برمز حالة HTTP 201 تم إنشاؤه واستجابة JSON تحتوي على بيانات المستخدم.

اختبار نقطة نهاية مصادقة الرمز المميز

للتأكد من عمل مصادقة JWT، اختبر نقطة نهاية الرمز المميز.

استخدام ساعي البريد:

    إعداد طلب جديد: الطريقة: مشاركة عنوان URL: http://127.0.0.1:8000/api/token/
  1. في علامة تبويب النص، حدد التنسيق الخام وتنسيق JSON.
  2. أدخل بيانات JSON التالية

Mastering Django: Building a Secure User Authentication API from Scratch

4، انقر فوق إرسال.

يجب أن تتلقى استجابة JSON مع رموز الوصول والتحديث:

Mastering Django: Building a Secure User Authentication API from Scratch

**

نصائح لاستكشاف الأخطاء وإصلاحها

**

الخادم لا يبدأ: تأكد من أنك في الدليل الصحيح وقمت بتنشيط بيئتك الافتراضية.
أخطاء نقطة النهاية: تحقق جيدًا من مسارات عنوان URL وتأكد من إعداد تطبيق Django بشكل صحيح باستخدام عناوين URL.
استجابات غير صالحة: تأكد من تكوين نقاط نهاية API والمتسلسلات بشكل صحيح.
باتباع هذه الخطوات، يجب أن تكون قادرًا على تشغيل خادم تطوير Django بنجاح، واختبار نقطة نهاية التسجيل، والتحقق من المصادقة المستندة إلى الرمز المميز.

بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/mayowakalejaiye/mastering-django-building-a-secure-user-authentication-api-from-scratch-4ma3?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ Study_golang@163 .com لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3