تفويض جلسة المحفظة قد يسمح لتطبيق بتنفيذ عمليات محددة دون طلب موافقتك بالطريقة المعتادة في كل مرة. قبل القبول، اسأل ما الذي يستطيع فعله ولأي حساب وأصول ومدة، وكيف توقفه. كلمة «جلسة» لا تثبت وحدها أن الإذن ينتهي عند إغلاق الصفحة.
جدول المحتويات
ما الفرق بين جلسة دخول وتفويض تنفيذ؟
قد يشير لفظ الجلسة إلى علاقة اتصال أو دخول في واجهة، وقد يشير في تصميم آخر إلى سلطة تتيح تنفيذ أفعال نيابة عن الحساب. تشابه المصطلح لا يجعل الأثر واحدًا. حدد نوع الطلب الذي تعرضه المحفظة وما الذي سيتغير بعد موافقتك.
تشرح وثائق الحسابات الذكية إمكان مشاركة صلاحيات محددة برمجيًا، وتعرض مواصفات مثل ERC-7715 طلب أذونات تنفيذ. لكن وجود مواصفة منشورة لا يثبت أن تطبيقك يدعم كل قواعدها أو يطبقها بالإصدار نفسه. المرجع العملي هو التصميم المدعوم والطلب الفعلي.
وقد يكون تقليل النوافذ مناسبًا لتفاعلات متكررة، لكنه لا يشرح حدود السلطة. السؤال ليس عدد النقرات التي ستوفرها فقط، بل أي أفعال ستصبح ممكنة بعد النقرة الأولى ومن يستطيع تشغيلها.
4 تفاصيل قبل منح التطبيق إذنًا
1. الحساب والجهة المفوَّضة
راجع الحساب الذي يمنح الإذن والشبكة والجهة أو مفتاح الجلسة المرتبط به بحسب تصميم المنتج. إذا كنت تدير عدة حسابات، فلا تفترض أن الاسم الظاهر في التطبيق يحدد الحساب المقصود. طابق البيانات التي يعرضها طلب الموافقة.
اسأل أيضًا أين تُحفظ وسائل استخدام التفويض ومن يستطيع تشغيلها. لا تحتاج نشر المفتاح لتوثيق القرار؛ يكفي سجل غير سري يربط الإذن بالحساب والتطبيق والغرض. هوية الموقع لا تغني عن فهم الجهة التي ستحصل على صلاحية فعلية.
2. العقود والوظائف والأصول المسموح بها
هل يسمح الإذن بتفاعل داخل لعبة فقط، أم بنقل رمز أو استدعاء عقد أو تغيير إعدادات أخرى؟ اقرأ النطاق كما يطبقه المنتج. لا تعتبر عبارة «استخدام التطبيق» تعريفًا كافيًا إذا كانت الأفعال المحتملة أوسع من المهمة التي تريدها.
وإذا وُجدت قائمة عقود أو وظائف مسموحة، فراجع علاقتها بالمسار الذي تستخدمه. تقييد الإذن بعقد معين لا يفسر وحده ما يمكن أن تفعله وظائف ذلك العقد. كل قيد يجب أن يرتبط بسؤال عملي عن نوع العمليات التي قد تُنفذ.
3. حدود القيمة والوقت وكيف تُحسب
قد يدعم المنتج سقفًا لكل عملية أو ميزانية خلال مدة أو قيودًا على أصل بعينه. افهم هل القيم تراكمية ومتى تتجدد، وما إذا كانت الرسوم تدخل في الحساب. لا تنقل تفسير حد في منتج إلى آخر دون التحقق من تعريفه.
والمدة القصيرة لا تعوّض تلقائيًا نطاقًا واسعًا، كما أن السقف الصغير لا يثبت صحة الجهة. راجع الزمن والنطاق والقيمة معًا. إذا لم يعرض الطلب قيدًا تحتاجه، فلا تستنتجه من اسم الزر أو من توقعك أن التطبيق لن يستخدم أكثر.
4. الإبطال والانتهاء ونتيجة كل منهما
حدّد كيف توقف التفويض قبل موعد انتهائه، وهل يحتاج الإجراء إلى معاملة أو رسوم أو تحقق آخر. إغلاق الصفحة حدث محلي، والانتهاء شرط ينفذه التصميم، والإبطال تغيير مقصود في السلطة. هذه أمور قد تتقاطع لكنها ليست مترادفات.
بعد الإبطال، تحقق من الحالة بالطريقة الرسمية، لا من اختفاء اسم التطبيق فقط. واعرف ما الذي لا يعكسه الإجراء: عمليات سبق تنفيذها أو بيانات سبق نسخها. إذا كان لديك أكثر من تفويض، فلا تفترض أن إبطال واحد يلغيها جميعًا.
جدول قراءة نطاق التفويض
| البند | السؤال | ما لا تفترضه؟ |
|---|---|---|
| الحساب والشبكة | من يمنح السلطة وأين تُطبق؟ | أن كل حساباتك تستخدم الإذن نفسه |
| الأفعال | أي عقود ووظائف وأصول تشملها؟ | أن اسم التطبيق يحدد نطاقًا ضيقًا |
| القيمة | لكل عملية أم تراكمية وأي أصل؟ | أن السقف يتجدد بالطريقة التي تتوقعها |
| الزمن | متى يبدأ وينتهي وفق النظام؟ | أن إغلاق المتصفح يحقق الانتهاء |
| الإبطال | ما الإجراء وكيف تثبت نتيجته؟ | أنه يعكس كل عملية سابقة |
اسحب الجدول أفقيًا على الهاتف.
مثال: تفاعلات متكررة في تطبيق لعبة
لنفترض أن ليلى تستخدم لعبة تقترح تفويضًا لتقليل نوافذ التأكيد. تقرأ هل يقتصر على أفعال داخل اللعبة أم يتيح نقل رموز، وهل توجد ميزانية تعليمية قدرها 30 وحدة خلال مدة محددة. الرقم افتراضي ولا يمثل قيمة أو سياسة حالية.
تسأل ليلى هل الحد إجمالي أم لكل عملية، وهل يشمل الأصل الذي تملكه فعلًا أم رمزًا آخر، وما الذي يحدث عند انتهاء المدة. إذا تعذر تفسير ذلك من الواجهة، ترجع إلى التوثيق بدل التوقيع ثم محاولة استنتاج الأثر من النتائج.
وعند انتهاء استخدامها، تتبع مسار الإبطال إن لم تعد تحتاج الإذن وتتحقق من حالته. لا تعتبر مغادرة اللعبة أو حذف اختصارها دليلًا على تغيير السلطة المسجلة. غرض الراحة لا يحدد وحده وقت انتهاء الوصول.
ماذا لو كان لديك تفويضان للتطبيق نفسه؟
قد يكون كل تفويض مرتبطًا بحساب أو شبكة أو مجموعة قواعد مختلفة. إبطال تفويض انتهت حاجتك إليه لا يجيب عن حالة الآخر. راجع المعرّفات أو البيانات التي يتيحها المنتج للتمييز بينهما، ولا تعتمد اسم التطبيق وحده مفتاحًا للسجل.
وفي مثال تعليمي، قد يتيح أحدهما أصلًا ضمن سقف محدد والآخر وظائف مختلفة دون ذلك الأصل. لا تجمع الحدين أو تفسر انتهاء أحدهما باعتباره إغلاقًا لكل الوصول. افهم كيف يطبق التصميم كل إذن وما إذا كانت هناك تبعيات أو صلاحيات أوسع تؤثر في النتيجة.
إذا كانت الواجهة تعرض ملخصًا ناقصًا، فاطلب شرحًا رسميًا أو توقف عن منح الإذن الجديد حتى تتضح الحدود. ليست الحاجة إلى قراءة أوضح سببًا لمشاركة أسرار التوقيع مع من يعرض تحليل التفويض في محادثة خاصة.
سجل قرار مفيد دون أسرار
اكتب الحساب والشبكة والتطبيق والغرض ونوع الأفعال والحدود وموعد المراجعة وطريقة الإبطال الرسمية. لا تسجل مفاتيح الجلسة السرية أو عبارة الاستعادة في هذا الملف. وجود سجل يوضح لماذا مُنح الإذن يساعد على معرفة ما لم تعد تحتاج إليه.
إذا تغير التطبيق أو نوع الاستخدام، راجع هل يحتاج تفويضًا جديدًا وما الفرق بينه وبين السابق. لا تُجدّد كل سلطة تلقائيًا لمجرد أنك وافقت عليها مرة. كذلك لا تجعل اسمًا محفوظًا يحجب تغيير عنوان أو نطاق ظهر في طلب أحدث.
إذا ظهرت عملية لا تتوقعها
وثّق معرّف العملية والشبكة والحساب والتفويض ذي الصلة، ثم راجع خيارات التقييد والإبطال الرسمية. فرّق بين طلب معلق وتنفيذ مؤكد، وبين فعل خارج نطاق الإذن وفعل سمحت به لكنك لم تتوقع توقيته.
ولا تُرسل أسرارًا إلى شخص يعد بإلغاء جميع الجلسات أو إعادة كل الأصول. فهم التصميم والسجل هو ما يحدد الخطوة التالية. وإذا كانت المشكلة كشف مفتاح رئيسي، فلا تعتبر إبطال جلسة محددة علاجًا كافيًا لسر أوسع خرج من سيطرتك.