إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
توضح هذه المقالة أنواع البيانات المدعومة في قوالب Azure Resource Manager (قوالب ARM).
الأنواع المدعومة
ضمن قالب ARM، يمكنك استخدام أنواع البيانات هذه:
- صفيف
- قيمة منطقية
- الباحث
- كائن
- كائن آمن
- سلسلة آمنة
- خيط
الصفائف
تبدأ الصفائف بقوس أيسر ([) وتنتهي بقوس أيمن (]). يمكن تعريف صفيف في سطر واحد أو أسطر متعددة. يتم فصل كل عنصر بفاسمة.
"parameters": {
"exampleArray": {
"type": "array",
"defaultValue": [
1,
2,
3
]
}
},
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[variables('exampleArray')]"
},
"firstExampleArrayElement": {
"type": "int",
"value": "[parameters('exampleArray')[0]]"
}
}
يمكن أن تكون عناصر الصفيف من نفس النوع أو أنواعا مختلفة.
"variables": {
"mixedArray": [
"[resourceGroup().name]",
1,
true,
"example string"
]
}
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[variables('mixedArray')]"
},
"firstMixedArrayElement": {
"type": "string",
"value": "[variables('mixedArray')[0]]"
}
}
القيم المنطقية
عند تحديد القيم المنطقية، استخدم true أو false. لا يُوضع حول القيمة علامات اقتباس.
"parameters": {
"exampleBool": {
"type": "bool",
"defaultValue": true
}
},
الأعداد الصحيحة
عند تحديد قيم أعداد صحيحة، لا تستخدم علامات الاقتباس.
"parameters": {
"exampleInt": {
"type": "int",
"defaultValue": 1
}
}
بالنسبة للأعداد الصحيحة التي تم تمريرها كمعلمات مضمنة، قد يكون نطاق القيم محدودا بواسطة SDK أو أداة سطر الأوامر التي تستخدمها للتوزيع. على سبيل المثال، عند استخدام PowerShell لنشر قالب، يمكن أن تتراوح أنواع الأعداد الصحيحة من -2147483648 إلى 2147483647. لتجنب هذا التقييد، حدد قيم أعداد صحيحة كبيرة في ملف معلمة. تطبق أنواع الموارد حدودها الخاصة لخصائص الأعداد الصحيحة.
الكائنات
تبدأ العناصر بقوس متعرج أيسر ({) وتنتهي بقوس متعرج أيمن (}). تتكون كل خاصية في كائن من key و value. يتم key تضمين و value في علامات اقتباس مزدوجة ومفصولة بنقطتين (:). يتم فصل كل خاصية بفاسمة.
"parameters": {
"exampleObject": {
"type": "object",
"defaultValue": {
"name": "test name",
"id": "123-abc",
"isCurrent": true,
"tier": 1
}
}
}
يمكنك الحصول على خاصية من كائن مع رمز نقطة.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"exampleObject": {
"type": "object",
"defaultValue": {
"name": "test name",
"id": "123-abc",
"isCurrent": true,
"tier": 1
}
}
},
"resources": [
],
"outputs": {
"nameFromObject": {
"type": "string",
"value": "[parameters('exampleObject').name]"
}
}
}
في JSON، العنصر هو مجموعة غير مرتبة من أزواج صفرية أو أكبر من المفاتيح/القيم. يمكن أن يكون الترتيب مختلفًا اعتمادًا على عمليات التنفيذ. على سبيل المثال، تقوم دالة Bicep items() بفرز العناصر بالترتيب الأبجدي. في أماكن أخرى، يمكن الاحتفاظ بالترتيب الأصلي. وبسبب هذا عدم الحتمية، تجنب وضع أي افتراضات حول ترتيب مفاتيح الكائنات عند كتابة التعليمات البرمجية، والتي تتفاعل مع معلمات التوزيع والمخرجات.
السلاسل
يتم وضع علامة على السلاسل بعلامات اقتباس مزدوجة.
"parameters": {
"exampleString": {
"type": "string",
"defaultValue": "test value"
}
},
السلاسل والعناصر الآمنة
تستخدم السلسلة الآمنة نفس تنسيق السلسلة، ويستخدم العنصر الآمن نفس تنسيق العنصر. عند ضبط معلمة على سلسلة آمنة أو عنصر آمن، لا يتم حفظ قيمة المعلمة في محفوظات التوزيع ولا يتم تسجيلها. ومع ذلك، إذا ضبطت تلك القيمة الآمنة إلى خاصية لا تتوقع قيمة آمنة، فلن تكون القيمة محمية. على سبيل المثال، إذا ضبطت سلسلة آمنة إلى علامة، يتم تخزين هذه القيمة كنص عادي. استخدم سلاسل آمنة لكلمات المرور والبيانات السرية.
يوضح المثال التالي معلمتين آمنتين.
"parameters": {
"password": {
"type": "securestring"
},
"configValues": {
"type": "secureObject"
}
}
إشعار
لا تستخدم سلاسل أو كائنات آمنة كقيم إخراج. إذا قمت بتضمين قيمة آمنة كقيمة إخراج، فلن يتم عرض القيمة في محفوظات النشر ولا يمكن استردادها من قالب آخر. بدلا من ذلك، احفظ القيمة الآمنة في key vault، ومرر كمعلمة من key vault.
الخطوات التالية
للتعرف على بناء جملة القالب، راجع فهم بنية وبناء جملة قوالب ARM.