Approvisionner de nouvelles cartes SIM pour Azure Private 5G Core – Modèle ARM

Les ressources SIM représentent les cartes SIM physiques ou eSIM utilisées par l’équipement utilisateur (UE) pris en charge par le réseau mobile privé. Dans ce guide pratique, vous apprendrez à approvisionner de nouvelles cartes SIM pour un réseau mobile privé existant à l'aide d'un modèle Azure Resource Manager (modèle ARM).

Un modèle Azure Resource Manager est un fichier JavaScript Object Notation (JSON) 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.

Si votre environnement remplit les prérequis et que vous êtes déjà familiarisé avec l’utilisation des modèles ARM, sélectionnez le bouton Déployer sur Azure. Le modèle s’ouvre dans le portail Azure.

Bouton pour déployer le modèle Resource Manager sur Azure.

Prérequis

  • Assurez-vous que vous pouvez vous connecter au portail Azure à l’aide d’un compte ayant accès à l’abonnement actif que vous avez identifié dans Effectuer les tâches préalables pour le déploiement d’un réseau mobile privé. Ce compte doit avoir le rôle de Contributeur intégré au niveau de l’étendue de l’abonnement.
  • Identifiez le nom de la ressource de réseau mobile correspondant à votre réseau mobile privé et le groupe de ressources la contenant.
  • Identifiez la région Azure dans laquelle vous avez déployé votre réseau mobile privé.
  • Choisissez un nom pour le nouveau groupe auquel vos cartes SIM seront ajoutées.
  • Identifiez la stratégie SIM que vous souhaitez attribuer aux cartes SIM que vous approvisionnez. La stratégie SIM doit avoir été préalablement créée en suivant les instructions fournies dans Configurer une stratégie SIM - Portail Azure.

Collecter les informations requises pour votre SIM

Pour commencer, recueillez les valeurs dans le tableau suivant pour chaque SIM que vous souhaitez approvisionner.

Valeur Nom du paramètre
Nom de la carte SIM. Le nom de SIM peut contenir uniquement des caractères alphanumériques, des tirets et des traits de soulignement. simName
Numéro d’identification de la carte à circuit intégré (ICCID). L’ICCID identifie une carte SIM physique ou eSIM spécifique, et comprend des informations sur le pays/la région et l’émetteur de la carte SIM. L’ICCID est facultative et est une valeur numérique unique comprise entre 19 et 20 chiffres, commençant par 89. integratedCircuitCardIdentifier
Identité de l’abonné mobile international (IMSI). L’IMSI s’agit d’un nombre unique (généralement à 15 chiffres) identifiant un appareil ou un utilisateur dans un réseau mobile. internationalMobileSubscriberIdentity
La clé d’authentification (Ki). Le Ki est une valeur 128 bits unique assignée à la carte SIM par un opérateur ; elle est utilisée avec le code d’opérateur dérivé (OPc) pour authentifier un utilisateur. Il doit s’agir d’une chaîne de 32 caractères, contenant uniquement des caractères hexadécimaux. authenticationKey
Code d’opérateur dérivé (OPc). L’OPc est extrait du Ki de la carte SIM et du code d’opérateur (OP) du réseau. L’instance Packet Core l’utilise pour authentifier un utilisateur à l’aide d’un algorithme basé sur les normes. OPc doit être une chaîne de 32 caractères, contenant uniquement des caractères hexadécimaux. operatorKeyCode
Type d’appareil utilisant cette carte SIM. Cette valeur est une chaîne de forme libre facultative. Vous pouvez l’utiliser comme requis pour identifier facilement les types d’appareils qui utilisent le réseau mobile privé de l’entreprise. deviceType
Stratégie SIM à affecter à la carte SIM. Celle-ci est facultative, mais vos cartes SIM ne pourront pas utiliser le réseau mobile privé sans stratégie SIM affectée. simPolicyId

Collecter les informations requises pour l’affectation d’adresses IP statiques

Vous devez effectuer cette étape uniquement si tous les éléments suivants s’appliquent :

  • Vous utilisez un ou plusieurs tableaux JSON pour approvisionner vos cartes SIM.
  • Vous avez configuré l’allocation d’adresses IP statiques pour vos instances packet core.
  • Vous souhaitez affecter des adresses IP statiques aux cartes SIM pendant le provisionnement de la carte SIM.

Recueillez les valeurs dans le tableau suivant pour chaque SIM que vous souhaitez approvisionner. Si votre réseau de données privé a plusieurs réseaux de données et que vous voulez attribuer une adresse IP statique différente pour chaque réseau de données à la même carte SIM, recueillez les valeurs pour chaque adresse IP.

