Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Payment HSM est un service « BareMetal » fourni à l’aide de modules de sécurité matériel de paiement Thales payShield 10K (HSM) pour fournir des opérations de clé de chiffrement pour les transactions de paiement en temps réel et critiques dans le cloud Azure. Azure Payment HSM est conçu spécifiquement pour aider un fournisseur de services et une institution financière individuelle à accélérer la stratégie de transformation numérique de son système de paiement et à adopter le cloud public. Pour plus d’informations, consultez Azure Payment HSM : Vue d’ensemble.
Ce tutoriel explique comment créer un HSM de paiement avec des sous-réseaux d’hôte et de gestion statiques dans le même réseau virtuel, à l’aide d’un modèle ARM. Vous pouvez à la place :
- Créer un HSM de paiement avec l’hôte et le port de gestion dans le même réseau virtuel à l’aide d’Azure CLI ou de PowerShell
- Créer un HSM de paiement avec l’hôte et le port de gestion dans le même réseau virtuel à l’aide d’un modèle ARM
- Créer un HSM de paiement avec l’hôte et le port de gestion dans différents réseaux virtuels à l’aide d’Azure CLI ou de PowerShell
- Créer une ressource HSM avec un port d’hôte et de gestion avec des adresses IP dans différents réseaux virtuels à l’aide d’un modèle ARM
Un modèle Azure Resource Manager est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Vous décrivez votre déploiement prévu sans écrire la séquence de commandes de programmation pour créer le déploiement.
Prerequisites
Important
Azure Payment HSM est un service spécialisé. Pour bénéficier de l’intégration et de l’utilisation d’Azure Payment HSM, les clients doivent disposer d’un gestionnaire de comptes Microsoft affecté et d’un architecte de services cloud (CSA).
Pour vous renseigner sur le service, démarrez le processus de qualification et préparez les conditions préalables avant l’intégration, demandez à votre responsable de compte Microsoft et à CSA d’envoyer une demande par e-mail.
Vous devez inscrire les fournisseurs de ressources « Microsoft.HardwareSecurityModules » et « Microsoft.Network », ainsi que les fonctionnalités azure Payment HSM. Les étapes à suivre sont décrites dans Inscrire le fournisseur de ressources Azure Payment HSM et les fonctionnalités du fournisseur de ressources.
Pour déterminer rapidement si les fournisseurs de ressources et les fonctionnalités sont déjà inscrits, utilisez la commande Azure CLI az provider show . (La sortie de cette commande est plus lisible si vous l’affichez au format table.)
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 tableVous pouvez continuer avec ce démarrage rapide si les quatre commandes suivantes retournent « Enregistré ».
Vous devez disposer d’un abonnement Azure. Vous pouvez créer un compte gratuit si vous n’en avez pas.
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour obtenir plus d’informations, consultez Démarrage d’Azure Cloud Shell.
Si vous préférez exécuter des commandes de référence CLI localement, installez Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Comment exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Vérifier le modèle
Le modèle utilisé dans ce guide de démarrage rapide est 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"
}
},
"host1PrivateIPAddress": {
"type": "string"
},
"host2PrivateIPAddress": {
"type": "string"
},
"stampId": {
"type": "string",
"defaultValue": "stamp1",
"metadata": {
"description": "stamp id"
}
},
"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": "Host port virtual network name"
}
},
"vnetAddressPrefix": {
"type": "string",
"metadata": {
"description": "Host port virtual network address prefix"
}
},
"hsmSubnetName": {
"type": "String",
"metadata": {
"description": "Host port subnet name"
}
},
"hsmSubnetPrefix": {
"type": "string",
"metadata": {
"description": "Host port subnet prefix"
}
},
"managementVnetName": {
"type": "string",
"metadata": {
"description": "Management port virtual network name"
}
},
"managementVnetAddressPrefix": {
"type": "string",
"metadata": {
"description": "Management port virtual network address prefix"
}
},
"managementHsmSubnetName": {
"type": "String",
"metadata": {
"description": "Management port subnet name"
}
},
"managementHsmSubnetPrefix": {
"type": "string",
"metadata": {
"description": "Management port subnet prefix"
}
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.HardwareSecurityModules/dedicatedHSMs",
"apiVersion": "2021-11-30",
"name": "[parameters('resourceName')]",
"location": "[resourceGroup().location]",
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('hsmSubnetName'))]",
"[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('managementVnetName'), parameters('managementHsmSubnetName'))]"
],
"sku": {
"name": "[parameters('skuName')]"
},
"properties": {
"networkProfile": {
"subnet": {
"id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('hsmSubnetName'))]"
},
"NetworkInterfaces": [
{
"privateIpAddress": "[parameters('host1PrivateIPAddress')]"
},
{
"privateIpAddress": "[parameters('host2PrivateIPAddress')]"
}
]
},
"managementNetworkProfile": {
"subnet": {
"id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('managementVnetName'), parameters('managementHsmSubnetName'))]"
}
},
"stampId": "[parameters('stampId')]"
}
},
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2020-11-01",
"name": "[parameters('vnetName')]",
"location": "[resourceGroup().location]",
"tags": {
"fastpathenabled": "true"
},
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('vnetAddressPrefix')]"
]
},
"subnets": [
{
"name": "[parameters('hsmSubnetName')]",
"properties": {
"addressPrefix": "[parameters('hsmSubnetPrefix')]",
"serviceEndpoints": [],
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
}
],
"virtualNetworkPeerings": [],
"enableDdosProtection": false
}
},
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2020-11-01",
"name": "[parameters('managementVnetName')]",
"location": "[resourceGroup().location]",
"tags": {
"fastpathenabled": "true"
},
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('managementVnetAddressPrefix')]"
]
},
"subnets": [
{
"name": "[parameters('managementHsmSubnetName')]",
"properties": {
"addressPrefix": "[parameters('managementHsmSubnetPrefix')]",
"serviceEndpoints": [],
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
}
],
"virtualNetworkPeerings": [],
"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')]",
"serviceEndpoints": [],
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
},
{
"type": "Microsoft.Network/virtualNetworks/subnets",
"apiVersion": "2020-11-01",
"name": "[concat(parameters('managementVnetName'), '/', parameters('managementHsmSubnetName'))]",
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks', parameters('managementVnetName'))]"
],
"properties": {
"addressPrefix": "[parameters('managementHsmSubnetPrefix')]",
"serviceEndpoints": [],
"delegations": [
{
"name": "Microsoft.HardwareSecurityModules.dedicatedHSMs",
"properties": {
"serviceName": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
}
],
"privateEndpointNetworkPolicies": "Enabled",
"privateLinkServiceNetworkPolicies": "Enabled"
}
}
]
}
La ressource Azure définie dans le modèle est la suivante :
- Microsoft.HardwareSecurityModules.dedicatedHSMs : Créez un HSM de paiement Azure.
Le fichier azuredeploy.parameters.json correspondant est le suivant :
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"resourceName": {
"value": "myPHSM"
},
"stampId": {
"value": "stamp1"
},
"skuName": {
"value": "payShield10K_LMK1_CPS60"
},
"vnetName": {
"value": "myVNet"
},
"vnetAddressPrefix": {
"value": "10.0.0.0/16"
},
"hsmSubnetName": {
"value": "mySubnet"
},
"hsmSubnetPrefix": {
"value": "10.0.0.0/24"
},
"host1PrivateIPAddress": {
"value": "10.0.0.5"
},
"host2PrivateIPAddress": {
"value": "10.0.0.6"
},
"managementVnetName": {
"value": "MGMTVNet"
},
"managementVnetAddressPrefix": {
"value": "10.1.0.0/16"
},
"managementHsmSubnetName": {
"value": "MGMTSubnet"
},
"managementHsmSubnetPrefix": {
"value": "10.1.0.0/24"
}
}
}
Déployer le modèle
Dans cet exemple, vous utilisez Azure CLI pour déployer un modèle ARM pour créer un HSM de paiement Azure.
Tout d’abord, enregistrez les fichiers «azuredeploy.json» et «azuredeploy.parameters.json» localement, à utiliser à l’étape suivante. Le contenu de ces fichiers se trouve dans la section Vérifier le modèle .
Note
Ces étapes supposent que le fichier «azuredeploy.json» et «azuredeploy.parameters.json» se trouvent dans le répertoire à partir duquel vous exécutez les commandes. Si les fichiers se trouvent dans un autre répertoire, vous devez ajuster les chemins d’accès des fichiers en conséquence.
Ensuite, créez un groupe de ressources Azure.
Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées. Utilisez la commande az group create pour créer un groupe de ressources nommé myResourceGroup à l’emplacement eastus.
az group create --name "myResourceGroup" --location "EastUS"
Enfin, utilisez la commande de création d’un groupe de déploiement Azure CLI pour déployer votre modèle ARM.
az deployment group create --resource-group "MyResourceGroup" --name myPHSMDeployment --template-file "azuredeploy.json"
Lorsque vous y êtes invité, fournissez les valeurs suivantes pour les paramètres :
- resourceName : myPaymentHSM
- vnetName : myVNet
- vnetAddressPrefix : 10.0.0.0/16
- hsmSubnetName : mySubnet
- hsmSubnetPrefix : 10.0.0.0/24
- managementVnetName : MGMTVNet
- managementVnetAddressPrefix : 10.1.0.0/16
- managementHsmSubnetName : MGMTSubnet
- managementHsmSubnetPrefix : 10.1.0.0/24
Étapes suivantes
Passez à l’article suivant pour découvrir comment afficher votre HSM de paiement.
Autres ressources :
- Lire une vue d’ensemble du HSM de paiement
- Découvrez comment démarrer avec HSM de paiement Azure
- Consultez certains scénarios de déploiement courants
- En savoir plus sur la certification et la conformité
- Consulter la foire aux questions