سؤال

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

"System.Security.SecurityException:الوصول إلى التسجيل المطلوب غير مسموح به." الرسالة.

كيف يمكنني إصلاح ذلك؟

تحديث

لقد قمت بإنشاء السجل باستخدام حساب المسؤول يدويًا في السجل.والآن لدي الخطأ:System.Security.SecurityException:غير مسموح الوصول إلى التسجيل المطلوب.

لا أفهم لأنني قمت بإنشاء مستخدم في مسؤول المجموعة...ماذا يجب أن أفعل أكثر؟

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

المحلول

بالنسبة لتحديثك، وجدت شيئًا قد يساعدك:

Run regedt32
Navigate to the following key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Security
Right click on this entry and select Permissions
Add the ASPNET user
Give it Read permission

2. Change settings in machine.config file

Run Explorer
Navigate to WINDOWS or WINNT folder
Open Microsoft.NET folder
Open Framework folder
Open v1.1.4322 folder (folder name may be different, depending on what dotnet version is installed)
Open CONFIG folder
Open machine.config file using notepad (make a backup of this file first)
Locate processmodel tag (approx. at line 441)
Locate userName="machine" (approx. at line 452)
Change it to userName="SYSTEM"
Save and close the file
Close Explorer

3. Restart IIS

Run IISReset

المصدر هنا

نصائح أخرى

"الطريقة غير البرمجية" هي منح المستخدم تطبيق الويب/خدمة الويب الخاصة بك إمكانية الوصول إلى السجل (يتم كتابة سجل الأحداث في سجل الأحداث).

لم ينجح أي شيء من هذا بالنسبة لي.ما فعلته الحيلة هو تغيير هوية تجمع التطبيقات من "ApplicationPoolIdentity" إلى "LocalSystem".ثم ضع حساب LocalSystem Windows في مجموعة المسؤولين.

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