Bicep Module Documentation
| Property | Value | Description |
|---|---|---|
| general (required) | general | |
| skuName | 'Basic' 'Premium' 'Standard' |
Name of the Sku. (default: Standard) |
| skuCapacity | int | Messaging units for your service bus premium namespace. Valid capacities are {1, 2, 4, 8, 16} multiples of your properties.premiumMessagingPartitions setting. For example, If properties.premiumMessagingPartitions is 1 then possible capacity values are 1, 2, 4, 8, and 16. If properties.premiumMessagingPartitions is 4 then possible capacity values are 4, 8, 16, 32 and 64 |
| identity | identity | |
| disableLocalAuth | bool | This property disables SAS authentication for the Service Bus namespace. (default: false) |
| encryption | encryption | Properties of BYOK Encryption description |
| minimumTlsVersion | '1.0' '1.1' '1.2' |
The minimum TLS version for the cluster to support (default: 1.2) |
| premiumMessagingPartitions | '1' '2' '4' |
The number of partitions of a Service Bus namespace. This property is only applicable to Premium SKU namespaces. The default value is 1 and possible values are 1, 2 and 4 |
| publicNetworkAccess | 'Disabled' 'Enabled' 'SecuredByPerimeter' |
This determines if traffic is allowed over public network. By default it is enabled. |
| zoneRedundancy | bool | Enabling this property creates a Premium Service Bus Namespace in regions supported availability zones. |
| authorizationRules | serviceBusAuthorizationRule[] | Authorization Rules (Shared Access Policies) in the resource |
| queues | serviceBusQueue[] | Queues in the resource |
| topics | serviceBusTopic[] | Topics in the resource |
| privateLink | privateLink | Settings for the private endpoint and private link for this resource |
| Property | Value | Description |
|---|---|---|
| userAssignedIdentity (required) | string |
| Property | Value | Description |
|---|---|---|
| keySource (required) | 'Microsoft.KeyVault' | Enumerates the possible value of keySource for Encryption |
| keyVaultProperties (required) | serviceBusKeyVaultProperties[] | Properties of KeyVault |
| requireInfrastructureEncryption | bool | Enable Infrastructure Encryption (Double Encryption) |
| Property | Value | Description |
|---|---|---|
| identity | identity | |
| keyName (required) | string | Name of the Key from KeyVault |
| keyVaultUri (required) | string | Uri of KeyVault |
| keyVersion (required) | string | Version of KeyVault |
| Property | Value | Description |
|---|---|---|
| name (required) | string | The resource name |
| rights (required) | Array containing any of: 'Listen' 'Manage' 'Send' |
The rights associated with the rule. |
| Property | Value | Description |
|---|---|---|
| naming (required) | naming | The resource naming |
| autoDeleteOnIdle | string | ISO 8061 timeSpan idle interval after which the queue is automatically deleted. The minimum duration is 5 minutes. |
| deadLetteringOnMessageExpiration | bool | A value that indicates whether this queue has dead letter support when a message expires. |
| defaultMessageTimeToLive | string | ISO 8601 default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself. |
| duplicateDetectionHistoryTimeWindow | string | ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes. |
| enableBatchedOperations | bool | Value that indicates whether server-side batched operations are enabled. |
| enableExpress | bool | A value that indicates whether Express Entities are enabled. An express queue holds a message in memory temporarily before writing it to persistent storage. |
| enablePartitioning | bool | A value that indicates whether the queue is to be partitioned across multiple message brokers. |
| forwardDeadLetteredMessagesTo | string | Queue/Topic name to forward the Dead Letter message |
| forwardTo | string | Queue/Topic name to forward the messages |
| lockDuration | string | ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1 minute. |
| maxDeliveryCount | int | The maximum delivery count. A message is automatically deadlettered after this number of deliveries. default value is 10. |
| maxMessageSizeInKilobytes | int | Maximum size (in KB) of the message payload that can be accepted by the queue. This property is only used in Premium today and default is 1024. |
| maxSizeInMegabytes | int | The maximum size of the queue in megabytes, which is the size of memory allocated for the queue. Default is 1024. |
| requiresDuplicateDetection | bool | A value indicating if this queue requires duplicate detection. |
| requiresSession | bool | A value that indicates whether the queue supports the concept of sessions. |
| authorizationRules | serviceBusAuthorizationRule[] |
| Property | Value | Description |
|---|---|---|
| naming (required) | naming | The resource naming |
| autoDeleteOnIdle | string | ISO 8601 timespan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes. |
| defaultMessageTimeToLive | string | ISO 8601 Default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself. |
| duplicateDetectionHistoryTimeWindow | string | ISO8601 timespan structure that defines the duration of the duplicate detection history. The default value is 10 minutes. |
| enableBatchedOperations | bool | Value that indicates whether server-side batched operations are enabled. |
| enableExpress | bool | Value that indicates whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage. |
| enablePartitioning | bool | Value that indicates whether the topic to be partitioned across multiple message brokers is enabled. |
| maxMessageSizeInKilobytes | int | Maximum size (in KB) of the message payload that can be accepted by the topic. This property is only used in Premium today and default is 1024. |
| maxSizeInMegabytes | int | Maximum size of the topic in megabytes, which is the size of the memory allocated for the topic. Default is 1024. |
| requiresDuplicateDetection | bool | Value indicating if this topic requires duplicate detection. |
| supportOrdering | bool | Value that indicates whether the topic supports ordering. |
| authorizationRules | serviceBusAuthorizationRule[] | |
| subscriptions | serviceBusTopicSubscription[] |
| Property | Value | Description |
|---|---|---|
| naming (required) | naming | The resource naming |
| autoDeleteOnIdle | string | ISO 8061 timeSpan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes. |
| clientAffineProperties | clientAffineProperties | Properties specific to client affine subscriptions. |
| deadLetteringOnFilterEvaluationExceptions | bool | Value that indicates whether a subscription has dead letter support on filter evaluation exceptions. |
| deadLetteringOnMessageExpiration | bool | Value that indicates whether a subscription has dead letter support when a message expires. |
| defaultMessageTimeToLive | string | ISO 8061 Default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself. |
| duplicateDetectionHistoryTimeWindow | string | ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes. |
| enableBatchedOperations | bool | Value that indicates whether server-side batched operations are enabled. |
| forwardDeadLetteredMessagesTo | string | Queue/Topic name to forward the Dead Letter message |
| forwardTo | string | Queue/Topic name to forward the messages |
| isClientAffine | bool | Value that indicates whether the subscription has an affinity to the client id. |
| lockDuration | string | ISO 8061 lock duration timespan for the subscription. The default value is 1 minute. |
| maxDeliveryCount | int | Number of maximum deliveries. |
| requiresSession | bool | Value indicating if a subscription supports the concept of sessions. |
| rules | serviceBusTopicSubscriptionRule[] | Rules in the resource |
| Property | Value | Description |
|---|---|---|
| clientId (required) | string | Indicates the Client ID of the application that created the client-affine subscription. |
| isDurable (required) | bool | For client-affine subscriptions, this value indicates whether the subscription is durable or not. |
| isShared (required) | bool | For client-affine subscriptions, this value indicates whether the subscription is shared or not. |
| Property | Value | Description |
|---|---|---|
| name (required) | string | The resource name |
| action | action | Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression. |
| correlationFilter | correlationFilter | Properties of correlationFilter |
| filterType (required) | 'CorrelationFilter' 'SqlFilter' |
Filter type that is evaluated against a BrokeredMessage. |
| sqlFilter | sqlFilter | Properties of sqlFilter |
| Property | Value | Description |
|---|---|---|
| requiresPreprocessing (required) | bool | Value that indicates whether the rule action requires preprocessing. |
| sqlExpression (required) | string | SQL expression. e.g. MyProperty=ABC |
| Property | Value | Description |
|---|---|---|
| contentType | string | Content type of the message. |
| correlationId | string | Identifier of the correlation. |
| label | string | Application specific label. |
| messageId | string | Identifier of the message. |
| properties | object | dictionary object for custom filters |
| replyTo | string | Address of the queue to reply to. |
| replyToSessionId | string | Session identifier to reply to. |
| requiresPreprocessing | bool | Value that indicates whether the rule action requires preprocessing. |
| sessionId | string | Session identifier. |
| to | string | Address to send to. |
| Property | Value | Description |
|---|---|---|
| requiresPreprocessing | bool | Value that indicates whether the rule action requires preprocessing. |
| sqlExpression (required) | string | SQL expression. e.g. MyProperty=ABC |
| Property | Value | Description |
|---|---|---|
| name | string | Character limit: 1-90. Valid characters: Alphanumerics, periods, underscores, hyphens, and parenthesis. Can't end in period. |
| level (required) | 'CanNotDelete' 'ReadOnly' |
The level of the lock. Possible values are: CanNotDelete and ReadOnly. CanNotDelete means authorized users are able to read and modify the resources, but not delete. ReadOnly means authorized users can only read from a resource, but they can't modify or delete it. Read-Only locks must be commented to be able to deploy again |
| notes | string | Notes about the lock. Maximum of 512 characters. |
| owners | resourceLockOwner[] | The owners of the lock |
| Property | Value | Description |
|---|---|---|
| applicationId (required) | string | The application ID of the lock owner. |
| Property | Value | Description |
|---|---|---|
| principalId (required) | string | The principal ID |
| roleDefinitionId (required) | string | The role definition ID, data file can be used for this |
| condition | string | Condition on the role assignment |
| conditionVersion | string | Version of the condition. Currently the only accepted value is "2.0" |
| delegatedManagedIdentityResourceId | string | Id of the delegated managed identity resource |
| description | string | Description of role assignment |
| Property | Value | Description |
|---|---|---|
| tags | object | Tags of the resource [hashtable] |
| location (required) | string | Location of the resource |
| naming (required) | naming | Naming module of the resource |
| resourceGroupName (required) | string | Name of the resource group where the resource should be located |
| sharedNaming (required) | naming | Reference to the default naming |
| roleAssignments | roleAssignment[] | Role assignments on the resource |
| resourceLocks | resourceLock[] | Resource Locks on the resource |
| Property | Value | Description |
|---|---|---|
| forceFunctionAsFullName | bool | Use the function value as the full name of the resource |
| abbreviation | string | Override the abbreviation of this resource with this parameter |
| environment | string | The resource environment (for example: dev, tst, acc, prd) |
| location | string | The resource location (for example: weu, we, westeurope) |
| customer | string | The name of the customer |
| delimiter | string | The delimiter between resources (default: -) |
| nameFormat | Array containing any of: 'abbreviation' 'customer' 'environment' 'function' 'location' 'param1' 'param2' 'param3' 'useCaseName' |
The order of the array defines the order of elements in the naming scheme |
| param1 | string | Extra parameter self defined |
| param2 | string | Extra parameter self defined |
| param3 | string | Extra parameter self defined |
| function (required) | string | Function of the resource [can be app, db, security,...] |
| useCaseName | string | Name of the use case [can be hub, spoke,...] |
| suffix | string | Suffix for the resource, if empty non will be appended, otherwise will be added to the end [can be index, ...] |
| forceDefaultNaming | bool | Force the CAF naming instead of default company naming |
| Property | Value | Description |
|---|---|---|
| pepNaming | naming | Name of the private endpoint |
| nicNaming | naming | Name of the network interface of the private endpoint |
| privateLinkNaming | naming | Name of the private link connection |
| subnets (required) | subnets[] | Id of the subnets and optionally the name of the resourcegroup in which the private endpoint should be created |
| dnsZoneIds (required) | string[] | List of DNS zone ids that need to be linked |
| Property | Value | Description |
|---|---|---|
| resourceGroupName | string | Resourcegroup (default: resourcegroup defined here => resourceGroup of pep resource => resourceGroup of subnet) |
| id (required) | string | Id of the subnet |
| location | string | Location if Vnet is in different location |