Aprovisionamiento de nuevas SIM para Azure Private 5G Core: plantilla de ARM
Los recursos de SIM representan las SIM físicas o las eSIM usadas por el equipo de usuario (UE) al que da servicio la red móvil privada. En esta guía paso a paso, aprenderá a aprovisionar nuevas SIM para una red móvil privada existente mediante una plantilla de Azure Resource Manager (plantilla de ARM).
Una plantilla de Azure Resource Manager es un archivo de notación de objetos JavaScript (JSON) que define tanto la infraestructura como la configuración de un proyecto. La plantilla usa sintaxis declarativa. Se describe la implementación deseada sin escribir la secuencia de comandos de programación para crear la implementación.
Si su entorno cumple los requisitos previos y está familiarizado con el uso de plantillas de Resource Manager, seleccione el botón Implementar en Azure. La plantilla se abrirá en Azure Portal.
Requisitos previos
- Asegúrese de que puede iniciar sesión en Azure Portal mediante una cuenta con acceso a la suscripción activa que identificó en Finalización de las tareas previas necesarias para implementar una red móvil privada. Esta cuenta debe tener el rol de colaborador integrado en el ámbito de la suscripción.
- Identifique el nombre del recurso de red móvil correspondiente a la red móvil privada y el grupo de recursos que lo contiene.
- Identifique la región de Azure en la que implementó la red móvil privada.
- Elija un nombre para el nuevo grupo de SIM al que se agregarán las SIM.
- Identifique la directiva de SIM que quiere asignar a los SIM que está aprovisionando. Debe haber creado ya la directiva de SIM mediante las instrucciones de Configuración de una directiva de SIM: Azure Portal.
Recopilación de la información necesaria para las SIM
Para empezar, recopile los valores de la tabla siguiente para cada SIM que quiera aprovisionar.
Value | Nombre de parámetro |
---|---|
Nombre de SIM. El nombre de SIM solo puede contener caracteres alfanuméricos, guiones y guiones bajos. | simName |
Número de identificación de la tarjeta de circuito integrado (ICCID). El ICCID identifica una SIM física o eSIM específicas, e incluye información sobre el país y el emisor de la SIM. El ICCID es opcional y un valor numérico único que contiene entre 19 y 20 dígitos y empieza por 89. | integratedCircuitCardIdentifier |
Identidad del suscriptor móvil internacional (IMSI). IMSI es un número único (normalmente de 15 dígitos) que identifica un dispositivo o usuario en una red móvil. | internationalMobileSubscriberIdentity |
Clave de autenticación (Ki). La Ki es un valor único de 128 bits que un operador asigna a la SIM. Se usa junto con el código de operador derivado (OPc) para autenticar a un usuario. Debe ser una cadena de 32 caracteres que contenga solo caracteres hexadecimales. | authenticationKey |
Código de operador derivado (OPc). El OPc se toma de la Ki de la SIM y del código de operador (OP) de la red. La instancia de la red troncal de paquetes lo usa para autenticar a un usuario mediante un algoritmo basado en estándares. El OPc Debe ser una cadena de 32 caracteres que contenga solo caracteres hexadecimales. | operatorKeyCode |
Tipo de dispositivo que usa esta SIM. Este valor es una cadena opcional de formato libre. Puede usarse según sea necesario para identificar fácilmente los tipos de dispositivo que usan las redes móviles privadas de la empresa. | deviceType |
Directiva de SIM que se va a asignar a la SIM. Esto es opcional, pero los SIM no podrán usar la red móvil privada sin una directiva SIM asignada. | simPolicyId |
Recopile la información necesaria para asignar direcciones IP estáticas
Solo tiene que completar este paso si se aplican todas las siguientes acciones:
- Va a usar una o varias matrices JSON para aprovisionar las SIM.
- Ha configurado la asignación de direcciones IP estáticas para las instancias de núcleo de paquetes.
- Quiere asignar direcciones IP estáticas a las SIM durante el aprovisionamiento de SIM.
Recopile los valores de la siguiente tabla para cada SIM que quiera aprovisionar. Si la red móvil privada tiene varias redes de datos y quiere asignar a esta SIM una dirección IP estática diferente para cada una, recopile los valores de cada dirección IP.
Cada dirección IP debe provenir del grupo que asignó para la asignación de direcciones IP estáticas al crear la red de datos correspondiente, como se describe en Recopilación de valores de red de datos. Para más información, consulte Asignación de grupos de direcciones IP de equipo de usuario (UE).
Value | Nombre del campo en Azure Portal | Nombre de parámetro JSON |
---|---|---|
La red de datos que usará la SIM. | No aplicable. | staticIpConfiguration.attachedDataNetworkId |
El segmento de red que usará la SIM. | No aplicable. | staticIpConfiguration.sliceId |
La dirección IP estática que se asignará a la SIM. | No aplicable. | staticIpConfiguration.staticIpAddress |
Preparación de una o varias matrices JSON para las SIM
Use la información recopilada en Recopilación de la información necesaria para las SIM para crear una o varias matrices JSON que contengan propiedades para hasta 1000 SIM que quiera aprovisionar. A continuación se muestra un ejemplo de una matriz que contiene propiedades para dos SIM (SIM1
y SIM2
).
Si no desea asignar una directiva SIM o una dirección IP estática ahora, puede eliminar los parámetros simPolicy
o staticIpConfiguration
.
Nota:
El tamaño máximo del cuerpo de la solicitud de API es de 4 MB. Se recomienda escribir un máximo de 1000 SIM por matriz JSON para permanecer por debajo de este límite. Si desea aprovisionar más de 1000 SIM, cree varias matrices y repita el proceso de aprovisionamiento para cada uno. Como alternativa, puede usar Azure Portal para aprovisionar hasta 10 000 SIM por archivo 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"
}
]
}
]
Revisión de la plantilla
La plantilla usada en este inicio rápido forma parte de las plantillas de inicio rápido de Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.27.1.19265",
"templateHash": "7026271350043138477"
}
},
"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-04-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-04-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'))]"
}
]
}
Los siguientes recursos de Azure se definen en la plantilla.
- Microsoft.MobileNetwork/simGroups: un recurso que representa un grupo de SIM.
- Microsoft.MobileNetwork/simGroups/sims: un recurso que representa una SIM física o una eSIM.
Implementación de la plantilla
Seleccione el vínculo siguiente para iniciar sesión en Azure y abrir una plantilla.
Seleccione o introduzca los valores siguientes con la información que recuperó en Requisitos previos.
- Suscripción: seleccione la suscripción a Azure que usó para crear la red móvil privada.
- Grupo de recursos: seleccione el grupo de recursos que contiene el recurso de red móvil que representa la red móvil privada.
- Región: seleccione la región en la que implementó la red móvil privada.
- Ubicación: escriba el nombre del código de la región en la que implementó la red móvil privada.
- Nombre de red móvil existente: escriba el nombre del recurso de red móvil que representa la red móvil privada.
- Nombre de directiva SIM existente: escriba el nombre de la directiva SIM que quiere asignar a las SIM.
- Nombre del grupo de SIM: escriba el nombre del nuevo grupo de SIM.
- Recursos de SIM: pegue una de las matrices JSON que preparó en Preparación de una o varias matrices JSON para las SIM.
Seleccione Revisar + crear.
Azure validará ahora los valores de configuración especificados. Debería ver un mensaje que indica que los valores han superado la validación.
Si se produce un error en la validación, verá un mensaje de error y se marcarán las pestañas de Configuración que contienen la configuración no válida. Seleccione las pestañas marcadas y use los mensajes de error para corregir la configuración no válida antes de volver a la pestaña Revisión y creación.
Una vez validada la configuración, puede seleccionar Crear para aprovisionar las SIM. Azure Portal mostrará una pantalla de confirmación cuando se hayan aprovisionado las SIM.
Si va a aprovisionar más de 1000 SIM, repita este proceso con cada una de las matrices JSON.
Revisión de los recursos implementados
Seleccione Ir al grupo de recursos.
Confirme que el recurso Grupo de SIM se ha creado en el grupo de recursos.
Seleccione el recurso Grupo de SIM y confirme que todas las SIM se han aprovisionado correctamente.
Pasos siguientes
- Administre estas SIM mediante Azure Portal.
- Habilite la ocultación de SUPI si es necesario.