إضافة شهادة تطبيق إلى كتلة Service Fabric
يعنى هذا البرنامج النصي بطريقة إنشاء شهادة في Key Vault ومن ثم نشرها في إحدى مجموعات مقياس الآلة الظاهرية التي تعمل عليها مجموعتك. لا يستخدم هذا السيناريو Service Fabric مباشرة، ولكن يعتمد بدلاً من ذلك على Key Vault وعلى مجموعات مقياس الآلة الظاهرية.
إشعار
نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
إذا لزم الأمر، فقم بتثبيت Azure PowerShell باستخدام التعليمات الموجودة في دليل Azure PowerShell،ثم قم بتشغيله Connect-AzAccount
لإنشاء اتصال مع Azure.
إنشاء شهادة في Key Vault
$VaultName = ""
$CertName = ""
$SubjectName = "CN="
$policy = New-AzKeyVaultCertificatePolicy -SubjectName $SubjectName -IssuerName Self -ValidityInMonths 12
Add-AzKeyVaultCertificate -VaultName $VaultName -Name $CertName -CertificatePolicy $policy
أو تحميل شهادة موجودة في Key Vault
$VaultName= ""
$CertName= ""
$CertPassword= ""
$PathToPFX= ""
$bytes = [System.IO.File]::ReadAllBytes($PathToPFX)
$base64 = [System.Convert]::ToBase64String($bytes)
$jsonBlob = @{
data = $base64
dataType = 'pfx'
password = $CertPassword
} | ConvertTo-Json
$contentbytes = [System.Text.Encoding]::UTF8.GetBytes($jsonBlob)
$content = [System.Convert]::ToBase64String($contentbytes)
$SecretValue = ConvertTo-SecureString -String $content -AsPlainText -Force
# Upload the certificate to the key vault as a secret
$Secret = Set-AzKeyVaultSecret -VaultName $VaultName -Name $CertName -SecretValue $SecretValue
تحديث الملف التعريفي لمجموعات مقياس الآلة الظاهرية بالشهادة
$ResourceGroupName = ""
$VMSSName = ""
$CertStore = "My" # Update this with the store you want your certificate placed in, this is LocalMachine\My
# If you have added your certificate to the keyvault certificates, use
$CertConfig = New-AzVmssVaultCertificateConfig -CertificateUrl (Get-AzKeyVaultCertificate -VaultName $VaultName -Name $CertName).SecretId -CertificateStore $CertStore
# Otherwise, if you have added your certificate to the keyvault secrets, use
$CertConfig = New-AzVmssVaultCertificateConfig -CertificateUrl (Get-AzKeyVaultSecret -VaultName $VaultName -Name $CertName).Id -CertificateStore $CertStore
$VMSS = Get-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $VMSSName
# If this KeyVault is already known by the virtual machine scale set, for example if the cluster certificate is deployed from this keyvault, use
$VMSS.virtualmachineprofile.osProfile.secrets[0].vaultCertificates.Add($CertConfig)
# Otherwise use
$VMSS = Add-AzVmssSecret -VirtualMachineScaleSet $VMSS -SourceVaultId (Get-AzKeyVault -VaultName $VaultName).ResourceId -VaultCertificate $CertConfig
تحديث مجموعة مقياس الآلة الظاهرية
Update-AzVmss -ResourceGroupName $ResourceGroupName -VirtualMachineScaleSet $VMSS -VMScaleSetName $VMSSName
عند الرغبة في وضع الشهادة على أنواع عقد متعددة في كتلتك، يلزم تكرار الأجزاء الثانية والثالثة من هذا البرنامج النصي لكل نوع من العقد الذي يجب أن يملك الشهادة.
شرح السيناريو
يستخدم هذا البرنامج النصي الأوامر التالية: يرتبط كل أمر في الجدول بوثائق محددة للأمر.
الأمر | ملاحظات |
---|---|
New-AzKeyVaultCertificatePolicy | إنشاء سياسة في الذاكرة تمثل الشهادة |
Add-AzKeyVaultCertificate | نشر النهج في شهادات Vault الرئيسية |
Set-AzKeyVaultSecret | نشر السياسة إلى أسرار Vault الرئيسية |
New-AzVmssVaultCertificateConfig | إنشاء تكوين في الذاكرة يمثل الشهادة في VM |
Get-AzVmss | |
Add-AzVmssSecret | إضافة الشهادة إلى تعريف الذاكرة الخاص بمجموعة مقياس الآلة الظاهرية |
تحديث AzVmss | نشر التعريف الجديد لمجموعة مقياس الآلة الظاهرية |
الخطوات التالية
لمزيد من المعلومات حول وحدةAzure PowerShell، يرجى الاطلاع على وثائق Azure PowerShell.
يمكن العثور على عينات Azure Powershell إضافية «لتصميم الخدمة» على Azure في عينات Azure PowerShell.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