كيفية توزيع قالب Azure Resource Manager خاص مع رمز SAS المميز

عندما يتواجد قالب إدارة موارد Azure (قالب Azure Resource Manager) في حساب التخزين، يمكنك تقييد الوصول إلى القالب لتجنب عرضه علناً. يمكنك الوصول إلى قالب آمن عن طريق إنشاء رمز مميز لتوقيع وصول مشترك (SAS) للقالب وتوفير ذلك الرمز أثناء التوزيع. توضح هذه المقالة كيفية استخدام Azure PowerShell أو Azure CLI لتوزيع قالب ARM مع رمز SAS بشكل آمن.

ستجد معلومات حول كيفية حماية الوصول إلى قوالب ARM الخاصة بك وإدارتها مع توجيهات حول كيفية القيام بما يلي:

  • إنشاء حساب تخزين مع حاوية آمنة
  • تحميل القالب إلى حساب تخزين
  • توفير رمز SAS المميز أثناء التوزيع

هام

بدلاً من تأمين القالب الخاص بك باستخدام رمز SAS، ضع في اعتبارك استخدام مواصفات القالب. يمكنك باستخدام مواصفات القالب مشاركة القوالب مع مستخدمين آخرين في مؤسستك وإدارة الوصول إلى القوالب من خلال التحكم في الوصول استناداً إلى الدور الخاص بـ Azure.

إنشاء حساب تخزين مع حاوية آمنة

يقوم البرنامج النصي التالي بإنشاء حساب تخزين وحاوية مع إيقاف الوصول العام لأمان القالب.

New-AzResourceGroup `
  -Name ExampleGroup `
  -Location "Central US"
New-AzStorageAccount `
  -ResourceGroupName ExampleGroup `
  -Name {your-unique-name} `
  -Type Standard_LRS `
  -Location "Central US"
Set-AzCurrentStorageAccount `
  -ResourceGroupName ExampleGroup `
  -Name {your-unique-name}
New-AzStorageContainer `
  -Name templates `
  -Permission Off

تحميل قالب خاص إلى حساب التخزين

الآن، أنت مستعد لتحميل القالب إلى حساب التخزين. قم بتوفير المسار إلى القالب الذي تريد استخدامه.

Set-AzStorageBlobContent `
  -Container templates `
  -File c:\Templates\azuredeploy.json

توفير رمز SAS المميز أثناء التوزيع

لتوزيع قالب خاص في حساب تخزين، قم بإنشاء رمز SAS ثم قم بتضمينه في URI للقالب. تعيين وقت انتهاء الصلاحية لإتاحة الوقت الكافي لإكمال التوزيع.

هام

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

# get the URI with the SAS token
$templateuri = New-AzStorageBlobSASToken `
  -Container templates `
  -Blob azuredeploy.json `
  -Permission r `
  -ExpiryTime (Get-Date).AddHours(2.0) -FullUri

# provide URI with SAS token during deployment
New-AzResourceGroupDeployment `
  -ResourceGroupName ExampleGroup `
  -TemplateUri $templateuri

للاطلاع على مثال لاستخدام رمز SAS المميز مع القوالب المرتبطة، راجع استخدام قوالب مرتبطة مع إدارة موارد Azure.

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