Partilhar via


Provisionar novos SIMs para o Azure Private 5G Core - modelo ARM

Os recursos SIM representam SIMs físicos ou eSIMs usados por equipamentos de usuário (UEs) servidos pela rede móvel privada. Neste guia de instruções, você aprenderá a provisionar novos SIMs para uma rede móvel privada existente usando um modelo do Azure Resource Manager (modelo ARM).

Um modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo utiliza sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.

Se o seu ambiente cumpre os pré-requisitos e se está familiarizado com a utilização de modelos ARM, selecione o botão Implementar no Azure. O modelo será aberto no portal do Azure.

Botão para implantar o modelo do Gerenciador de Recursos no Azure.

Pré-requisitos

  • Certifique-se de que pode iniciar sessão no portal do Azure utilizando uma conta com acesso à subscrição ativa que identificou em Concluir as tarefas de pré-requisito para implementar uma rede móvel privada. Essa conta deve ter a função de Colaborador interna no escopo da assinatura.
  • Identifique o nome do recurso de Rede Móvel correspondente à sua rede móvel privada e o grupo de recursos que o contém.
  • Identifique a região do Azure na qual você implantou sua rede móvel privada.
  • Escolha um nome para o novo grupo de SIM ao qual seus SIM serão adicionados.
  • Identifique a política de SIM que você deseja atribuir aos SIM que está provisionando. Você já deve ter criado essa política de SIM usando as instruções em Configurar uma política de SIM - portal do Azure.

Colete as informações necessárias para seus SIMs

Para começar, colete os valores na tabela a seguir para cada SIM que você deseja provisionar.

Value Nome do parâmetro
Nome do SIM. O nome do SIM deve conter apenas caracteres alfanuméricos, traços e sublinhados. simName
O Número de Identificação da Placa de Circuito Integrado (ICCID). A ICCID identifica um SIM ou eSIM físico específico e inclui informações sobre o país/região e o emissor do SIM. O ICCID é opcional e é um valor numérico único entre 19 e 20 dígitos de comprimento, começando com 89. integratedCircuitCardIdentifier
A identidade internacional de assinante móvel (IMSI). O IMSI é um número único (geralmente 15 dígitos) que identifica um dispositivo ou usuário em uma rede móvel. internationalMobileSubscriberIdentity
A chave de autenticação (ki). O Ki é um valor exclusivo de 128 bits atribuído ao SIM por um operador e é usado com o código de operador derivado (OPc) para autenticar um usuário. Deve ser uma cadeia de 32 caracteres, contendo apenas caracteres hexadecimais. authenticationKey
O código de operador derivado (OPc). O OPc é retirado do Ki do SIM e do código de operador (OP) da rede. A instância principal do pacote a usa para autenticar um usuário usando um algoritmo baseado em padrões. O OPc deve ser uma cadeia de 32 caracteres, contendo apenas caracteres hexadecimais. operatorKeyCode
O tipo de dispositivo que usa este SIM. Esse valor é uma cadeia de caracteres de forma livre opcional. Você pode usá-lo conforme necessário para identificar facilmente os tipos de dispositivos usando a rede móvel privada da empresa. deviceType
A política do SIM a atribuir ao SIM. Isso é opcional, mas seus SIMs não poderão usar a rede móvel privada sem uma política de SIM atribuída. simPolicyId

Coletar as informações necessárias para atribuir endereços IP estáticos

Você só precisa concluir esta etapa se todas as seguintes condições se aplicarem:

  • Você está usando uma ou mais matrizes JSON para provisionar seus SIMs.
  • Você configurou a alocação de endereços IP estáticos para sua(s) instância(s) principal(is) do pacote.
  • Você deseja atribuir endereços IP estáticos aos SIMs durante o provisionamento do SIM.

Colete os valores na tabela a seguir para cada SIM que você deseja provisionar. Se a sua rede móvel privada tiver várias redes de dados e pretender atribuir um endereço IP estático diferente para cada rede de dados a este SIM, recolha os valores para cada endereço IP.

Cada endereço IP deve vir do pool que você atribuiu para alocação de endereço IP estático ao criar a rede de dados relevante, conforme descrito em Coletar valores de rede de dados. Para obter mais informações, consulte Alocar pools de endereços IP do equipamento do usuário (UE).

