تكوين الهويات المدارة في تجمعات الدُفعات

تقضي الهويات المدارة لموارد Azure على إدارة الهوية وبيانات الاعتماد المعقدة من خلال توفير هوية لمورد Azure في معرف Microsoft Entra (معرف Azure AD). يتم استخدام هذه الهوية للحصول على رموز Microsoft Entra المميزة للمصادقة مع الموارد المستهدفة في Azure.

يشرح هذا الموضوع كيفية تمكين الهويات المُدارة المعينة من قبل المستخدم في تجمعات الدُفعات وكيفية استخدام الهويات المُدارة داخل العقد.

هام

يجب تكوين التجمعات باستخدام تكوين الجهاز الظاهري من أجل استخدام الهويات المدارة.

يمكن إنشاء تجمعات بهويات مُدارة باستخدام مكتبة إدارة Batch .NET ، ولكنها غير مدعومة حالياً مع مكتبة عميل Batch .NET .

إنشاء هوية مُدارة يعينها المستخدم

أولاً، أنشئ هوية مُدارة معينة من قبل المستخدم في نفس المستأجر مثل حساب الدفعة الخاص بك. يمكنك إنشاء الهوية باستخدام مدخل Microsoft Azure أو واجهة سطر أوامر Azure (Azure CLI) أو PowerShell أو Azure Resource Manager أو Azure REST API. لا تحتاج هذه الهوية المدارة إلى أن تكون في نفس مجموعة الموارد أو حتى في نفس الاشتراك.

تلميح

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

إنشاء تجمع دفعي بهويات مُدارة من قبل المستخدم

بعد قيامك بإنشاء واحد أو أكثر من الهويات المُدارة المخصصة من قبل المستخدم، يمكنك إنشاء مجمع Batch بهذه الهوية أو تلك الهويات. يمكنك:

تحذير

التحديثات الموضعية للهويات المدارة للمجموعة غير مدعومة بينما يحتوي التجمع على عقد نشطة. لن يتم تحديث عقد الحوسبة الموجودة بالتغييرات. يوصى بتحجيم التجمع إلى عقد حساب صفرية قبل تعديل مجموعة الهوية للتأكد من أن جميع الأجهزة الظاهرية لها نفس مجموعة الهويات المعينة.

إنشاء تجمع Batch في مدخل Microsoft Azure

لإنشاء تجمع دفعي بالهوية المُدارة يعينها المستخدم من خلال مدخل Microsoft Azure:

  1. قم بتسجيل الدخول إلى بوابة Azure.
  2. في شريط البحث، أدخل وحدد Batch accounts.
  3. في صفحة Batch account، حدد حساب Batch حيث تريد إنشاء تجمع Batch.
  4. في قائمة حساب Batch، ضمن Features، حدد Pools.
  5. في قائمة Pools، حدد Add لإضافة تجمع Batch جديد.
  6. بالنسبة إلى Pool ID، أدخل معرفاً لمجموعتك.
  7. بالنسبة إلى Identity، قم بتغيير الإعداد إلى User assigned.
  8. ضمن "User assigned managed identity"، حدد "Add".
  9. حدد الهوية أو الهويات المُدارة التي عيّنها المستخدم والتي تريد استخدامها. ثم حدد Add.
  10. ضمن Operating System، حدد الناشر والعرض ورقم التخزين التعريفي المراد استخدامه.
  11. اختياريا، قم بتمكين الهوية المدارة في سجل الحاوية:
    1. بالنسبة إلى Container configuration، قم بتغيير الإعداد إلى Custom. ثم حدد التكوين المخصص الخاص بك.
    2. بالنسبة إلى Start task، حدد Enabled. ثم حدد Resource files وأضف معلومات حاوية التخزين الخاصة بك.
    3. مكّن إعدادات الحاوية.
    4. تغيير Container Registry إلى Custom
    5. بالنسبة إلى مرجع الهوية، حدد حاوية التخزين.

إنشاء تجمع Batch باستخدام .NET

لإنشاء مجموعة مجمعة بالهوية المُدارة معينة من قِبل المستخدم باستخدام مكتبة إدارة Batch .NET، استخدم مثال التعليمة البرمجية التالية:

var poolParameters = new Pool(name: "yourPoolName")
    {
        VmSize = "standard_d2_v3",
        ScaleSettings = new ScaleSettings
        {
            FixedScale = new FixedScaleSettings
            {
                TargetDedicatedNodes = 1
            }
        },
        DeploymentConfiguration = new DeploymentConfiguration
        {
            VirtualMachineConfiguration = new VirtualMachineConfiguration(
                new ImageReference(
                    "Canonical",
                    "0001-com-ubuntu-server-jammy",
                    "22_04-lts",
                    "latest"),
                "batch.node.ubuntu 22.04")
        },
        Identity = new BatchPoolIdentity
        {
            Type = PoolIdentityType.UserAssigned,
            UserAssignedIdentities = new Dictionary<string, UserAssignedIdentities>
            {
                ["Your Identity Resource Id"] =
                    new UserAssignedIdentities()
            }
        }
    };

var pool = await managementClient.Pool.CreateWithHttpMessagesAsync(
    poolName:"yourPoolName",
    resourceGroupName: "yourResourceGroupName",
    accountName: "yourAccountName",
    parameters: poolParameters,
    cancellationToken: default(CancellationToken)).ConfigureAwait(false);

استخدم الهويات المُدارة المعينة من قبل المستخدم في عقد الدُفعات

تدعم العديد من وظائف Azure Batch التي تصل إلى موارد Azure الأخرى مباشرة على عقد الحوسبة، مثل Azure Storage أو Azure Container Registry، الهويات المدارة. لمزيد من المعلومات حول استخدام الهويات المُدارة مع Azure Batch، راجع الارتباطات التالية:

يمكنك أيضاً تكوين مهامك يدوياً حتى تتمكن الهويات المدارة من الوصول مباشرة إلى موارد Azure التي تدعم الهويات المدارة .

ضمن عقد Batch، يمكنك الحصول على رموز الهوية المميزة المدارة واستخدامها للمصادقة من خلال مصادقة Microsoft Entra عبر خدمة بيانات تعريف مثيل Azure.

بالنسبة لنظام التشغيل Windows، فإن البرنامج النصي PowerShell للحصول على رمز وصول للمصادقة هو:

$Response = Invoke-RestMethod -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource={Resource App Id Url}' -Method GET -Headers @{Metadata="true"}

بالنسبة إلى Linux، نص Bash النصي هو:

curl 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource={Resource App Id Url}' -H Metadata:true

لمزيد من المعلومات، راجع كيفية استخدام الهويات المُدارة لموارد Azure على Azure VM للحصول على رمز وصول .

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