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

كيفية تنفيذ oAuth مع PKCE لتكامل الطرف الثالث في رد الفعل

تم النشر بتاريخ 2024-11-07
تصفح:446

أثناء تنفيذ oAuth لتكامل الجهات الخارجية، عثرت على بعض المعلومات التي لم يتم تحديثها لفترة طويلة. أحاول هنا التقاط تجربتي وكيفية عملها

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

التدفق:

How to implement oAuth with PKCE for third-party integration in react

يعمل التدفق تقريبًا كما هو موضح أعلاه.

إذن ما هي المشكلة:

عادةً عندما تحاول الحصول على الكود وcode_verifier من موقع ويب تابع لجهة خارجية مباشرةً، قد تواجه مشكلة CORS. هذا هو المتوقع.

كيفية حلها؟

  1. تحقق مع مزود الطرف الثالث - إذا كان بإمكانهم إدراج موقع الويب الخاص بك في القائمة البيضاء، فهذا رائع. لا تحتاج إلى واجهة خلفية على الإطلاق

  2. إذا لم تنجح القائمة البيضاء، فقد تحتاج إلى واجهة خلفية للعمل كوكيل عكسي لك. في حالتنا، استخدمنا إعدادًا بسيطًا على الآلة الكاتبة والذي يعمل بمثابة وكيل لمكالمتنا واستخدمناه كواجهة خلفية للوكيل العكسي. يمكنك تحقيق ذلك من خلال إعداد الواجهة الخلفية لديك أيضًا.

لماذا يضرب CORS؟

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

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

ما المكتبة التي استخدمتها لإنجاز ذلك بسهولة في الرد؟

https://github.com/authts/react-oidc-context
؟ هذا. يوفر هذا التكوين كسياق ويدعم أيضًا webstoragestatestore وهو أمر رائع.

هل لديك المزيد من الأسئلة؟

الرد هنا . يسعدني أن أساعدك إذا استطعت :)

سعيد بالبرمجة..

بيان الافراج تتم إعادة طبع هذه المقالة على: https://dev.to/konfydev/how-to-implement-oauth-with-pkce-for-third-party-party-tegration-in-react-3jc3؟1 إذا كان هناك أي انتهاك ، يرجى الاتصال [email protected] لحذفها.
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3