توفر Windows® 7 آلية بسيطة لتشغيل حسابات مستخدمين مع مزايا المستخدم القياسي، بينما يتم إزالة الحاجة إلى مزايا مسؤول عند تنفيذ بعض المهام الشائعة، مثل تثبيت برنامج تشغيل طابعة أو الاتصال بشبكة لاسلكية. حيث يساعد هذا التغيير الأساسي على توفير أمان على مستوى النظام العامل وذلك بمنع برامج ضارة ومجموعات جذر من تدمير ملفات وإعدادات على مستوى الشركة.

يعتمد "التحكم في حساب المستخدم" (UAC) على نظرية الأمان الخاصة بأقل المزايا، وهي تعني أن المستخدم ينبغي أن يكون لديه الحد الأدنى المطلق من المزايا المطلوبة لتنفيذ مهام تم تعيينها. وتتضمن التغييرات في "النظام ثانوي للتطبيقات المستندة إلى UNIX" المتوافقة مع UAC استخدام "أقل مزايا لحساب مستخدم" (LUA).

التحكم في حساب المستخدم

'التحكم في حساب المستخدم' (User Account Control) هو ميزة أمان في Windows 7 تم تقديمها مع Windows Vista.

يعتبر الهدف الأساسي من User Account Control هو تقليل سطح التعرض والهجوم في نظام التشغيل Windows 7 عن طريق طلب تشغيل كافة المستخدمين في وضع المستخدم القياسي وبتحديد وصول على مستوى مسؤول إلى عمليات مخولة. حيث يقلل هذا التحديد من قدرة المستخدمين على إجراء تغييرات قد تسبب عدم توازن في المكونات أو تعريض الشبكة إلى الإصابة بفيروسات بطريقة غير مقصودة من خلال برامج ضارة أصابت أجهزة الكمبيوتر ولم يتم اكتشافها.

يقوم Windows 7 بشكل افتراضي بتشغيل كافة التطبيقات كمستخدم قياسي حتى في حالة قيام المستخدم الحالي بتسجيل الدخول كعضو في مجموعة Administrators. وعلى العكس، عندما يحاول مستخدمون تشغيل أحد التطبيقات التي تم تمييزها بتطلب أذونات مسؤول، يطالبهم Windows 7 بتأكيد رغبتهم في القيام بذلك. حيث يمكن أن تقوم فقط التطبيقات التي تعمل مع مزايا مسؤول بتعديل الإعدادات العمومية والنظام والسلوك.

