الملخص
يمكن لمسؤولي Microsoft System Center 2012 R2 Virtual Machine Manager (VMM) الآن إنشاء قوائم التحكم في الوصول إلى منفذ Hyper-V (ACLs) وإدارتها مركزيا في VMM.
مزيد من المعلومات
لمزيد من المعلومات حول Update Rollup 8 ل System Center 2012 R2 Virtual Machine Manager، انقر فوق رقم المقالة التالية لعرض المقالة في قاعدة معارف Microsoft:
3096389 تحديث مجموعة 8 ل System Center 2012 R2 Virtual Machine Manager
مسرد
لقد قمنا بتحسين نموذج كائن Virtual Machine Manager عن طريق إضافة المفاهيم الجديدة التالية في منطقة إدارة الشبكة.
-
قائمة التحكم في الوصول إلى المنفذ (port ACL)
عنصر مرفق بشبكات VMM المختلفة الأولية لوصف أمان الشبكة. يعمل منفذ ACL بمثابة مجموعة من إدخالات التحكم بالوصول أو قواعد ACL. يمكن إرفاق ACL بأي عدد (صفر أو أكثر) من بدائيات شبكات VMM، مثل شبكة الجهاز الظاهري أو الشبكة الفرعية للجهاز الظاهري أو محول الشبكة الظاهرية أو خادم إدارة VMM نفسه. يمكن أن تحتوي ACL على أي رقم (صفر أو أكثر) من قواعد ACL. يمكن أن يكون لكل شبكة VMM بدائية متوافقة (شبكة الجهاز الظاهري أو الشبكة الفرعية للجهاز الظاهري أو محول الشبكة الظاهرية أو خادم إدارة VMM) إما منفذ واحد مرفق أو بلا منفذ. -
إدخال التحكم في الوصول إلى المنفذ أو قاعدة
ACL كائن يصف نهج التصفية. يمكن أن توجد قواعد ACL متعددة في نفس المنفذ ACL وتطبق استنادا إلى أولويتها. تتوافق كل قاعدة ACL مع ACL منفذ واحد بالضبط. -
المفهوم الظاهري الإعدادات
A العمومي الذي يصف ACL المنفذ الذي يتم تطبيقه على جميع محولات الشبكة الظاهرية للجهاز الظاهري في البنية الأساسية. لا يوجد نوع كائن منفصل الإعدادات العمومية. بدلا من ذلك، يتم إرفاق ACL لمنفذ الإعدادات العمومي بخادم إدارة VMM نفسه. يمكن أن يحتوي كائن خادم إدارة VMM إما على ACL منفذ واحد أو بلا.
للحصول على معلومات حول الكائنات في منطقة إدارة الشبكة التي كانت متوفرة مسبقا، راجع أساسيات كائن الشبكة ل Virtual Machine Manager.
ماذا يمكنني أن أفعل بهذه الميزة؟
باستخدام واجهة PowerShell في VMM، يمكنك الآن اتخاذ الإجراءات التالية:
-
تعريف قوائم التحكم في الوصول في المنفذ وقواعد ACL الخاصة بها.
-
يتم تطبيق القواعد على منافذ التبديل الظاهرية على خوادم Hyper-V ك "قوائم التحكم في الوصول الموسعة للمنفذ" (VMNetworkAdapterExtendedAcl) في مصطلحات Hyper-V. وهذا يعني أنه لا يمكن تطبيقها إلا على خوادم مضيفي Windows Server 2012 R2 (و Hyper-V Server 2012 R2).
-
لن يقوم VMM بإنشاء قوائم التحكم في الوصول إلى منفذ Hyper-V "القديمة" (VMNetworkAdapterAcl). لذلك، لا يمكنك تطبيق قوائم التحكم في الوصول للمنفذ على خوادم مضيفة Windows Server 2012 (أو Hyper-V Server 2012) باستخدام VMM.
-
جميع قواعد ACL للمنفذ التي تم تعريفها في VMM باستخدام هذه الميزة ذات حالة (ل TCP). لا يمكنك إنشاء قواعد ACL عديمة الحالة ل TCP باستخدام VMM.
لمزيد من المعلومات حول ميزة ACL للمنفذ الموسع في Windows Server 2012 R2 Hyper-V، راجع إنشاء نهج أمان باستخدام قوائم التحكم في الوصول إلى المنفذ الموسعة لخادم Windows 2012 R2.
-
-
إرفاق منفذ ACL إلى الإعدادات العمومية. ينطبق هذا على جميع محولات الشبكة الظاهرية للجهاز الظاهري. وهي متوفرة فقط للمسؤولين الكاملين.
-
إرفاق قوائم التحكم في الوصول للمنفذ التي تم إنشاؤها بشبكة VM أو الشبكات الفرعية للجهاز الظاهري أو محولات الشبكة الظاهرية للجهاز الظاهري. يتوفر هذا الأمر للمسؤولين الكاملين، والمسؤولين المستأجرين، ومستخدمي الخدمة الذاتية (SSUs).
-
عرض وتحديث قواعد ACL المنفذ التي تم تكوينها على VM vNIC الفردية.
-
حذف قوائم التحكم في الوصول الخاصة بالمنفذ وقواعد ACL الخاصة بها.
يتم تناول كل إجراء من هذه الإجراءات بمزيد من التفصيل لاحقا في هذه المقالة.
يرجى الانتباه إلى أن هذه الوظيفة يتم عرضها فقط من خلال أوامر Cmdlets PowerShell ولن تنعكس في واجهة مستخدم وحدة تحكم VMM (باستثناء حالة "التوافق").ما الذي لا يمكنني فعله بهذه الميزة؟
-
إدارة/تحديث القواعد الفردية لمثيل واحد عند مشاركة ACL بين مثيلات متعددة. تتم إدارة جميع القواعد مركزيا داخل قوائم التحكم في الوصول الأصلية الخاصة بها وتطبيقها أينما تم إرفاق ACL.
-
إرفاق أكثر من ACL واحد إلى كيان.
-
تطبيق قوائم التحكم في الوصول للمنفذ على محولات الشبكة الظاهرية (vNICs) في القسم الأصل Hyper-V (نظام التشغيل الإداري).
-
إنشاء قواعد ACL المنفذ التي تتضمن بروتوكولات على مستوى IP (غير TCP أو UDP).
-
تطبيق قوائم التحكم في الوصول للمنفذ على الشبكات المنطقية ومواقع الشبكة (تعريفات الشبكة المنطقية) والشبكات الظاهرية الظاهرية للشبكة الفرعية وبدائيات شبكات VMM الأخرى التي لم تكن مدرجة سابقا.
كيف أعمل استخدام الميزة؟
تعريف قوائم التحكم في الوصول الجديدة الخاصة بالمنفذ وقواعد ACL الخاصة بالمنفذ
يمكنك الآن إنشاء قوائم التحكم بالوصول وقواعد ACL الخاصة بها مباشرة من VMM باستخدام PowerShell cmdlets.
إنشاء ACL جديد
تتم إضافة أوامر Cmdlets PowerShell الجديدة التالية:
New-SCPortACL –Name <string> [–Description <string>] –Name: Name: name of the port ACL –Description: Description of the port ACL (parameter optional) Get-SCPortACL يسترد كافة قوائم التحكم في الوصول للمنفذ –Name: Filter by name –ID بشكل اختياري: تصفية اختياريا حسب أوامر نموذج المعرفNew-SCPortACL -Name Samplerule -Description SampleDescription
$acl = Get-SCPortACL -Name Samplerule
تعريف قواعد ACL للمنفذ ACL
يتكون كل منفذ ACL من مجموعة من قواعد ACL للمنفذ. تحتوي كل قاعدة على معلمات مختلفة.
-
الاسم
-
الوصف
-
النوع: الوارد/الصادر (الاتجاه الذي سيتم تطبيق ACL به)
-
الإجراء: السماح/الرفض (إجراء ACL، إما للسماح بنسبة استخدام الشبكة أو لحظر نسبة استخدام الشبكة)
-
SourceAddressPrefix:
-
SourcePortRange:
-
DestinationAddressPrefix:
-
DestinationPortRange:
-
البروتوكول: TCP/Udp/Any (ملاحظة: بروتوكولات مستوى IP غير معتمدة في قوائم التحكم في الوصول الخاصة بالمنفذ التي يتم تعريفها بواسطة VMM. لا تزال مدعومة في الأصل من قبل Hyper-V.)
-
الأولوية: 1 – 65535 (أقل رقم له الأولوية القصوى). هذه الأولوية نسبة إلى الطبقة التي يتم تطبيقها فيها. (مزيد من المعلومات حول كيفية تطبيق قواعد ACL استنادا إلى الأولوية والعنصر الذي يتم إرفاق ACL به يلي.)
أوامر PowerShell cmdlets الجديدة التي تتم إضافتها
New-SCPortACLrule -portACL <portACL> -Name <سلسلة> [-description <string>] -type <inbound |> الصادر -السماح <الإجراء | رفض> -Priority <uint16> -Protocol <tcp | Udp | أي> [-SourceAddressPrefix <سلسلة: IPAddress | IPSubnet>] [-SourcePortRange <string:X|X-Y| أي>] [-DestinationAddressPrefix <سلسلة: IPAddress | IPSubnet>] [-DestinationPortRange <string:X|X-Y| أي>]
يقوم Get-SCPortACLrule باسترداد كافة قواعد ACL للمنفذ.-
الاسم: تصفية اختياريا حسب الاسم
-
المعرف: تصفية اختياريا حسب المعرف
-
PortACL: تصفية اختياريا حسب منفذ ACL
نماذج الأوامر
New-SCPortACLrule -Name AllowSMBIn -Description "Allow inbound TCP Port 445" -Type Inbound -Protocol TCP -Action Allow -PortACL $acl -SourcePortRange 445 -Priority 10
New-SCPortACLrule -Name AllowSMBOut -Description "Allow outbound TCP Port 445" -Type Outbound -Protocol TCP -Action Allow -PortACL $acl -DestinationPortRange 445 -Priority 10
New-SCPortACLrule -Name DenyAllIn -Description "All Inbould" -Type Inbound -Protocol Any -Action Deny -PortACL $acl -Priority 20
New-SCPortACLrule -Name DenyAllOut -Description "All Outbound" -Type Outbound -Protocol Any -Action Deny -PortACL $acl -Priority 20
إرفاق قوائم التحكم في الوصول بالمنفذ وفصلها
يمكن إرفاق قوائم التحكم بالوصول إلى ما يلي:
-
الإعدادات العمومية (تنطبق على جميع محولات شبكة الجهاز الظاهري. يمكن للمسؤولين الكاملين فقط القيام بذلك.)
-
شبكة الجهاز الظاهري (يمكن للمسؤولين/مسؤولي المستأجرين/وحدات SSUs القيام بذلك.)
-
الشبكة الفرعية للجهاز الظاهري (يمكن للمسؤولين/مسؤولي المستأجرين/وحدات SSUs القيام بذلك.)
-
محولات الشبكة الظاهرية (يمكن للمسؤولين/مسؤولي المستأجرين/وحدات SSUs القيام بذلك.)
الإعدادات العمومية
تنطبق قواعد ACL المنفذ هذه على جميع محولات الشبكة الظاهرية للجهاز الظاهري في البنية الأساسية.
تم تحديث أوامر Cmdlets PowerShell الموجودة بمعلمات جديدة لإرفاق وفصل قوائم التحكم في الوصول للمنفذ. Set-SCVMMServer –VMMServer <VMMServer> [-PortACL <NetworkAccessControlList> | -RemovePortACL ]-
PortACL: معلمة اختيارية جديدة تقوم بتكوين المنفذ المحدد ACL إلى الإعدادات العمومية.
-
RemovePortACL: معلمة اختيارية جديدة تزيل أي منفذ تم تكوينه ACL من الإعدادات العمومية.
Get-SCVMMServer: إرجاع ACL المنفذ الذي تم تكوينه في الكائن الذي تم إرجاعه.
نماذج الأوامرSet-SCVMMServer -VMMServer "VMM.Contoso.Local" -PortACL $acl
Set-SCVMMServer -VMMServer "VMM.Contoso.Local" -RemovePortACL
شبكة الجهاز الظاهري
سيتم تطبيق هذه القواعد على جميع محولات الشبكة الظاهرية للجهاز الظاهري المتصلة بشبكة الجهاز الظاهري هذه. تم تحديث أوامر Cmdlets PowerShell الموجودة بمعلمات جديدة لإرفاق وفصل قوائم التحكم في الوصول للمنفذ. New-SCVMNetwork [–PortACL <NetworkAccessControlList>] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تحديد منفذ ACL لشبكة الجهاز الظاهري أثناء الإنشاء. Set-SCVMNetwork [–PortACL <NetworkAccessControlList> | -RemovePortACL] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تعيين منفذ ACL إلى شبكة الجهاز الظاهري. -RemovePortACL: معلمة اختيارية جديدة تزيل أي منفذ تم تكوينه ACL من شبكة الجهاز الظاهري. Get-SCVMNetwork: إرجاع ACL المنفذ الذي تم تكوينه في الكائن الذي تم إرجاعه. نماذج الأوامر
Get-SCVMNetwork -name VMNetworkNoIsolation | Set-SCVMNetwork -PortACL $acl
Get-SCVMNetwork -name VMNetworkNoIsolation | Set-SCVMNetwork -RemovePortACL
الشبكة الفرعية للجهاز الظاهري
سيتم تطبيق هذه القواعد على جميع محولات الشبكة الظاهرية للجهاز الظاهري المتصلة بهذه الشبكة الفرعية للجهاز الظاهري. تم تحديث أوامر Cmdlets PowerShell الموجودة بمعلمة جديدة لإرفاق قوائم التحكم في الوصول للمنفذ وفصلها. New-SCVMSubnet [–PortACL <NetworkAccessControlList>] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تحديد منفذ ACL إلى الشبكة الفرعية للجهاز الظاهري أثناء الإنشاء. Set-SCVMSubnet [–PortACL <NetworkAccessControlList> | -RemovePortACL] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تعيين ACL منفذ إلى الشبكة الفرعية للجهاز الظاهري. -RemovePortACL: معلمة اختيارية جديدة تزيل أي منفذ تم تكوينه ACL من الشبكة الفرعية للجهاز الظاهري. Get-SCVMSubnet: إرجاع ACL المنفذ الذي تم تكوينه في الكائن الذي تم إرجاعه. نماذج الأوامر
Get-SCVMSubnet -name VM2 | Set-SCVMSubnet -PortACL $acl
Get-SCVMSubnet -name VM2 | Set-SCVMSubnet-RemovePortACL
محول الشبكة الظاهرية للجهاز الظاهري (vmNIC)
تم تحديث أوامر Cmdlets PowerShell الموجودة بمعلمات جديدة لإرفاق وفصل قوائم التحكم في الوصول للمنفذ. New-SCVirtualNetworkAdapter [–PortACL <NetworkAccessControlList>] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تحديد منفذ ACL إلى محول الشبكة الظاهرية أثناء إنشاء vNIC جديد. Set-SCVirtualNetworkAdapter [–PortACL <NetworkAccessControlList> | -RemovePortACL] [بقية المعلمات] -PortACL: معلمة اختيارية جديدة تتيح لك تعيين ACL منفذ إلى محول الشبكة الظاهرية. -RemovePortACL: معلمة اختيارية جديدة تزيل أي منفذ تم تكوينه ACL من محول الشبكة الظاهرية. Get-SCVirtualNetworkAdapter: إرجاع ACL المنفذ الذي تم تكوينه في الكائن الذي تم إرجاعه. نماذج الأوامر
Get-SCVirtualMachine -Name VM0001 | Get-SCVirtualNetworkAdapter | Set-SCVirtualNetworkAdapter -PortACL $acl
Get-SCVirtualMachine -Name VM0001 | Get-SCVirtualNetworkAdapter | Set-SCVirtualNetworkAdapter –RemovePortACL
تطبيق قواعد ACL المنفذ
عند تحديث الأجهزة الظاهرية بعد إرفاق قوائم التحكم في الوصول للمنفذ، تلاحظ أن حالة الأجهزة الظاهرية يتم عرضها على أنها "غير متوافقة" في طريقة عرض الجهاز الظاهري لمساحة عمل النسيج. (للتبديل إلى طريقة عرض الجهاز الظاهري، يجب عليك أولا الاستعراض للوصول إلى عقدة الشبكات المنطقية أو عقدة Switches المنطقية لمساحة عمل Fabric). تجدر الإشارة إلى أن تحديث الجهاز الظاهري يحدث تلقائيا في الخلفية (حسب الجدول). لذلك، حتى إذا لم تقم بتحديث الأجهزة الظاهرية بشكل صريح، فإنها ستنتقل إلى حالة غير متوافقة في نهاية المطاف.
في هذه المرحلة، لم يتم بعد تطبيق قوائم التحكم في الوصول للمنفذ على الأجهزة الظاهرية ومحولات الشبكة الظاهرية ذات الصلة. لتطبيق قوائم التحكم في الوصول للمنفذ، يجب تشغيل عملية تعرف باسم المعالجة. لا يحدث هذا أبدا تلقائيا ويجب أن يبدأ بشكل صريح بناء على طلب المستخدم. لبدء المعالجة، يمكنك إما النقر فوق "معالجة" على "الشريط" أو تشغيل Repair-SCVirtualNetworkAdapter cmdlet. لا توجد تغييرات معينة على بناء جملة cmdlet لهذه الميزة. إصلاح-SCVirtualNetworkAdapter -VirtualNetworkAdapter <VirtualNetworkAdapter> معالجة هذه الأجهزة الظاهرية ستميزها على أنها متوافقة وستتأكد من تطبيق قوائم التحكم بالوصول الموسعة. تجدر الإشارة إلى أن قوائم التحكم في الوصول للمنفذ لن تنطبق على أي أجهزة ظاهرية في النطاق حتى تقوم بمعالجتها بشكل صريح.عرض قواعد ACL للمنفذ
لعرض قواعد ACLs وACCL، يمكنك استخدام أوامر PowerShell cmdlets التالية.
أوامر PowerShell cmdlets الجديدة التي تتم إضافتها
استرداد مجموعة معلمات ACLs المنفذ 1. للحصول على الكل أو حسب الاسم: Get-SCPortACL تعيين المعلمة [-Name <>] 2. للحصول على حسب المعرف: Get-SCPortACL -Id <> [-Name <>] استرداد معلمة قواعد ACL للمنفذ التي تم تعيينها 1. الكل أو حسب الاسم: Get-SCPortACLrule تعيين المعلمة [-Name <>] 2. حسب المعرف: Get-SCPortACLrule -Id <> مجموعة المعلمات 3. حسب كائن ACL: Get-SCPortACLrule –PortACL <NetworkAccessControlList>
تحديث قواعد ACL المنفذ
عند تحديث ACL المرفق بمحولات الشبكة، تنعكس التغييرات في جميع مثيلات محول الشبكة التي تستخدم ACL. بالنسبة إلى ACL المرفق بشبكة فرعية أو شبكة VM للجهاز الظاهري، يتم تحديث جميع مثيلات محول الشبكة المتصلة بتلك الشبكة الفرعية بالتغييرات.
ملاحظة يتم تنفيذ تحديث قواعد ACL على محولات الشبكة الفردية بالتوازي في نظام أفضل جهد واحد. يتم وضع علامة "غير متوافق على الأمان" على المحولات التي لا يمكن تحديثها لأي سبب من الأسباب، وتنتهي المهمة برسالة خطأ تشير إلى أنه لم يتم تحديث محولات الشبكة بنجاح. يشير "الأمان غير المتوافق" هنا إلى عدم تطابق في قواعد ACL المتوقعة مقابل الفعلية. سيكون للمحول حالة توافق "غير متوافقة" مع رسائل الخطأ ذات الصلة. راجع القسم السابق للحصول على مزيد من المعلومات حول معالجة الأجهزة الظاهرية غير المتوافقة.تمت إضافة أمر Cmdlet جديد في PowerShell
Set-SCPortACL -PortACL <PortACL> [-Name <name>] [-Description <description>]
Set-SCPortACLrule -PortACLrule <> PortACLrule [-Name <name>] [-Description <string>] [-Type <portACLRuleDirection> {Inbound | Outbound}] [-Action <portACLRuleAction> {Allow | Deny}] [-SourceAddressPrefix <سلسلة>] [-SourcePortRange <سلسلة>] [-DestinationAddressPrefix <سلسلة>] [-DestinationPortRange <سلسلة>] [-Protocol <PortACLruleProtocol> {Tcp | Udp | Any}] Set-SCPortACL: تغيير وصف ACL للمنفذ.-
الوصف: تحديث الوصف.
Set-SCPortACLrule: تغيير معلمات قاعدة ACL للمنفذ.
-
الوصف: تحديث الوصف.
-
النوع: تحديث الاتجاه الذي يتم فيه تطبيق ACL.
-
الإجراء: تحديث إجراء ACL.
-
البروتوكول: تحديث البروتوكول الذي سيتم تطبيق ACL عليه.
-
الأولوية: تحديث الأولوية.
-
SourceAddressPrefix: تحديث بادئة عنوان المصدر.
-
SourcePortRange: تحديث نطاق المنفذ المصدر.
-
DestinationAddressPrefix: تحديث بادئة عنوان الوجهة.
-
DestinationPortRange: تحديث نطاق منفذ الوجهة.
حذف قوائم التحكم في الوصول في المنفذ وقواعد ACL الخاصة بالمنفذ
يمكن حذف ACL فقط إذا لم تكن هناك تبعيات مرفقة به. تتضمن التبعيات شبكة الجهاز الظاهري/الشبكة الفرعية للجهاز الظاهري/محول الشبكة الظاهرية/الإعدادات العمومية المرفقة ب ACL. عند محاولة حذف ACL منفذ باستخدام PowerShell cmdlet، سيكتشف cmdlet ما إذا كان منفذ ACL مرفقا بأي من التبعيات وسيلقي رسائل الخطأ المناسبة.
إزالة قوائم التحكم بالمنفذ
تمت إضافة أوامر PowerShell cmdlets جديدة:
Remove-SCPortACL -PortACL <NetworkAccessControlList>إزالة قواعد ACL المنفذ
تمت إضافة أوامر PowerShell cmdlets الجديدة:
Remove-SCPortACLRule -PortACLRule <NetworkAccessControlListRule> كن على علم بأن حذف شبكة فرعية/شبكة الجهاز الظاهري/محول الشبكة يزيل تلقائيا الاقتران مع ACL هذا. يمكن أيضا فصل ACL عن الشبكة الفرعية للجهاز الظاهري/شبكة الجهاز الظاهري/محول الشبكة عن طريق تغيير كائن شبكة VMM المعني. للقيام بذلك، استخدم Set-cmdlet مع مفتاح التبديل -RemovePortACL، كما هو موضح في المقاطع السابقة. في هذه الحالة، سيتم فصل ACL المنفذ عن كائن الشبكة المعني ولكن لن يتم حذفه من البنية الأساسية ل VMM. لذلك، يمكن إعادة استخدامها لاحقا.تغييرات خارج النطاق إلى قواعد ACL
إذا كنا نقوم بتغييرات خارج النطاق (OOB) إلى قواعد ACL من منفذ التبديل الظاهري Hyper-V (باستخدام cmdlets Hyper-V الأصلية مثل Add-VMNetworkAdapterExtendedAcl)، فسيعرض تحديث الجهاز الظاهري محول الشبكة على أنه "الأمان غير متوافق". يمكن بعد ذلك معالجة محول الشبكة من VMM كما هو موضح في قسم "تطبيق قوائم التحكم في الوصول للمنفذ". ومع ذلك، فإن المعالجة ستؤدي إلى الكتابة فوق كافة قواعد ACL للمنفذ التي تم تعريفها خارج VMM بتلك التي يتوقعها VMM.
أولوية قاعدة Port ACL وأسبقية التطبيق (متقدمة)
المفاهيم الأساسية
تحتوي كل قاعدة ACL منفذ في منفذ ACL على خاصية تسمى "الأولوية". يتم تطبيق القواعد بالترتيب استنادا إلى أولويتها. تحدد المبادئ الأساسية التالية الأسبقية للقواعد:
-
كلما انخفض عدد الأولوية، كانت الأسبقية أعلى. وهذا يعني أنه إذا كانت قواعد ACL متعددة للمنفذ تتناقض مع بعضها البعض، فإن القاعدة ذات الأولوية المنخفضة ستفوز.
-
لا يؤثر إجراء القاعدة على الأسبقية. وهذا على عكس NTFS ACLs (على سبيل المثال)، هنا ليس لدينا مفهوم مثل "الرفض دائما ما يكون له الأسبقية على السماح".
-
على نفس الأولوية (نفس القيمة الرقمية)، لا يمكن أن يكون لديك قاعدتان بنفس الاتجاه. يمنع هذا السلوك حالة افتراضية يمكن فيها لأحد تعريف كل من القواعد "رفض" و"السماح" ذات الأولوية المتساوية، لأن هذا قد يؤدي إلى غموض أو تعارض.
-
يتم تعريف التعارض على أنه قاعدتين أو أكثر لها نفس الأولوية والاتجاه نفسه. قد يحدث تعارض إذا كانت هناك قاعدتا ACL للمنفذ بنفس الأولوية والاتجاه في اثنين من قوائم التحكم في الوصول التي يتم تطبيقها على مستويات مختلفة، وإذا تداخلت هذه المستويات جزئيا. أي أنه قد يكون هناك كائن (على سبيل المثال، vmNIC) يقع ضمن نطاق كلا المستويين. ومن الأمثلة الشائعة على التراكب شبكة الجهاز الظاهري والشبكة الفرعية للجهاز الظاهري في نفس الشبكة.
تطبيق قوائم التحكم في الوصول متعددة المنافذ على كيان واحد
نظرا لأنه يمكن تطبيق قوائم التحكم في الوصول للمنفذ على كائنات شبكة VMM مختلفة (أو على مستويات مختلفة، كما هو موضح سابقا)، يمكن أن يقع محول شبكة ظاهرية واحد (vmNIC) في نطاق قوائم التحكم في الوصول متعددة المنفذ. في هذا السيناريو، يتم تطبيق قواعد ACL للمنفذ من كافة قوائم التحكم في الوصول للمنفذ. ومع ذلك، يمكن أن تكون أسبقية هذه القواعد مختلفة، اعتمادا على العديد من إعدادات ضبط الجهاز الظاهري الجديدة المذكورة لاحقا في هذه المقالة.
إعدادات التسجيل
يتم تعريف هذه الإعدادات كقيم Dword في Windows Registry ضمن المفتاح التالي على خادم إدارة VMM:
HKLM\Software\Microsoft\Microsoft System Center Virtual Machine Manager Server\الإعدادات
الرجاء الانتباه إلى أن كل هذه الإعدادات ستؤثر على سلوك قوائم التحكم في الوصول للمنفذ عبر البنية الأساسية ل VMM بأكملها.أولوية قاعدة ACL المنفذ الفعالة
في هذه المناقشة، سنصف الأسبقية الفعلية لقواعد ACL للمنفذ عند تطبيق العديد من قوائم التحكم في الوصول على كيان واحد كأولويات قاعدة فعالة. يرجى العلم بأنه لا يوجد إعداد منفصل أو كائن منفصل في VMM لتعريف أولوية القاعدة الفعالة أو عرضها. يتم حسابه في وقت التشغيل.
هناك وضعان عموميان يمكن حساب أولوية القاعدة الفعالة بهما. يتم تبديل الأوضاع بواسطة إعداد التسجيل:PortACLAbsolutePriority
القيم المقبولة لهذا الإعداد هي إما 0 (صفر) أو 1، حيث يشير 0 إلى السلوك الافتراضي.الأولوية النسبية (السلوك الافتراضي)
لتمكين هذا الوضع، قم بتعيين الخاصية PortACLAbsolutePriority في السجل إلى قيمة 0 (صفر). ينطبق هذا الوضع أيضا إذا لم يتم تعريف الإعداد في السجل (أي إذا لم يتم إنشاء الخاصية).
في هذا الوضع، تنطبق المبادئ التالية بالإضافة إلى المفاهيم الأساسية التي تم وصفها سابقا:-
يتم الاحتفاظ بالأولوية داخل نفس المنفذ ACL. لذلك، يتم التعامل مع قيم الأولوية التي يتم تعريفها في كل قاعدة على أنها نسبية داخل ACL.
-
عند تطبيق قوائم التحكم في الوصول متعددة المنافذ، يتم تطبيق قواعدها في المستودعات. يتم تطبيق القواعد من نفس ACL (المرفقة بكائن معين) معا داخل نفس المستودع. تعتمد أسبقية مستودعات معينة على الكائن الذي يتم إرفاق ACL بالمنفذ إليه.
-
هنا، أي قواعد يتم تعريفها في الإعدادات العمومية ACL (بغض النظر عن أولويتها الخاصة كما هو محدد في ACL المنفذ) دائما الأسبقية على القواعد التي يتم تعريفها في ACL التي يتم تطبيقها على vmNIC، وما إلى ذلك. بمعنى آخر، يتم فرض فصل الطبقة.
في نهاية المطاف، يمكن أن تختلف أولوية القاعدة الفعالة عن القيمة الرقمية التي تحددها في خصائص قاعدة ACL للمنفذ. مزيد من المعلومات حول كيفية فرض هذا السلوك وكيف يمكنك تغيير منطقه يليه.
-
يمكن تغيير الترتيب الذي تأخذ به ثلاثة مستويات "خاصة بالعنصر" (أي vmNIC والشبكة الفرعية للجهاز الظاهري وشبكة الجهاز الظاهري) الأسبقية.
-
لا يمكن تغيير ترتيب الإعدادات العمومية. دائما ما يكون لها الأسبقية الأعلى (أو الترتيب = 0).
-
بالنسبة إلى المستويات الثلاثة الأخرى، يمكنك تعيين الإعدادات التالية إلى قيمة رقمية بين 0 و3، حيث يكون 0 هو أعلى أسبقية (يساوي الإعدادات العمومية) و3 هو أدنى أسبقية:
-
PortACLVMNetworkAdapterPriority (الافتراضي هو 1)
-
PortACLVMSubnetPriority (الافتراضي هو 2)
-
PortACLVMNetworkPriority (الافتراضي هو 3)
-
-
إذا قمت بتعيين نفس القيمة (0 إلى 3) لإعدادات التسجيل المتعددة هذه، أو إذا قمت بتعيين قيمة خارج نطاق 0 إلى 3، فسيفشل VMM مرة أخرى في السلوك الافتراضي.
-
-
الطريقة التي يتم بها فرض الترتيب هي تغيير أولوية القاعدة الفعالة بحيث تتلقى قواعد ACL التي تم تعريفها على مستوى أعلى أولوية أعلى (أي قيمة رقمية أصغر). عند حساب ACL الفعال، يتم "اطبقر" كل قيمة أولوية قاعدة نسبية بالقيمة أو "الخطوة" الخاصة بالمستوى.
-
القيمة الخاصة بالمستوى هي "الخطوة" التي تفصل المستويات المختلفة. بشكل افتراضي، يكون حجم "الخطوة" 10000 ويتم تكوينه بواسطة إعداد التسجيل التالي:
PortACLLayerSeparation
-
وهذا يعني أنه في هذا الوضع، لا يمكن لأي أولوية قاعدة فردية داخل ACL (أي قاعدة يتم التعامل معها على أنها نسبية) أن تتجاوز قيمة الإعداد التالي:
PortACLLayerSeparation (افتراضيا، 10000)
مثال على التكوين
افترض أن جميع الإعدادات لها قيمها الافتراضية. (تم وصفها مسبقا.)
-
لدينا ACL مرفق ب vmNIC (PortACLVMNetworkAdapterPriority = 1).
-
يتم تحديد الأولوية الفعالة لكافة القواعد المحددة في ACL هذه بواسطة 10000 (قيمة PortACLLayerSeparation).
-
نحن نحدد قاعدة في ACL هذه لها أولوية تم تعيينها إلى 100.
-
ستكون الأولوية الفعالة لهذه القاعدة هي 10000 + 100 = 10100.
-
ستتضمن القاعدة الأسبقية على القواعد الأخرى ضمن نفس ACL التي تكون الأولوية لها أكبر من 100.
-
ستكون للقاعدة دائما الأسبقية على أي قواعد يتم تعريفها في قوائم التحكم بالوصول المرفقة على مستوى شبكة الجهاز الظاهري والشبكة الفرعية للجهاز الظاهري. (هذا صحيح لأن هذه تعتبر مستويات "أقل").
-
لن تأخذ القاعدة الأسبقية على أي قواعد محددة في ACL للإعدادات العمومية.
مزايا هذا الوضع
-
هناك أمان أفضل في سيناريوهات متعددة المستأجرين لأن قواعد ACL للمنفذ التي يتم تعريفها من قبل مسؤول Fabric (على مستوى الإعدادات العمومي) ستكون لها الأسبقية دائما على أي قواعد يتم تعريفها من قبل المستأجرين أنفسهم.
-
يتم منع أي تعارضات في قاعدة ACL للمنفذ (أي حالات الغموض) تلقائيا بسبب فصل الطبقة. من السهل جدا التنبؤ بالقواعد التي ستكون فعالة ولماذا.
تحذيرات مع هذا الوضع
-
مرونة أقل. إذا قمت بتعريف قاعدة (على سبيل المثال، "رفض كافة نسبة استخدام الشبكة إلى المنفذ 80") في الإعدادات العمومية، فلا يمكنك أبدا إنشاء استثناء أكثر دقة من هذه القاعدة في طبقة أقل (على سبيل المثال، "السماح بالمنفذ 80 فقط على هذا الجهاز الظاهري الذي يقوم بتشغيل خادم ويب شرعي").
الأولوية النسبية
لتمكين هذا الوضع، قم بتعيين الخاصية PortACLAbsolutePriority في السجل إلى قيمة 1.
في هذا الوضع، تنطبق المبادئ التالية بالإضافة إلى المفاهيم الأساسية الموضحة سابقا:-
إذا كان أحد الكائنات يقع ضمن نطاق قوائم التحكم في الوصول المتعددة (على سبيل المثال، شبكة الجهاز الظاهري والشبكة الفرعية للجهاز الظاهري)، يتم تطبيق جميع القواعد التي يتم تعريفها في أي قوائم التحكم بالوصول المرفقة بترتيب موحد (أو كمستو واحد). لا يوجد فصل بين المستويات ولا يوجد "ارتطام" على الإطلاق.
-
يتم التعامل مع جميع أولويات القواعد على أنها مطلقة، تماما كما يتم تحديدها في كل أولوية قاعدة. بمعنى آخر، الأولوية الفعالة لكل قاعدة هي نفس ما تم تعريفه في القاعدة نفسها ولا يتم تغييرها بواسطة محرك VMM قبل تطبيقها.
-
كافة إعدادات التسجيل الأخرى الموضحة في المقطع السابق ليس لها أي تأثير.
-
في هذا الوضع، لا يمكن أن تتجاوز أي أولوية قاعدة فردية في ACL (أي أولوية قاعدة يتم التعامل معها على أنها مطلقة) 65535.
مثال على التكوين
-
في الإعدادات العمومية ACL، يمكنك تحديد قاعدة تم تعيين أولويتها إلى 100.
-
في ACL المرفقة ب vmNIC، يمكنك تحديد قاعدة تم تعيين أولويتها إلى 50.
-
القاعدة التي يتم تعريفها على مستوى vmNIC لها الأسبقية لأنها ذات أولوية أعلى (أي قيمة رقمية أقل).
مزايا هذا الوضع
-
مزيد من المرونة. يمكنك إنشاء استثناءات "لمرة واحدة" من قواعد الإعدادات العمومية على المستويات الدنيا (على سبيل المثال، الشبكة الفرعية للجهاز الظاهري أو vmNIC).
تحذيرات مع هذا الوضع
-
قد يصبح التخطيط أكثر تعقيدا لأنه لا يوجد فصل بين المستويات. ويمكن أن تكون هناك قاعدة على أي مستوى تتجاوز القواعد الأخرى التي يتم تعريفها على كائنات أخرى.
-
في البيئات متعددة المستأجرين، يمكن أن يتأثر الأمان لأنه يمكن للمستأجر إنشاء قاعدة على مستوى الشبكة الفرعية للجهاز الظاهري تتجاوز النهج الذي يحدده مسؤول Fabric على مستوى الإعدادات العمومية.
-
لا يتم التخلص من تعارضات القواعد (أي حالات الغموض) تلقائيا ويمكن أن تحدث. يمكن أن يمنع VMM التعارضات فقط على نفس مستوى ACL. لا يمكن منع التعارضات عبر قوائم التحكم في الوصول المرفقة بالعناصر المختلفة. في حالات التعارض، نظرا لأنه يتعذر على VMM إصلاح التعارض تلقائيا، فإنه سيتوقف عن تطبيق القواعد وسيطرح خطأ.