Skip to content

azurermMobileNetworkSimPolicy

Manages a Mobile Network Sim Policy.

Example Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
  this,
  "example",
  {
    location: "West Europe",
    name: "example-resources",
  }
);
const azurermMobileNetworkExample = new azurerm.mobileNetwork.MobileNetwork(
  this,
  "example_1",
  {
    location: azurermResourceGroupExample.location,
    mobile_country_code: "001",
    mobile_network_code: "01",
    name: "example-mn",
    resource_group_name: azurermResourceGroupExample.name,
  }
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkExample.overrideLogicalId("example");
const azurermMobileNetworkDataNetworkExample =
  new azurerm.mobileNetworkDataNetwork.MobileNetworkDataNetwork(
    this,
    "example_2",
    {
      location: azurermResourceGroupExample.location,
      mobile_network_id: azurermMobileNetworkExample.id,
      name: "example-mndn",
    }
  );
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkDataNetworkExample.overrideLogicalId("example");
const azurermMobileNetworkServiceExample =
  new azurerm.mobileNetworkService.MobileNetworkService(this, "example_3", {
    location: azurermResourceGroupExample.location,
    mobile_network_id: azurermMobileNetworkExample.id,
    name: "example-mns",
    pcc_rule: [
      {
        name: "default-rule",
        precedence: 1,
        service_data_flow_template: [
          {
            direction: "Uplink",
            name: "IP-to-server",
            ports: [],
            protocol: ["ip"],
            remote_ip_list: ["10.3.4.0/24"],
          },
        ],
        traffic_control_enabled: true,
      },
    ],
    service_precedence: 0,
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkServiceExample.overrideLogicalId("example");
const azurermMobileNetworkSliceExample =
  new azurerm.mobileNetworkSlice.MobileNetworkSlice(this, "example_4", {
    location: azurermResourceGroupExample.location,
    mobile_network_id: azurermMobileNetworkExample.id,
    name: "example-mns",
    single_network_slice_selection_assistance_information: [
      {
        slice_service_type: 1,
      },
    ],
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkSliceExample.overrideLogicalId("example");
const azurermMobileNetworkSimPolicyExample =
  new azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicy(this, "example_5", {
    default_slice_id: azurermMobileNetworkSliceExample.id,
    location: azurermResourceGroupExample.location,
    mobile_network_id: azurermMobileNetworkExample.id,
    name: "example-mnsp",
    registration_timer_in_seconds: 3240,
    slice: [
      {
        data_network: [
          {
            allocation_and_retention_priority_level: 9,
            allowed_services_ids: [azurermMobileNetworkServiceExample.id],
            data_network_id: azurermMobileNetworkDataNetworkExample.id,
            default_session_type: "IPv4",
            preemption_capability: "NotPreempt",
            preemption_vulnerability: "Preemptable",
            qos_indicator: 9,
            session_aggregate_maximum_bit_rate: [
              {
                downlink: "1 Gbps",
                uplink: "500 Mbps",
              },
            ],
          },
        ],
        default_data_network_id: azurermMobileNetworkDataNetworkExample.id,
        slice_id: azurermMobileNetworkSliceExample.id,
      },
    ],
    tags: {
      key: "value",
    },
    user_equipment_aggregate_maximum_bit_rate: [
      {
        downlink: "1 Gbps",
        uplink: "500 Mbps",
      },
    ],
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkSimPolicyExample.overrideLogicalId("example");

Arguments Reference

The following arguments are supported:

  • name - (Required) The name which should be used for this Mobile Network Sim Policies. Changing this forces a new Mobile Network Sim Policies to be created.

  • mobileNetworkId - (Required) The ID of the Mobile Network which the Sim Policy belongs to. Changing this forces a new Mobile Network Sim Policies to be created.

  • defaultSliceId - (Required) The ID of default slice to use if the UE does not explicitly specify it. This slice must exist in the slice block.

  • location - (Required) Specifies the Azure Region where the Mobile Network Sim Policy should exist. Changing this forces a new Mobile Network Sim Policies to be created.

  • registrationTimerInSeconds - (Optional) Interval for the user equipment periodic registration update procedure. Defaults to 3240.

  • ratFrequencySelectionPriorityIndex - (Optional) RAT/Frequency Selection Priority Index, defined in 3GPP TS 36.413.

  • userEquipmentAggregateMaximumBitRate - (Required) A userEquipmentAggregateMaximumBitRate block as defined below.

  • slice - (Required) An array of slice block as defined below. The allowed slices and the settings to use for them. The list must not contain duplicate items and must contain at least one item.

  • tags - (Optional) A mapping of tags which should be assigned to the Mobile Network Sim Policies.


A slice block supports the following:

  • dataNetwork - (Required) An array of dataNetwork block as defined below.

  • defaultDataNetworkId - (Required) The ID of default data network to use if the user equipment does not explicitly specify it. Configuration for this object must exist in the dataNetwork block.

  • sliceId - (Required) The ID of the slice that these settings apply to.


A dataNetwork block supports the following:

  • allowedServicesIds - (Required) An array of IDs of services that can be used as part of this SIM policy. The array must not contain duplicate items and must contain at least one item.

  • dataNetworkId - (Required) The ID of Mobile Network Data Network which these settings apply to.

  • sessionAggregateMaximumBitRate - (Required) A sessionAggregateMaximumBitRate block as defined below.

  • allocationAndRetentionPriorityLevel - (Optional) Default QoS Flow allocation and retention priority (ARP) level. Flows with higher priority preempt flows with lower priority, if the settings of preemptionCapability and preemptionVulnerability allow it. 1 is the highest level of priority. If this field is not specified then qosIndicator is used to derive the ARP value. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters.

  • additionalAllowedSessionTypes - (Optional) Allowed session types in addition to the default session type. Must not duplicate the default session type. Possible values are iPv4 and iPv6.

  • defaultSessionType - (Optional) The default PDU session type, which is used if the user equipment does not request a specific session type. Possible values are iPv4 and iPv6. Defaults to iPv4.

  • qosIndicator - (Optional) The QoS Indicator (5QI for 5G network /QCI for 4G net work) value identifies a set of QoS characteristics, it controls QoS forwarding treatment for QoS flows or EPS bearers. Recommended values: 5-9; 69-70; 79-80. Must be between 1 and 127. Defaults to 9.

  • maxBufferedPackets - (Optional) The maximum number of downlink packets to buffer at the user plane for High Latency Communication - Extended Buffering. Defaults to 10, Must be at least 0, See 3GPP TS29.272 v15.10.0 section 7.3.188 for a full description. This maximum is not guaranteed because there is a internal limit on buffered packets across all PDU sessions.

  • preemptionCapability - (Optional) The Preemption Capability of a QoS Flow, it controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values are notPreempt and mayPreempt, Defaults to notPreempt.

  • preemptionVulnerability - (Optional) The Preemption Vulnerability of a QoS Flow, it controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values are notPreemptable and preemptable. Defaults to preemptable.


A sessionAggregateMaximumBitRate block supports the following:

  • downlink - (Required) Downlink bit rate. Must be a number followed by kbps, mbps, gbps or tbps.

  • uplink - (Required) Uplink bit rate. Must be a number followed by kbps, mbps, gbps or tbps.


A userEquipmentAggregateMaximumBitRate block supports the following:

  • downlink - (Required) Downlink bit rate. Must be a number followed by kbps, mbps, gbps or tbps.

  • uplink - (Required) Uplink bit rate. Must be a number followed by kbps, mbps, gbps or tbps.

Attributes Reference

In addition to the Arguments listed above - the following Attributes are exported:

  • id - The ID of the Mobile Network Sim Policies.

Timeouts

The timeouts block allows you to specify timeouts for certain actions:

  • create - (Defaults to 180 minutes) Used when creating the Mobile Network Sim Policies.
  • read - (Defaults to 5 minutes) Used when retrieving the Mobile Network Sim Policies.
  • update - (Defaults to 60 minutes) Used when updating the Mobile Network Sim Policies.
  • delete - (Defaults to 180 minutes) Used when deleting the Mobile Network Sim Policies.

Import

Mobile Network Sim Policies can be imported using the resourceId, e.g.

terraform import azurerm_mobile_network_sim_policy.example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.MobileNetwork/mobileNetworks/mobileNetwork1/simPolicies/simPolicy1