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

ما يتركه إجراء المهمة مقروءًا

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

schtasks /query /tn "VPN Reconnect" /xml
cmdkey /list

تحقق قبل أن تفترض غير ذلك. الأمر الأول يطبع التعريف الكامل، بما فيه الإجراء ووسيطاته. والثاني يعرض بيانات الاعتماد التي خزنها الحساب الحالي مؤقتًا، وهذا مهم للتصاميم البديلة أدناه. إن ظهرت كلمة المرور في XML المهمة، فإن تدويرها نصف الإصلاح فقط، لأن المهمة لا تزال تحتفظ بالقيمة القديمة.

ما يشتريه فعلًا مفتاح مشترك مخزّن

Add-VpnConnection -L2tpPsk يكتب المفتاح في إدخال دفتر الهاتف الخاص بالاتصال بدلًا من كتابته في مهمة. هذا سطح تعرض أصغر من إجراء مهمة. لكنه يبقى سرًا قابلًا للاستعادة، لأن مسؤولًا على الجهاز يستطيع قراءة دفتر الهاتف.

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

بيانات اعتماد Winlogon تزيل السر وتضيف تبعية

-UseWinlogonCredential يسلك مسارًا مختلفًا. تتصل الشبكة بالمصادقة عبر MSCHAPv2 مقابل بيانات اعتماد المستخدم المسجل الدخول. لا يُخزن شيء إضافي لذلك الحساب.

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

مصادقة الشهادات تتوسع لأن شيئًا لا يُخزن

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

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

راجع الآثار قبل التدوير التالي

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

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

مقالات ذات صلة