إدارة بيانات الاعتماد في Azure Automation

يحتوي أصل بيانات الاعتماد التلقائية على عنصر يحتوي على بيانات اعتماد الأمان، مثل اسم مستخدم وكلمة مرور. تستخدم تكوينات DSC ودفاتر التشغيل cmdlets التي تقبل عنصر PSCredential للمصادقة. بدلا من ذلك، يمكنهم استخراج اسم المستخدم وكلمة المرور عنصر PSCredential لتوفيرها لبعض التطبيقات أو الخدمات التي تتطلب المصادقة.

إشعار

تتضمن الأصول الآمنة في Azure Automation بيانات الاعتماد والشهادات والاتصالات والمتغيرات المشفرة. يتم تشفير هذه الأصول وتخزينها في Azure Automation باستخدام مفتاح فريد يتم إنشاؤه لكل حساب Automation. يخزن Azure Automation المفتاح في Key Vault المدار من قبل النظام. قبل تخزين أصل آمن، تقوم الأتمتة بتحميل المفتاح من Key Vault ثم تستخدمه لتشفير الأصل.

إشعار

للحصول على معلومات حول عرض البيانات الشخصية أو حذفها، راجع طلبات موضوع بيانات Azure للقانون العام لحماية البيانات (GDPR). لمزيد من المعلومات حول القانون العام لحماية البيانات (GDPR)، راجع قسم القانون العام لحماية البيانات (GDPR) في مركز توثيق Microsoft وقسم القانون العام لحماية البيانات (GDPR) لمدخل Service Trust.

PowerShell استخدم cmdlets للوصول إلى بيانات الاعتماد

تنشئ cmdlets في الجدول التالي بيانات الاعتماد التلقائية وتديرها باستخدام PowerShell. يتم شحنه كجزء من وحدات Az.

Cmdlet ‏‏الوصف
Get-AzAutomationCredential استرداد عنصر CredentialInfo يحتوي على بيانات تعريف حول بيانات الاعتماد. لا تسترد cmdlet عنصر PSCredential نفسه.
New-AzAutomationCredential إنشاء بيانات اعتماد تلقائية جديدة.
Remove-AzAutomationCredential إزالة بيانات الاعتماد التلقائية.
Set-AzAutomationCredential تعيين خصائص بيانات الاعتماد التلقائية الموجودة.

تستخدم cmdlets الأخرى للوصول إلى بيانات الاعتماد

يتم استخدام cmdlets في الجدول التالي للوصول إلى بيانات الاعتماد في تكوينات DSC ودفاتر التشغيل.

Cmdlet ‏‏الوصف
Get-AutomationPSCredential الحصول على عنصر PSCredential لاستخدامه في تكوين DSC أو دفتر التشغيل. غالبا، يجب استخدام هذا cmdlet الداخلي بدلا من Get-AzAutomationCredential cmdlet، حيث لا يقوم الأخير إلا باسترداد معلومات بيانات الاعتماد فقط. هذه المعلومات ليست مفيدة عادة لتمريرها إلى cmdlet آخر.
الحصول على بيانات الاعتماد الحصول على بيانات اعتماد مع مطالبة باسم المستخدم وكلمة المرور. يعد هذا cmdlet جزءً من الوحدة النمطية الافتراضية Microsoft.PowerShell.Security. يرجى الاطلاع على الوحدات النمطية الافتراضية.
New-AzureAutomationCredential إنشاء أصل بيانات اعتماد. يعد هذا cmdlet جزءً من الوحدة النمطية الافتراضية لـAzure. يرجى الاطلاع على الوحدات النمطية الافتراضية.

لاسترداد عناصر PSCredential في التعليمات البرمجية الخاصة بك، يجب استيراد الوحدة النمطية Orchestrator.AssetManagement.Cmdlets. لمزيد من المعلومات، راجع إدارة الوحدات النمطية في Azure Automation.

Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue

إشعار

يجب تجنب استخدام المتغيرات في معلمة Name من Get-AutomationPSCredential. يمكن أن يتسبب استخدامها في تعقيد اكتشاف التبعيات بين تكوينات DSC أو دفاتر التشغيل وأصول بيانات الاعتماد في وقت التصميم.

دالات Python التي تصل إلى بيانات الاعتماد

يتم استخدام الدالة في الجدول التالي للوصول إلى بيانات الاعتماد في دفتر تشغيل Python 2 و 3. دفتر تشغيل Python 3 حاليًا قيد المعاينة.

الوظيفة ‏‏الوصف
automationassets.get_automation_credential استرداد معلومات حول أصل بيانات اعتماد.

إشعار

استيراد الوحدة النمطية automationassets في الجزء العلوي من دفتر تشغيل Python للوصول إلى دالة الأصول.

إنشاء أصل بيانات اعتماد جديد

يمكنك إنشاء أصل بيانات اعتماد جديد باستخدام مدخل Azure أو استخدام Windows PowerShell.