لمزيد من المعلومات حول User Account Control، راجع الموضوع "فهم التحكم في حساب المستخدم وتكوينه في Windows Vista" (متوفر بالإنجليزية) الموجود في موقع Microsoft على ويب (https://go.microsoft.com/fwlink/?LinkId=70242).

"التحكم في حساب المستخدم" وأقل المزايا في "النظام الثانوي للتطبيقات المستندة إلى UNIX"

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

يستعرض المثال التالي كيف يمكن لـ "التحكم في حساب المستخدم" منع المستخدمين الأعضاء في مجموعة "المسؤولين" من تنفيذ مهام إدارية بدون مزايا عالية.

المستخدم A هو عضو في مجموعة Administrators، ويرغب في إنشاء دليل جديد يطلق عليه test في الدليل \ (الجذر). حيث يتم السماح فقط بإنشاء دلائل جديدة في الدليل الجذر من قبل أعضاء في مجموعة "المسؤولين". ومع ذلك، بالرغم من أن المستخدم A يعتبر عضوًا في مجموعة "المسؤولين"، فإنه لا يستطيع إنشاء الدليل الجديد بسبب تقييدات "أقل المزايا لحساب مستخدم " (LUA). يقوم المستخدم A بفتح Korn shell باستخدام امتيازات عالية وتم السماح له بإنشاء الدليل test في الجذر.

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

كيفية تشغيل التطبيق كمسؤول

باستخدام "النظام الثانوي المستند إلى UNIX" مع تثبيت حزم الأدوات والأدوات المساعدة الخاصة بالتنزيل، توجد طريقتين لتشغيل أحد التطبيقات كمسؤول.

استخدام واجهة Windows

استخدام سطر الأوامر المستند إلى UNIX

استخدام واجهة Windows

لتشغيل أحد التطبيقات في واجهة مستخدم Windows التي تتطلب مزايا إدارية، قم بتنفيذ الخطوات التالية.

تشغيل أحد التطبيقات كمسؤول في واجهة Windows
  1. انقر بالزر الأيمن للماوس فوق ملف التطبيق القابل للتنفيذ.

  2. من القائمة المختصرة، انقر فوق تشغيل كمسؤول.

استخدام سطر الأوامر المستند إلى UNIX

لتشغيل أحد التطبيقات في بيئة Korn shell المستندة إلى UNIX والتي تتطلب مزايا إدارية، قم بتنفيذ الخطوات التالية.

تشغيل أحد التطبيقات كمسؤول في Korn shell
  1. انقر فوق ابدأ وانقر فوق كافة البرامج ثم انقر فوق النظام الثانوي المستند إلى UNIX وبعد ذلك قم بالإشارة إلى Korn shell.

  2. انقر بالزر الأيمن للماوس فوق Korn shell وبعد ذلك انقر فوق تشغيل كمسؤول.

  3. عند مطالبتك بالسماح لـ shell بالتشغيل كمسؤول، انقر فوق موافق.

  4. قم بتشغيل البرنامج الذي يتطلب مزايا "المسؤول".

  5. عند الانتهاء من تشغيل التطبيق الذي يتطلب مزايا عالية، قم بإغلاق جلسة العمل shell.

    لتنفيذ مهام أخرى في بيئة shell المستندة إلى UNIX والتي لا تتطلب مزايا "المسؤول"، قم بفتح جلسة عمل shell جديدة بدون استخدام الأمر تشغيل كمسؤول.

مفتاح التسجيل EnableSuToRoot

يتم تمكين "التحكم في حساب المستخدم" افتراضيًا. وعند تمكين User Account Control، يتم دوماً تشغيل أي تطبيق أو مهمة تنتحل صفة مستخدم آخر يكون عضواً في مجموعة Administrators (عن طريق استخدام الأدوات المساعدة su أو cron أو login أو setuid، أو أي من مجموعة مكالمات setuid أو exec_asuser، وذلك كأمثلة) في سياق الأمان الخاص بحساب مستخدم قياسي.

ملاحظة

عند انتحال أحد التطبيقات لهوية مستخدم قياسي، فسيتوفر لدى هذا التطبيق سياق أمان كامل لمستخدم قياسي. ولمزيد من المعلومات حول مستخدمين قياسيين، راجع الموضوع "أفضل ممارسات المطورين وإرشادات للتطبيقات في أقل البيئات مزايا،" في موقع ويب التابع لـ Microsoft" في قسم المقدمة (https://go.microsoft.com/fwlink/?LinkId=70243).

باستخدام إعدادات افتراضية، يتعذر على أحد التطبيقات انتحال هوية المستخدم الجذر. يمكنك التحكم في هذا السلوك عن طريق تعديل مفتاح السجل HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA\EnableSuToRoot.

كيفية تعديل مفتاح التسجيل EnableSuToRoot

هام

يتم تعطيل الحساب Administrator بشكل افتراضي في Windows 7 و Windows Server 2008 R2 للمساعدة في حماية الكمبيوتر والبيانات من إمكانية وصول المستخدمين غير المعتمدين أو غير الموثوق بهم، ويجب تمكينه للمستخدمين كي يتمكنوا من انتحال صفة المستخدم الجذر أو Administrator. ونظراً لأنه يجب تمكين الحساب Administrator أولاً لتغيير الإعداد الخاص بمفتاح التسجيل EnableSuToRoot، فإن الإجراء المتبع لإكمال هذه المهمة يظهر بعدها في الحال. لابد أن تكون عضواً في مجموعة Administrators الموجودة على الكمبيوتر المحلي لإكمال الإجراء التالي.

تمكين الحساب Administrator
  1. انقر فوق Start، ثم انقر بزر الماوس الأيمن فوق Computer، ثم انقر فوق Manage.

  2. في الجزء الهرمي من الأداة الإضافية Computer Management، قم بفتح Computer Management.

  3. قم بتحديد Users.

  4. في جزء النتائج، انقر بزر الماوس الأيمن فوق Administrator، ثم انقر فوق Properties.

  5. قم بمسح خانة الاختيار الخاصة بالخيار Account is disabled.

  6. انقر فوق موافق.

  7. قم بإغلاق النافذة Properties، ثم قم بإغلاق الأداة الإضافية Computer Management.

قم بتنفيذ الخطوات التالية لتغيير إعداد مفتاح التسجيل EnableSuToRoot بعد تثبيت "النظام الثانوي للتطبيقات المستندة إلى UNIX".

تغيير إعداد مفتاح التسجيل EnableSuToRoot
  1. انقر فوق ابدأ وانقر فوق بدء البحث في مربع النص واكتب regedit لفتح "محرر السجلات".

  2. في الجزء الهرمي، قم بفتح HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA.

  3. في جزء النتائج، انقر نقرًا مزدوجًا فوق EnableSuToRoot.

  4. في المربع بيانات القيم، أدخل 0 لعدم السماح بانتحال هوية المستخدم الجذر أو أدخل 1 للسماح بذلك.

    حيث يكون الإعداد الافتراضي هو 0.

  5. انقر فوق OK.

  6. قم بإغلاق "محرر السجل"؛ وقم بحفظ التغييرات في حالة المطالبة بذلك.

عند تعيين قيمة هذا المفتاح إلى 0 (الإعداد الافتراضي)، لا يتم السماح بانتحال هوية المستخدم الجذر. وعند تعيين القيمة إلى 1، يتم السماح بانتحال هوية المستخدم الجذر. وعندما ينتحل أحد التطبيقات هوية المستخدم الجذر أو حساب "المسؤول"، يتوفر لدى التطبيق سياق أمان إداري للمستخدم (المسؤول) الجذر.

امتياز المسؤول و Setuid

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

يعتبر المثال التالي مثالاً لكيفية تمييز الملف الثنائي /bin/regpwd، الذي يتم تمييزه عادةً باستخدام السمة setuid:

  1. قم بفتح Korn shell ‏(ksh) مع مزايا عالية كما يتضح من هذا الموضوع.

  2. اكتب chmod +s /bin/regpwd ثم اضغط على المفتاح ENTER.

  3. اكتب exit لإغلاق جلسة العمل ksh.

راجع أيضاً