Chaque adresse IP doit provenir du pool que vous avez affecté pour l’allocation d’adresses IP statiques lors de la création du réseau de données approprié, comme décrit dans Collecter les valeurs de réseau de données. Pour plus d’informations, consultez Allouer des pools d’adresses IP d’équipement utilisateur (UE).

Valeur Nom du champ dans le portail Azure Nom de paramètre JSON
Le réseau de données que la carte SIM utilisera. Non applicable. staticIpConfiguration.attachedDataNetworkId
La tranche réseau que la carte SIM utilisera. Non applicable. staticIpConfiguration.sliceId
Adresse IP statique à affecter à la carte SIM. Non applicable. staticIpConfiguration.staticIpAddress

Préparer un ou plusieurs tableaux JSON pour vos cartes SIM

Utilisez les informations que vous avez collectées à la section Collecter les informations requises pour votre SIM pour créer un ou plusieurs tableaux JSON contenant les propriétés d’un maximum de 1 000 cartes SIM à approvisionner. Voici un exemple de tableau contenant des propriétés pour deux SIM (SIM1 et SIM2).

Si vous ne souhaitez pas attribuer une stratégie SIM ou une adresse IP statique maintenant, vous pouvez supprimer les paramètres simPolicy et/ou staticIpConfiguration.

Remarque

La taille maximale du corps de la requête API est de 4 Mo. Nous vous recommandons d’entrer un maximum de 1 000 SIMs par tableau JSON pour rester en dessous de cette limite. Si vous souhaitez approvisionner plus de 1 000 SIMs, créez plusieurs tableaux et répétez le processus d’approvisionnement pour chacun d’eux. Vous pouvez également utiliser le Portail Microsoft Azure pour provisionner jusqu'à 10 000 cartes SIM par fichier JSON.

[
 {
  "simName": "SIM1",
  "integratedCircuitCardIdentifier": "8912345678901234566",
  "internationalMobileSubscriberIdentity": "001019990010001",
  "authenticationKey": "00112233445566778899AABBCCDDEEFF",
  "operatorKeyCode": "63bfa50ee6523365ff14c1f45f88737d",
  "deviceType": "Cellphone",
  "simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy1",
  "staticIpConfiguration" :[
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.54"
	},
    {
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.55"
	}
   ]
 },
 {
  "simName": "SIM2",
  "integratedCircuitCardIdentifier": "8922345678901234567",
  "internationalMobileSubscriberIdentity": "001019990010002",
  "authenticationKey": "11112233445566778899AABBCCDDEEFF",
  "operatorKeyCode": "63bfa50ee6523365ff14c1f45f88738d",
  "deviceType": "Sensor",
  "simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy2",
  "staticIpConfiguration" :[
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.54"
	},
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.55"
	}
   ]
 }
]

Vérifier le modèle

Le modèle utilisé dans ce démarrage rapide est tiré des modèles de démarrage rapide Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.25.53.49325",
      "templateHash": "9173523895323587869"
    }
  },
  "parameters": {
    "location": {
      "type": "string",
      "metadata": {
        "description": "Region where the SIM group will be deployed (must match the resource group region)."
      }
    },
    "existingMobileNetworkName": {
      "type": "string",
      "metadata": {
        "description": "The name of the mobile network to which you are adding the SIM group."
      }
    },
    "existingSimPolicyName": {
      "type": "string",
      "metadata": {
        "description": "The name of the SIM policy to be assigned to the SIM(s)."
      }
    },
    "simGroupName": {
      "type": "string",
      "metadata": {
        "description": "The name for the SIM group."
      }
    },
    "existingEncryptionKeyUrl": {
      "type": "string",
      "defaultValue": "",
      "metadata": {
        "description": "A unversioned key vault key to encrypt the SIM data that belongs to this SIM group. For example: https://contosovault.vault.azure.net/keys/azureKey."
      }
    },
    "existingUserAssignedIdentityResourceId": {
      "type": "string",
      "defaultValue": "",
      "metadata": {
        "description": "User-assigned identity is an identity in Azure Active Directory that can be used to give access to other Azure resource such as Azure Key Vault. This identity should have Get, Wrap key, and Unwrap key permissions on the key vault."
      }
    },
    "simResources": {
      "type": "array",
      "metadata": {
        "description": "An array containing properties of the SIM(s) you wish to create. See [Provision proxy SIM(s)](https://docs.microsoft.com/en-gb/azure/private-5g-core/provision-sims-azure-portal) for a full description of the required properties and their format."
      }
    }
  },
  "resources": [
    {
      "copy": {
        "name": "exampleSimResources",
        "count": "[length(parameters('simResources'))]"
      },
      "type": "Microsoft.MobileNetwork/simGroups/sims",
      "apiVersion": "2024-02-01",
      "name": "[format('{0}/{1}', parameters('simGroupName'), parameters('simResources')[copyIndex()].simName)]",
      "properties": {
        "integratedCircuitCardIdentifier": "[parameters('simResources')[copyIndex()].integratedCircuitCardIdentifier]",
        "internationalMobileSubscriberIdentity": "[parameters('simResources')[copyIndex()].internationalMobileSubscriberIdentity]",
        "authenticationKey": "[parameters('simResources')[copyIndex()].authenticationKey]",
        "operatorKeyCode": "[parameters('simResources')[copyIndex()].operatorKeyCode]",
        "deviceType": "[parameters('simResources')[copyIndex()].deviceType]",
        "simPolicy": {
          "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/simPolicies', parameters('existingMobileNetworkName'), parameters('existingSimPolicyName'))]"
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.MobileNetwork/simGroups', parameters('simGroupName'))]"
      ]
    },
    {
      "type": "Microsoft.MobileNetwork/simGroups",
      "apiVersion": "2024-02-01",
      "name": "[parameters('simGroupName')]",
      "location": "[parameters('location')]",
      "properties": {
        "mobileNetwork": {
          "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks', parameters('existingMobileNetworkName'))]"
        },
        "encryptionKey": {
          "keyUrl": "[parameters('existingEncryptionKeyUrl')]"
        }
      },
      "identity": "[if(not(empty(parameters('existingUserAssignedIdentityResourceId'))), createObject('type', 'UserAssigned', 'userAssignedIdentities', createObject(format('{0}', parameters('existingUserAssignedIdentityResourceId')), createObject())), createObject('type', 'None'))]"
    }
  ]
}

