سؤال

لذلك قمت بإنشاء خدمة ويب تتفاعل مع مجموعة من البيانات الموجودة في مساحة اسم WMI.إنه يعمل بشكل جيد عندما أقوم بتشغيله باستخدام خادم الويب المدمج في ASP.net، ويقوم بإرجاع البيانات كما هو مطلوب.ومع ذلك، عندما أقوم بنشره على خادم IIS 6 (نظام التشغيل Win 2003)، لم تعد خدمة الويب تسمح لي بتنفيذ استدعاءات أسلوب WMI.ومع ذلك فهو يسمح لي بالقراءة منه.

بدلا من ذلك يعطيني:

System.Management.ManagementException:تم رفض الوصول إلى System.Management.managementException.ThrowWithEdentendendInfo (ManagementStatus errorcode) في System.Management.managementObject.invokemethod (سلسلة MethodName ، ManagementBaseObjecters ، خيارات invokemethodoptions) في System.Management.InganiceObject.invokemeThod (String [] chopername)

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

أي شخص لديه أي أفكار؟

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

المحلول

يجب أن يعمل التشغيل مع IIS كحساب مستخدم "مناسب".

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

بخلاف ذلك ربما يتطلب الوصول إلى WMI حق المستخدم في تشغيل الحساب الافتراضي IIS كما لا يوجد.

نصائح أخرى

حسنًا، من الناحية الفنية، يختلف الجميع عن "المستخدمين المعتمدين".

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

إذا تم تعطيل الضيف، فأعتقد أنهما متطابقان لجميع الأغراض العملية، على الرغم من أن الجميع قد يتضمنان جلسات "فارغة" و"مجهولة".

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