Value Nome do campo no portal do Azure Nome do parâmetro JSON
A rede de dados que o SIM utilizará. Não aplicável. staticIpConfiguration.attachedDataNetworkId
A fatia de rede que o SIM utilizará. Não aplicável. staticIpConfiguration.sliceId
O endereço IP estático a ser atribuído ao SIM. Não aplicável. staticIpConfiguration.staticIpAddress

Preparar uma ou mais matrizes JSON para seus SIMs

Use as informações coletadas em Coletar as informações necessárias para seus SIMs para criar uma ou mais matrizes JSON contendo propriedades para até 1000 dos SIMs que você deseja provisionar. Segue-se um exemplo de uma matriz que contém propriedades para dois SIMs (SIM1 e SIM2).

Se não quiser atribuir uma política de SIM ou um endereço IP estático agora, pode eliminar os simPolicy parâmetros e/ou staticIpConfiguration .

Nota

O tamanho máximo do corpo da solicitação de API é de 4MB. Recomendamos inserir um máximo de 1000 SIMs por matriz JSON para permanecer abaixo desse limite. Se você quiser provisionar mais de 1000 SIMs, crie vários arrays e repita o processo de provisionamento para cada um. Como alternativa, você pode usar o portal do Azure para provisionar até 10.000 SIMs por arquivo 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"
	}
   ]
 }
]

Rever o modelo

O modelo utilizado neste início rápido pertence aos Modelos de Início Rápido do 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'))]"
    }
  ]
}

Os seguintes recursos do Azure são definidos no modelo.

Implementar o modelo

  1. Selecione o link a seguir para entrar no Azure e abrir um modelo.

    Botão para implantar o modelo do Gerenciador de Recursos no Azure.

  2. Selecione ou insira os seguintes valores, usando as informações recuperadas em Pré-requisitos.

    • Subscrição: selecione a subscrição do Azure que utilizou para criar a sua rede móvel privada.
    • Grupo de recursos: selecione o grupo de recursos que contém o recurso Rede Móvel que representa a sua rede móvel privada.
    • Região: selecione a região na qual você implantou a rede móvel privada.
    • Localização: insira o nome de código da região na qual você implantou a rede móvel privada.
    • Nome da Rede Móvel Existente: introduza o nome do recurso Rede Móvel que representa a sua rede móvel privada.
    • Nome da política de SIM existente: insira o nome da política de SIM que você deseja atribuir aos SIMs.
    • Nome do Grupo Sim: insira o nome do novo grupo SIM.
    • Recursos Sim: cole em uma das matrizes JSON que você preparou em Preparar uma ou mais matrizes JSON para seus SIMs.

    Captura de tela do portal do Azure mostrando os campos de configuração para o modelo ARM de SIMs.

  3. Selecione Rever + criar.

  4. O Azure agora validará os valores de configuração que você inseriu. Você verá uma mensagem indicando que seus valores passaram na validação.

    Se a validação falhar, você verá uma mensagem de erro e as guias Configuração contendo a configuração inválida serão sinalizadas. Selecione a(s) guia(s) sinalizada(s) e use as mensagens de erro para corrigir a configuração inválida antes de retornar à guia Revisar + criar .

  5. Depois que a configuração for validada, você poderá selecionar Criar para provisionar seus SIMs. O portal do Azure exibirá uma tela de confirmação quando os SIM tiverem sido provisionados.

  6. Se você estiver provisionando mais de 1000 SIMs, repita esse processo para cada uma de suas matrizes JSON.

Rever os recursos implementados

  1. Selecione Ir para o grupo de recursos.

    Captura de ecrã do portal do Azure a mostrar uma confirmação de implementação para o modelo ARM.

  2. Confirme se o recurso Grupo SIM foi criado no grupo de recursos.

    Captura de ecrã do portal do Azure a mostrar um grupo de recursos que contém um grupo SIM recém-criado.

  3. Selecione o recurso Grupo SIM e confirme se todos os seus SIM foram provisionados corretamente.

    Captura de ecrã do portal do Azure a mostrar um recurso de grupo SIM que contém SIMs.

Próximos passos