التشغيل السريع: إنشاء Azure payment HSM باستخدام قالب ARM
Azure Payment HSM هي خدمة "BareMetal" يتم تسليمها باستخدام وحدات أمان أجهزة الدفع Thales payShield 10K (HSM) لتوفير عمليات مفتاح التشفير لمعاملات الدفع الهامة في الوقت الفعلي في سحابة Azure. تم تصميم Azure Payment HSM خصيصا لمساعدة موفر الخدمة ومؤسسة مالية فردية على تسريع استراتيجية التحول الرقمي لنظام الدفع الخاصة بهم واعتماد السحابة العامة. لمزيد من المعلومات، راجع Azure Payment HSM: نظرة عامة.
يصف هذا التشغيل السريع كيفية إنشاء HSM دفع مع المضيف ومنفذ الإدارة في نفس الشبكة الظاهرية. يمكنك بدلا من ذلك:
- إنشاء HSM دفع مع المضيف ومنفذ الإدارة في شبكة ظاهرية مختلفة باستخدام قالب ARM
- إنشاء مورد HSM مع المضيف ومنفذ الإدارة مع عناوين IP في شبكات ظاهرية مختلفة باستخدام قالب ARM
قالب Azure Resource Manager هو ملف JavaScript Object Notation (JSON) الذي يحدد البنية الأساسية والتكوين لمشروعك. يستخدم القالب عبارات توضيحية. يمكنك وصف النشر المقصود دون كتابة تسلسل أوامر البرمجة لإنشاء النشر.
المتطلبات الأساسية
هام
Azure Payment HSM هي خدمة متخصصة. للتأهل لإلحاق Azure Payment HSM واستخدامه، يجب أن يكون لدى العملاء مدير حساب Microsoft معين وأن يكون لديهم مهندس خدمة سحابية (CSA).
للاستفسار عن الخدمة، ابدأ عملية التأهيل، وإعداد المتطلبات الأساسية قبل الالتحاق، اطلب من مدير حساب Microsoft وCSA إرسال طلب عبر البريد الإلكتروني.
يجب عليك تسجيل موفري الموارد "Microsoft.HardwareSecurityModules" و"Microsoft.Network"، بالإضافة إلى ميزات Azure Payment HSM. توجد خطوات القيام بذلك في تسجيل موفر موارد Azure Payment HSM وميزات موفر الموارد.
تحذير
يجب تطبيق علامة ميزة "FastPathEnabled" على كل معرف اشتراك، وإضافة علامة "fastpathenabled" إلى كل شبكة ظاهرية. لمزيد من المعلومات، راجع Fastpathenabled.
للتأكد بسرعة مما إذا كان موفرو الموارد والميزات مسجلين بالفعل، استخدم الأمر Azure CLI az provider show . (يكون إخراج هذا الأمر أكثر قابلية للقراءة إذا قمت بعرضه بتنسيق جدول.)
az provider show --namespace "Microsoft.HardwareSecurityModules" -o table az provider show --namespace "Microsoft.Network" -o table az feature registration show -n "FastPathEnabled" --provider-namespace "Microsoft.Network" -o table az feature registration show -n "AzureDedicatedHsm" --provider-namespace "Microsoft.HardwareSecurityModules" -o table
يمكنك متابعة هذه البداية السريعة إذا كانت جميع هذه الأوامر الأربعة ترجع "مسجل".
لديك اشتراك Azure. يمكن create a free account في حال عدم امتلاك اشتراك.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع التشغيل السريع ل Bash في Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات أخرى لتسجيل دخول، راجع تسجيل الدخول باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات بشأن الامتدادات، راجع استخدام امتدادات مع Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
مراجعة القالب
القالب المستخدم في هذا التشغيل السريع azuredeploy.json:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"resourceName": {
"type": "String",
"metadata": {
"description": "Azure Payment HSM resource name"
}
},
"stampId": {
"type": "string",
"defaultValue": "stamp1",
"metadata": {
"description": "stamp id"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
},
"skuName": {
"type": "string",
"defaultValue": "payShield10K_LMK1_CPS60",
"metadata": {
"description": "PayShield SKU name. It must be one of the following: payShield10K_LMK1_CPS60, payShield10K_LMK1_CPS250, payShield10K_LMK1_CPS2500, payShield10K_LMK2_CPS60, payShield10K_LMK2_CPS250, payShield10K_LMK2_CPS2500"
}
},
"vnetName": {
"type": "string",
"metadata": {
"description": "Virtual network name"
}
},
"vnetAddressPrefix": {
"type": "string",
"metadata": {
"description": "Virtual network address prefix"
}
},
"hsmSubnetName": {
"type": "String",
"metadata": {
"description": "Subnet name"
}
},
"hsmSubnetPrefix": {
"type": "string",
"metadata": {
"description": "Subnet prefix"
}
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.HardwareSecurityModules/dedicatedHSMs",
"apiVersion": "2021-11-30",
"name": "[parameters('resourceName')]",
"location": "[parameters('location')]",
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('hsmSubnetName'))]"
],
"sku": {
"name": "[parameters('skuName')]"
},
"properties": {
"networkProfile": {
"subnet": {
"id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('hsmSubnetName'))]"
}
},
"managementNetworkProfile": {
"subnet": {
"id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('hsmSubnetName'))]"
}
},
"stampId": "[parameters('stampId')]"
}
},
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2020-11-01",
"name": "[parameters('vnetName')]",
"location": "[parameters('location')]",
"tags": {
"fastpathenabled": "true"
},
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('vnetAddressPrefix')]"
]
},
"subnets": [
{
"name": "[parameters('hsmSubnetName')]",
"properties": {
"addressPrefix": "[parameters('hsmSubnetPrefix')]",
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
}
],
"enableDdosProtection": false
}
},
{
"type": "Microsoft.Network/virtualNetworks/subnets",
"apiVersion": "2020-11-01",
"name": "[concat(parameters('vnetName'), '/', parameters('hsmSubnetName'))]",
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks', parameters('vnetName'))]"
],
"properties": {
"addressPrefix": "[parameters('hsmSubnetPrefix')]",
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
}
]
}
مورد Azure المحدد في القالب هو:
- Microsoft.HardwareSecurityModules.dedicatedHSMs: إنشاء Azure payment HSM.
ملف azuredeploy.parameters.json المقابل هو:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"resourceName": {
"value": "myhsm1"
},
"stampId": {
"value": "stamp1"
},
"skuName": {
"value": "payShield10K_LMK1_CPS60"
},
"vnetName": {
"value": "myHsmVnet"
},
"vnetAddressPrefix": {
"value": "10.0.0.0/16"
},
"hsmSubnetName": {
"value": "myHsmSubnet"
},
"hsmSubnetPrefix": {
"value": "10.0.0.0/24"
}
}
}
نشر القالب
في هذا المثال، يمكنك استخدام Azure CLI لنشر قالب ARM لإنشاء Azure payment HSM.
أولا، احفظ ملفات "azuredeploy.json" و"azuredeploy.parameters.json" محليا، لاستخدامها في الخطوة التالية. يمكن العثور على محتويات هذه الملفات في قسم مراجعة القالب .
إشعار
تفترض الخطوات أدناه أن ملف "azuredeploy.json" و"azuredeploy.parameters.json" موجودان في الدليل الذي تقوم بتشغيل الأوامر منه. إذا كانت الملفات موجودة في دليل آخر، يجب ضبط مسارات الملفات وفقا لذلك.
بعد ذلك، قم بإنشاء مجموعة موارد Azure.
وتُعد مجموعة الموارد عبارة عن حاوية منطقية يتم فيها توزيع موارد Azure وإدارتها. استخدم الأمر إنشاء مجموعة az لإنشاء مجموعة موارد باسم myResourceGroup في موقع eastus.
az group create --name "myResourceGroup" --location "EastUS"
وأخيرا، استخدم الأمر Azure CLI az deployment group create لنشر قالب ARM الخاص بك.
az deployment group create --resource-group "MyResourceGroup" --name myPHSMDeployment --template-file "azuredeploy.json"
عند المطالبة، قم بتوفير القيم التالية للمعلمات:
- resourceName: myPaymentHSM
- vnetName: myVNet
- vnetAddressPrefix: 10.0.0.0/16
- hsmSubnetName: mySubnet
- hsmSubnetPrefix: 10.0.0.0/24
التحقُّق من صحة عملية النشر
يمكنك التحقق من إنشاء HSM للدفع باستخدام الأمر Azure CLI az dedicated-hsm list . يكون الإخراج أسهل للقراءة إذا قمت بتنسيق النتائج كجدول:
az dedicated-hsm list -o table
يجب أن ترى اسم HSM للدفع الذي تم إنشاؤه حديثا.
تنظيف الموارد
يعتمد البدء السريع والبرامج التعليمية الأخرى في هذه المجموعة على هذا البدء السريع. إذا كنت تخطط لمواصلة العمل مع الخطوات السريعة والبرامج التعليمية اللاحقة، فقد ترغب في ترك هذه الموارد في مكانها.
يمكنك، عند عدم الحاجة إلى ذلك، استخدام الأمر az group delete في Azure CLI لإزالة مجموعة الموارد وجميع الموارد ذات الصلة:
az group delete --name "myResourceGroup"
الخطوات التالية
في هذا التشغيل السريع، قمت بنشر قالب Azure Resource Manager لإنشاء HSM دفع، والتحقق من النشر، وحذف الدفع HSM. لمعرفة المزيد حول Azure Payment HSM وكيفية دمجه مع تطبيقاتك، تابع إلى المقالات أدناه.
- قراءة نظرة عامة على الدفع HSM
- تعرف على كيفية البدء باستخدام Azure Payment HSM
- الاطلاع على بعض سيناريوهات التوزيع الشائعة
- تعرف على المصادقة والتوافق
- قراءة الأسئلة المتداولة