إنشاء أصل بيانات اعتماد جديد مع مدخل Azure

  1. من حساب Automation، في الجزء الأيسر حدد Credentials ضمن Shared Resources.

  2. في صفحة Credentials، حدد Add a credential.

  3. في جزء New Credential، أدخل اسم بيانات اعتماد مناسب باتباع معايير التسمية الخاصة بك.

  4. اكتب معرف الوصول الخاص بك في حقل User name.

  5. بالنسبة لكل من حقلي كلمة المرور، أدخل مفتاح الوصول السري.

    Create new credential

  6. إذا كان مربع multifactor authentication محددًا، قم بإلغاء تحديده.

  7. انقر فوق Create لحفظ أصل بيانات الاعتماد الجديد.

إشعار

لا بدعم Azure Automation حسابات المستخدمين التي تستخدم مصادقة متعددة العوامل.

إنشاء أصل بيانات اعتماد جديد باستخدام Windows PowerShell

يوضح المثال التالي كيفية إنشاء أصل بيانات اعتماد تلقائية جديد. يتم إنشاء عنصر PSCredential أولًا بالاسم وكلمة المرور، ثم يتم استخدامه لإنشاء أصل بيانات الاعتماد. بدلا من ذلك، يمكنك استخدام cmdlet Get-Credential لمطالبة المستخدم بكتابة اسم وكلمة مرور.

$user = "MyDomain\MyUser"
$pw = ConvertTo-SecureString "PassWord!" -AsPlainText -Force
$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $user, $pw
New-AzureAutomationCredential -AutomationAccountName "MyAutomationAccount" -Name "MyCredential" -Value $cred

الحصول على أصل بيانات الاعتماد

يقوم تكوين DSC أو دفتر التشغيل باسترداد أصل بيانات اعتماد باستخدام cmdlet Get-AutomationPSCredential داخلي. يحصل هذا cmdlet على عنصر PSCredential يمكنك استخدامه مع cmdlet يتطلب بيانات اعتماد. يمكنك أيضا استرداد خصائص عنصر بيانات الاعتماد لاستخدامها بشكل فردي. يحتوي العنصر على خصائص لاسم المستخدم وكلمة المرور الآمنة.

إشعار

لا يقوم cmdlet Get-AzAutomationCredentialباسترداد عنصر PSCredential الذي يمكنه استخدامه للمصادقة. لا يوفر إلا معلومات حول بيانات الاعتماد فقط. إذا كنت بحاجة إلى استخدام بيانات اعتماد في دفتر تشغيل، يجب استردادها كعنصر PSCredential باستخدام Get-AutomationPSCredential.

بدلا من ذلك، يمكنك استخدام أسلوب GetNetworkCredential لاسترداد عنصر NetworkCredential الذي يمثل إصدار غير آمن من كلمة المرور.

مثال دفتر تشغيل نصي

يوضح المثال التالي كيفية استخدام بيانات اعتماد PowerShell في دفتر تشغيل. تقوم باسترداد بيانات الاعتماد وتعيين اسم المستخدم وكلمة المرور الخاصة بها لمتغيرات.

$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password

يمكنك أيضا استخدام بيانات اعتماد للمصادقة على Azure باستخدام Connect-AzAccount بعد الاتصال أولًا بهوية مدارة. يستخدم هذا المثال هوية مدارة معينة من قبل النظام.

# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process

# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext

# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password

$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)

# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
    -TenantId $AzureContext.Subscription.TenantId `
    -DefaultProfile $AzureContext

مثال دفتر التشغيل الرسومي

يمكنك إضافة نشاط cmdlet Get-AutomationPSCredential داخلي لدفتر تشغيل رسومي بالنقر بزر الماوس الأيمن فوق credential في جزء Library من محرر الرسوم وتحديد Add to canvas.

Add credential cmdlet to canvas

تعرض الصورة التالية مثالًا لاستخدام بيانات اعتماد في دفتر تشغيل رسومي. في هذه الحالة، توفر بيانات الاعتماد مصادقة لدفتر تشغيل لموارد Azure، كما هو موضح في استخدام معرف Microsoft Entra في Azure Automation للمصادقة على Azure. يقوم النشاط الأول باسترداد بيانات الاعتماد التي لديها حق الوصول إلى اشتراك Azure. ثم يستخدم نشاط اتصال الحساب بيانات الاعتماد هذه لتوفير المصادقة لأي أنشطة تأتي بعده. يتم استخدام ارتباط المسار هنا حيث يتوقع Get-AutomationPSCredential عنصر واحد.

Credential workflow with pipeline link example

استخدام بيانات الاعتماد في تكوين DSC

في حين أن تكوينات DSC في Azure Automation يمكن أن تعمل مع أصول بيانات الاعتماد باستخدام Get-AutomationPSCredential، فيمكنها أيضا تمرير أصول بيانات الاعتماد عبر المعلمات. لمزيد من المعلومات، راجع تجميع التكوينات في Azure Automation DSC.

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