Les ressources Azure suivantes sont définies dans le modèle.

Déployer le modèle

  1. Sélectionnez le lien suivant pour vous connecter à Azure et ouvrir un modèle.

    Bouton pour déployer le modèle Resource Manager sur Azure.

  2. Sélectionnez ou entrez les valeurs suivantes à l’aide des informations que vous avez récupérées dans Prérequis.

    • Abonnement : sélectionnez l’abonnement Azure que vous avez utilisé pour créer votre réseau mobile privé.
    • Groupe de ressources : sélectionnez le groupe de ressources contenant la ressource de réseau mobile représentant votre réseau mobile privé.
    • Région : sélectionnez la région dans laquelle vous avez déployé le réseau mobile privé.
    • Emplacement : entrez le nom de code de la région dans laquelle vous avez déployé le réseau mobile privé.
    • Nom du réseau mobile existant : entrez le nom de la ressource de réseau mobile représentant votre réseau mobile privé.
    • Nom de la stratégie SIM existante : entrez le nom de la stratégie SIM que vous souhaitez attribuer aux cartes SIM.
    • Nom du groupe de cartes SIM : entrez le nom du nouveau groupe de cartes SIM.
    • Ressources SIM : collez l’un des tableaux JSON que vous avez préparés à la section Préparer un ou plusieurs tableaux JSON pour vos cartes SIM.

    Capture d’écran du portail Azure montrant les champs de configuration du modèle ARM des cartes SIM.

  3. Sélectionnez Revoir + créer.

  4. Azure va maintenant valider les valeurs de configuration que vous avez entrées. Vous devriez voir un message indiquant que vos valeurs ont été validées.

    Si la validation échoue, un message d’erreur s’affiche et les onglets Configuration contenant la configuration non valide sont signalés. Sélectionnez le ou les onglets marqués et utilisez les messages d’erreur pour corriger la configuration non valide avant de revenir à l’onglet Vérifier + créer.

  5. Une fois votre configuration validée, vous pouvez sélectionner Créer pour provisionner vos SIM. Le portail Azure affiche un écran de confirmation lorsque les SIM ont été provisionnées.

  6. Si vous approvisionnez plus de 1 000 cartes SIM, répétez ce processus pour chaque tableau JSON.

Vérifier les ressources déployées

  1. Sélectionnez Accéder au groupe de ressources.

    Capture d’écran du Portail Azure montrant une confirmation de déploiement pour le modèle ARM.

  2. Vérifiez que la ressource Groupe de cartes SIM a été créée dans le groupe de ressources.

    Capture d’écran du portail Azure montrant un groupe de ressources contenant un groupe de cartes SIM nouvellement créé.

  3. Sélectionnez la ressource Groupe de cartes SIM et vérifiez que toutes vos cartes SIM ont été correctement configurées.

    Capture d’écran du portail Azure montrant une ressource Groupe de cartes SIM contenant des cartes SIM.

Étapes suivantes