سؤال

لقد قمت بتنفيذ التتبع بناءً على System.Diagnostics.

أنا أستخدم أيضًا System.Diagnostics.TextWriterTraceListener، وقمت بتوصيل التتبع بالكامل إلى تطبيق الويب MOSS 2007.

يحاول التتبع لسبب ما (أ) إنشاء ملف السجل، و/أو (ب) الكتابة إلى ملف السجل باستخدام المستخدم الذي يتصفح حاليًا موقع SharePoint هل هناك أي طريقة لتكوين التسجيل لاستخدام حساب مستخدم معين بدلاً من ذلك؟

هل كانت مفيدة؟

المحلول

من الواضح أن MOSS تم تكوينه لاستخدام مصادقة Windows (kerberos) وانتحال الهوية.إذا لم تكن بحاجة إلى انتحال شخصية المستخدم الحالي الذي قام بتسجيل الدخول إلى moss، فقم بإيقاف تشغيل الانتحال (موجود في web.config).ستجد أن ملفات السجل سيتم إنشاؤها وكتابتها بواسطة المستخدم الذي يعمل من خلاله مجمع تطبيقات تثبيت moss الخاص بك.

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

الخيار الثالث هو تبديل الهويات قبل التسجيل.قد يعمل شيء مثل هذا:

var wic = WindowsIdentity.Impersonate(IntPtr.Zero); // "revert to self"
/* LOG GOES HERE K */
wic.Undo(); // return to impersonation

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

وأتساءل أين هو رأ 'سكيتر على هذا واحد؟يتطلب أمان Windows بعض الرفع الثقيل؛لقد بدأت للتو مع الشريط الآن ...

نصائح أخرى

من فضلك لا تقل لي أن هذا ضروري - http://www.15thans.com/Issue/040511.htm?voteresult=5

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top