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

للطلب الثاني عنوان عميل خاص به

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

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

whoami
ipconfig /all
Test-NetConnection db01.corp.internal -Port 5432

قارن ما تبلغ عنه الجلسة بالعنوان الذي سجلته قاعدة البيانات للطابع الزمني نفسه. حين يُظهر سجل الخادم شبكة سطح المكتب الفرعية بدل تجمّع الأنفاق، يتوقف السؤال عن كونه هل أُطلقت القاعدة، ويصبح أي مضيف أرسل الطلب. ذلك تحقيق مختلف بمالك مختلف.

الهوية تتغير مثل العنونة

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

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

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

whoami /groups
klist
query session

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

لماذا لا يزال المسار المباشر محجوبًا، وبصواب

قاعدة الرفض ليست خاطئة لمجرد أن الوجهة يمكن الوصول إليها بطريق آخر. تُقيَّم التجزئة لكل مصدر، وسطح المكتب يقع على شبكة فرعية سُمح بها قبل أن يفكر أحد فيه كطريق إلى قاعدة البيانات بوقت طويل. لم يتجاوز شيء السياسة. السياسة تصف ببساطة مصدرين مختلفين بنتيجتين مختلفتين.

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

عدّده من داخل جلسة اختبار، لا من جدول بيانات. حفنة من الأوامر تغطي معظم السطح.

Get-NetTCPConnection -State Listen | Select-Object LocalAddress,LocalPort,OwningProcess
net use
Get-ChildItem Env: | Where-Object Name -match 'PROXY|DATABASE|API'

اختر الحدود عن قصد

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

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

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

تحقق من الموافقتين ومن مسار الإزالة

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

ثم اختبر الإزالة، لأن جلسة منفصلة قد تعيش أطول من سببها. جدول الجلسات هو أسرع مكان لرؤية ما لا يزال يعمل.

query session
query user
qwinsta /server:rdsh01.corp.internal

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

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