التشغيل السريع: إنشاء مجموعة إدارة باستخدام .NET Core

مجموعات الإدارة هي حاويات تساعدك على إدارة الوصول والنهج والامتثال عبر اشتراكات متعددة. أُنشئت هذه الحاويات لإنشاء تسلسل هرمي فعال وكفء يمكن استخدامه مع Azure Policy وAzure Role Based Access Controls. لمزيد من المعلومات حول مجموعات الإدارة، يُرجى الرجوع إلى تنظيم الموارد باستخدام مجموعات إدارة Azure.

قد تستغرق مجموعة الإدارة الأولى التي تم إنشاؤها في الدليل ما يصل إلى 15 دقيقة لإكمالها. هناك عمليات التي تعمل في المرة الأولى لإعداد خدمة مجموعات الإدارة داخل Azure لدليلك. تتلقى إشعاراً عند اكتمال العملية. لمزيدٍ من المعلومات، راجع الإعداد الأولي لمجموعات الإدارة.

المتطلبات الأساسية

  • في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.

  • كيان خدمة Azure، مثل clientId وclientSecret. إذا لم يكن لديك كيان خدمة للاستخدام مع Azure Policy أو كنت ترغب في إنشاء كيان جديد، فراجع مكتبات إدارة Azure لمصادقة .NET. تخطَّ خطوة تثبيت حزم .NET Core كما سنفعل ذلك في الخطوات التالية.

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

Azure Cloud Shell

Azure يستضيف Azure Cloud Shell، بيئة تفاعلية يمكن استخدامها من خلال المستعرض. يمكنك استخدام Bash أو PowerShell مع Cloud Shell للعمل مع خدمات Azure. يمكنك استخدام أوامر Cloud Shell المثبتة مسبقًا لتشغيل التعليمات البرمجية في هذه المقالة دون الحاجة إلى تثبيت أي شيء على البيئة المحلية.

لبدء Azure Cloud Shell:

خيار مثال/ رابط
انقر فوق ⁧⁩جربه⁧⁩ في الزاوية العلوية اليسرى من التعليمة البرمجية أو كتلة الأمر. تحديد ⁧⁩جربه⁧⁩ لا يقوم بنسخ التعليمة البرمجية أو الأمر تلقائيًا إلى Cloud Shell. لقطة شاشة تعرض مثالاً على Try It for Azure Cloud Shell.
انتقل إلى ⁧⁩⁧ https://shell.azure.com⁩⁧⁩، أو حدد زر ⁩تشغيل Cloud Shell لفتح Cloud Shell في المتصفح لديك. زر لتشغيل Azure Cloud Shell.
حدد زر Cloud Shell على شريط القوائم في أعلى اليمين في مدخل Microsoft Azure. لقطة شاشة تعرض زر Cloud Shell في مدخل Microsoft Azure

لاستخدام Azure Cloud Shell:

  1. ابدأ تشغيل Cloud Shell.

  2. حدد الزر نسخ على كتلة التعليمات البرمجية (أو كتلة الأوامر) لنسخ التعليمات البرمجية أو الأمر.

  3. ألصق التعليمة البرمجية أو الأمر في جلسة Cloud Shell بتحديد Ctrl+Shift+Vعلى Windows وLunix، أو بتحديد Cmd+Shift+Vعلى macOS.

  4. حدد Enter لتشغيل التعليمات البرمجية أو الأمر.

إعداد التطبيق

لتمكين NET Core من إدارة مجموعات إدارة، قم بإنشاء تطبيق وحدة تحكم جديد وتثبيت الحزم المطلوبة.

  1. تأكد من تثبيت أحدث إصدار من .NET Core (على الأقل 3.1.8). إذا لم يتم تثبيته بعد، فقم بتنزيله من dotnet.microsoft.com.

  2. تهيئة تطبيق وحدة تحكم .NET Core جديد باسم "mgCreate":

    dotnet new console --name "mgCreate"
    
  3. تغيير الدلائل إلى مجلد المشروع الجديد وتثبيت الحزم المطلوبة لـAzure Policy:

    # Add the Azure Policy package for .NET Core
    dotnet add package Microsoft.Azure.Management.ManagementGroups --version 1.1.1-preview
    
    # Add the Azure app auth package for .NET Core
    dotnet add package Microsoft.Azure.Services.AppAuthentication --version 1.6.1
    
  4. استبدل program.cs الافتراضي بالتعليمة البرمجية التالية واحفظ الملف المحدث:

    using System;
    using System.Collections.Generic;
    using System.Threading.Tasks;
    using Microsoft.IdentityModel.Clients.ActiveDirectory;
    using Microsoft.Rest;
    using Microsoft.Azure.Management.ManagementGroups;
    using Microsoft.Azure.Management.ManagementGroups.Models;
    
    namespace mgCreate
    {
        class Program
        {
            static async Task Main(string[] args)
            {
                string strTenant = args[0];
                string strClientId = args[1];
                string strClientSecret = args[2];
                string strGroupId = args[3];
                string strDisplayName = args[4];
    
                var authContext = new AuthenticationContext($"https://login.microsoftonline.com/{strTenant}");
                var authResult = await authContext.AcquireTokenAsync(
                       "https://management.core.windows.net",
                       new ClientCredential(strClientId, strClientSecret));
    
                using (var client = new ManagementGroupsAPIClient(new TokenCredentials(authResult.AccessToken)))
                {
                    var mgRequest = new CreateManagementGroupRequest
                    {
                        DisplayName = strDisplayName
                    };
                    var response = await client.ManagementGroups.CreateOrUpdateAsync(strGroupId, mgRequest);
                }
            }
        }
    }
    
  5. إنشاء تطبيق وحدة التحكم mgCreate ونشره:

    dotnet build
    dotnet publish -o {run-folder}
    

إنشاء مجموعة الإدارة

في هذه البداية السريعة، يمكنك إنشاء مجموعة إدارة جديدة في مجموعة إدارة الجذر.

  1. قم بتغيير الدلائل إلى {run-folder} التي قمت بتعريفها باستخدام الأمر dotnet publish السابق.

  2. أدخل الأمر التالي في المحطة الطرفية:

    mgCreate.exe `
       "{tenantId}" `
       "{clientId}" `
       "{clientSecret}" `
       "{groupID}" `
       "{displayName}"
    

الأوامر السابقة استخدام المعلومات التالية:

  • {tenantId} - استبدل بمعرف المستأجر الخاص بك
  • {clientId} - استبدل معرّف العميل لمدير الخدمة
  • استبدل {clientSecret} بمفتاح العميل السري لمدير الخدمة
  • استبدل {groupID} بمعرف لمجموعة الإدارة الجديدة
  • استبدل {displayName} باسم مألوف لمجموعة الإدارة الجديدة

والنتيجة هي مجموعة إدارة جديدة في مجموعة إدارة الجذر.

تنظيف الموارد

  • حذف مجموعة الإدارة الجديدة من خلال المدخل.

  • إذا كنت ترغب في إزالة تطبيقات وحدة تحكم .NET Core والحزم المثبتة، فاحذف مجلد المشروع mgCreate.

الخطوات التالية

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

لمعرفة المزيد حول مجموعات الإدارة وكيفية إدارة التسلسل الهرمي للموارد، تابع: