كيف يعمل OAuth · خرائط ذهنية
كيف يعمل OAuth. خريطة ذهنية قابلة للتحرير تضم فروعًا ملونة وأفكارًا فرعية وروابط. توضح الخطوط المنحنية العلاقات، وتظهر الأسهم حين يكون للاتجاه معنى.
يتيح OAuth لتطبيق أن يصل إلى بيانات خدمة أخرى نيابةً عن المستخدم دون أن يرى كلمة مروره إطلاقاً، عبر مبادلة الموافقة برمز قصير العمر.
كيف يعمل OAuth · خرائط ذهنية
لوحة MindMap التفاعلية لهذا الشرح — كل مسار وصف وسهم أعلاه جزء من مخطط QueryChart حقيقي يمكنك فتحه وتعديله.
كيفية قراءة الخريطة الذهنية
- ابدأ بالموضوع في المركز، ثم اتبع أحد الفروع الملونة لاستكشاف الأفكار المرتبطة به.
- توضح الخطوط المنحنية العلاقات، وتظهر الأسهم حين يكون للاتجاه معنى.
User consent
يجمع هذا الفرع “User clicks “Sign in with provider””, “The consent screen is the step most real flows hide: the user chooses exactly which permissions the app may use, such as “read profile” but not “post”.”.
Redirect & code
يجمع هذا الفرع “The redirect carries the client id, the requested scopes and a redirect URI. The user never hands their password to the client application.”, “Authorization server returns an authorization code to the client”.
Token exchange
يجمع هذا الفرع “The code is short-lived and useless by itself. The exchange proves the client is who it claims to be by presenting its registered client secret.”, “Authorization server issues the access token”.
Resource access
يجمع هذا الفرع “Access tokens expire after a short window. Long-lived sessions use a separate refresh token that can mint new access tokens without asking the user again.”, “Resource server validates the token and returns the user's data”, “User sees their data inside the app”.
روابط بين الفروع
كلمة مرور المستخدم تُعطى إلى خادم التفويض وحده، ولا يراها تطبيق العميل ولا خادم الموارد أبداً.
الموافقة (أي الصلاحيات) هي المنح الفعلي؛ ورمز الوصول هو ذلك المنح في صورة يقرؤها الحاسوب.
رمز التفويض قصير العمر ولا فائدة منه بلا سر تطبيق العميل: عاملان يحميان المبادلة.
رموز الوصول تنتهي صلاحيتها؛ ورموز التحديث تُصدر رموزاً جديدة بهدوء دون شاشة موافقة أخرى.
مهمة خادم الموارد الوحيدة هي التحقّق من الرمز، وهذا ما يبقي الأطراف مفكوكة الاقتران.
العلاقات الرئيسية والخلاصات
- كلمة مرور المستخدم تُعطى إلى خادم التفويض وحده، ولا يراها تطبيق العميل ولا خادم الموارد أبداً.
- الموافقة (أي الصلاحيات) هي المنح الفعلي؛ ورمز الوصول هو ذلك المنح في صورة يقرؤها الحاسوب.
- رمز التفويض قصير العمر ولا فائدة منه بلا سر تطبيق العميل: عاملان يحميان المبادلة.
- رموز الوصول تنتهي صلاحيتها؛ ورموز التحديث تُصدر رموزاً جديدة بهدوء دون شاشة موافقة أخرى.
- مهمة خادم الموارد الوحيدة هي التحقّق من الرمز، وهذا ما يبقي الأطراف مفكوكة الاقتران.
متى تستخدم هذا الشرح المرئي
- شرح سبب أمان «تسجيل الدخول عبر Google» لفريق المنتج، وبيان ما تطلبه شاشة الموافقة.
- اختيار مسار OAuth المناسب: مسار رمز التفويض المرسوم هنا مقابل المسار الضمني أو مسار بيانات اعتماد تطبيق العميل في سيناريوهات أخرى.
- تدقيق المسار الذي تسلكه فعلاً بيانات اعتماد المستخدم والرموز داخل تكاملك.
كيف تعمل
عدّل الموضوع المركزي
غيّر اسم الموضوع ليناسب مشروعك أو درسك.
وسّع الفروع
حرر الأفكار وأضف أمثلة أو ملاحظات.
اربط الأفكار ذات الصلة
ارسم روابط بين الفروع، واستخدم الأسهم عندما يكون الاتجاه مهمًا.
الأسئلة الشائعة
ما هو OAuth ولماذا وُجد؟
OAuth معيار للتفويض بالإنابة. فهو يتيح لتطبيق أن يصل إلى بيانات مستخدم على خدمة أخرى نيابةً عنه دون أن يرى التطبيق كلمة مرور المستخدم إطلاقاً. يصادق المستخدم مرة واحدة عند خادم التفويض ويوافق على أذونات محددة (الصلاحيات)؛ ويستلم التطبيق رمزاً يمكنه إنفاقه. وهذا الفصل بين المسؤوليات هو بالضبط ما تمثّله مجموعات المسارات الأربع في الشرح المرئي.
ما الفرق بين رمز التفويض ورمز الوصول؟
رمز التفويض قيمة وسيطة قصيرة العمر يستلمها تطبيق العميل بعد موافقة المستخدم؛ وهو وحده لا يمنح شيئاً. ويبادل تطبيق العميل هذا الرمز (مع سر تطبيق العميل المسجّل) برمز وصول، وهو القدرة الفعلية المستخدمة في استدعاء خادم الموارد. والمبادلة على خطوتين هي ما يتيح لتطبيق العميل إثبات هويته عند نقطة نهاية الرمز.
لماذا لا يعطي المستخدم كلمة مروره للتطبيق؟
لأن التطبيق لا يحتاج إلا وصولاً محدوداً وقابلاً للإلغاء: قراءة ملف شخصي لا امتلاك حساب. فلو استلم التطبيق كلمة المرور لحصل على وصول كامل إلى الأبد، ولما استطاع المستخدم إلغاء تطبيق واحد دون تغيير كلمة مروره في كل مكان. وOAuth يبادل كلمة المرور برمز محدود الصلاحيات ينتهي أجله ويستطيع المستخدم إلغاءه وحده.
ما الصلاحيات؟
الصلاحيات هي الأذونات المحددة التي يمنحها المستخدم، مثل «قراءة البريد» أو «الكتابة في التقويم». وهي تظهر على شاشة الموافقة وتُرمَّز داخل رمز الوصول. ويفرضها خادم الموارد، فالرمز الممنوح صلاحية القراءة لا يستطيع الكتابة، أقل الامتيازات مبني في البروتوكول نفسه بدل الاعتماد على حسن سلوك تطبيق العميل.
حرر هذه الخريطة الذهنية في QueryChart
افتح الخريطة على لوحة قابلة للتحرير. انقل الأفكار وأضف فروعًا وروابط.