You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> * Inbound NSG rules do not apply when a v2 tier instance is integrated in a virtual network for private outbound access. To enforce inbound NSG rules, use virtual network injection instead of integration.
55
+
> * This differs from networking in the classic Premium tier, where inbound NSG rules are enforced in both external and internal virtual network injection modes. [Learn more](virtual-network-injection-resources.md)
56
+
51
57
### Subnet delegation
52
58
53
59
The subnet needs to be delegated to the **Microsoft.Web/serverFarms** service.
Copy file name to clipboardExpand all lines: articles/api-management/virtual-network-workspaces-resources.md
+13-11Lines changed: 13 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ author: dlepow
5
5
6
6
ms.service: azure-api-management
7
7
ms.topic: concept-article
8
-
ms.date: 06/18/2025
8
+
ms.date: 07/08/2025
9
9
ms.author: danlep
10
10
---
11
11
@@ -45,7 +45,6 @@ For information about configuring subnet delegation, see [Add or remove a subnet
45
45
46
46
#### [Virtual network integration](#tab/external)
47
47
48
-
49
48
For virtual network integration, the subnet needs to be delegated to the **Microsoft.Web/serverFarms** service.
50
49
51
50
:::image type="content" source="media/virtual-network-injection-workspaces-resources/delegate-external.png" alt-text="Screenshot showing subnet delegation to Microsoft.Web/serverFarms in the portal.":::
@@ -65,21 +64,20 @@ For virtual network injection, the subnet needs to be delegated to the **Microso
65
64
66
65
---
67
66
67
+
## Network security group
68
68
69
-
##Network security group (NSG) rules
69
+
#### [Virtual network integration](#tab/external)
70
70
71
-
A network security group (NSG) must be attached to the subnet to explicitly allow certain inbound or outbound connectivity. Configure the following rules in the NSG. Set the priority of these rules higher than that of the default rules.
A network security group (NSG) must be associated with the subnet. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
81
77
82
-
#### [Virtual network injection](#tab/internal)
78
+
* Configure the following rules in the NSG. Set the priority of these rules higher than that of the default rules.
79
+
* Configure other outbound rules you need for the gateway to reach your API backends.
80
+
* Configure other NSG rules to meet your organization’s network access requirements. For example, NSG rules can also be used to block outbound traffic to the internet and allow access only to resources in your virtual network.
83
81
84
82
| Direction | Source | Source port ranges | Destination | Destination port ranges | Protocol | Action | Purpose |
@@ -89,6 +87,10 @@ Configure other NSG rules to meet your organization's network access requirement
89
87
90
88
---
91
89
90
+
> [!IMPORTANT]
91
+
> * Inbound NSG rules do not apply when you integrate a workspace gateway in a virtual network for private outbound access. To enforce inbound NSG rules, use virtual network injection instead of integration.
92
+
> * This differs from networking in the classic Premium tier, where inbound NSG rules are enforced in both external and internal virtual network injection modes. [Learn more](virtual-network-injection-resources.md)
93
+
92
94
## DNS settings for virtual network injection
93
95
94
96
For virtual network injection, you have to manage your own DNS to enable inbound access to your workspace gateway.
Copy file name to clipboardExpand all lines: articles/app-service/configure-authentication-provider-aad.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -265,7 +265,7 @@ The created app registration authenticates incoming requests for your Microsoft
265
265
266
266
Your application code is often the best place to handle custom authorization logic. However, for common scenarios, the Microsoft identity platform provides built-in checks that you can use to limit access.
267
267
268
-
This section shows how to enable built-in checks by using the [App Service authentication V2 API](./configure-authentication-api-version.md). Currently, the only way to configure these built-in checks is by using [Azure Resource Manager templates](/azure/templates/microsoft.web/sites/config-authsettingsv2) or the [REST API](/rest/api/appservice/web-apps/update-auth-settings-v2).
268
+
This section shows how to enable built-in checks by using the [App Service authentication V2 API](./configure-authentication-api-version.md). Currently, the only way to configure these built-in checks is by using [Azure Resource Manager templates](/azure/templates/microsoft.web/sites/config-authsettingsv2) or the [REST API](/rest/api/appservice/web-apps/update-auth-settings-v-2).
269
269
270
270
Within the API object, the Microsoft Entra identity provider configuration has a `validation` section that can include a `defaultAuthorizationPolicy` object, as shown in the following structure:
Copy file name to clipboardExpand all lines: articles/connectors/connectors-create-api-servicebus.md
+35-33Lines changed: 35 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -33,8 +33,7 @@ The Service Bus connector has different versions, based on [logic app workflow t
33
33
| Logic app | Environment | Connector version |
34
34
|-----------|-------------|-------------------|
35
35
|**Consumption**| Multitenant Azure Logic Apps | Managed connector, which appears in the connector gallery under **Runtime** > **Shared**. <br><br>**Note**: Service Bus managed connector triggers follow the [*long polling trigger* pattern](#service-bus-managed-triggers), which means that the trigger periodically checks for messages in the queue or topic subscription. For more information, review the following documentation: <br><br>- [Service Bus managed connector reference](/connectors/servicebus/) <br>- [Managed connectors in Azure Logic Apps](managed.md)|
36
-
| **Standard** | Single-tenant Azure Logic Apps and App Service Environment v3 (Windows plans only) | Managed connector (Azure-hosted), which appears in the connector gallery under **Runtime** > **Shared**, and built-in connector, which appears in the connector gallery under **Runtime** > **In App** and is [service provider based](../logic-apps/custom-connector-overview.md#service-provider-interface-implementation). <br><br>The Service Bus managed connector triggers follow the [*long polling trigger* pattern](#service-bus-managed-triggers), which means that the trigger periodically checks for messages in the queue or topic subscription. <br><br>The Service Bus built-in connector non-session triggers follow a *continuous polling trigger pattern* that is fully managed by the connector. This pattern has the trigger constantly check for messages in the queue or topic subscription. Session triggers follow the *long-polling trigger pattern*, but its configuration is governed by the Azure Functions setting named [**clientRetryOptions:tryTimeout**](../azure-functions/functions-bindings-service-bus.md#hostjson-settings). The built-in version usually provides better performance, capabilities, pricing, and so on.
37
-
<br><br>For more information, review the following documentation: <br><br>- [Service Bus managed connector reference](/connectors/servicebus/) <br>- [Service Bus built-in connector operations](/azure/logic-apps/connectors/built-in/reference/servicebus) <br>- [Built-in connectors in Azure Logic Apps](built-in.md) |
36
+
| **Standard** | Single-tenant Azure Logic Apps and App Service Environment v3 (Windows plans only) | Managed connector (Azure-hosted), which appears in the connector gallery under **Runtime** > **Shared**, and built-in connector, which appears in the connector gallery under **Runtime** > **In App** and is [service provider based](../logic-apps/custom-connector-overview.md#service-provider-interface-implementation). <br><br>The Service Bus managed connector triggers follow the [*long polling trigger* pattern](#service-bus-managed-triggers), which means that the trigger periodically checks for messages in the queue or topic subscription. <br><br>The Service Bus built-in connector non-session triggers follow a *continuous polling trigger pattern* that is fully managed by the connector. This pattern has the trigger constantly check for messages in the queue or topic subscription. Session triggers follow the *long-polling trigger pattern*, but its configuration is governed by the Azure Functions setting named [**clientRetryOptions:tryTimeout**](../azure-functions/functions-bindings-service-bus.md#hostjson-settings). The built-in version usually provides better performance, capabilities, pricing, and so on. <br><br>For more information, review the following documentation: <br><br>- [Service Bus managed connector reference](/connectors/servicebus/) <br>- [Service Bus built-in connector operations](/azure/logic-apps/connectors/built-in/reference/servicebus) <br>- [Built-in connectors in Azure Logic Apps](built-in.md) |
38
37
39
38
## Prerequisites
40
39
@@ -135,64 +134,67 @@ To increase the timeout for sending a message, [add the **ServiceProviders.Servi
135
134
>
136
135
> If you must change the concurrency on a Service Bus auto-complete trigger, don't make this change before
137
136
> you initially save your workflow. Create and save your workflow first before you edit the trigger to change the concurrency.
138
-
```
139
137
140
138
### Service Bus built-in connector triggers
141
139
142
-
For he Service Bus built-in connector, non-session triggers follow a *continuous polling trigger pattern* that is fully managed by the connector. This pattern has the trigger constantly check for messages in the queue or topic subscription. Session triggers follow the *long-polling trigger pattern*, with its configuration is governed by the Azure Functions setting named [**clientRetryOptions:tryTimeout**](../azure-functions/functions-bindings-service-bus.md#hostjson-settings). Currently, the configuration settings for the Service Bus built-in trigger are shared between the [Azure Functions host extension](../azure-functions/functions-bindings-service-bus.md#hostjson-settings), which is defined in your logic app's [**host.json** file](../logic-apps/edit-app-settings-host-settings.md), and the trigger settings defined in your logic app's workflow, which you can set up either through the designer or code view. This section covers both settings locations.
140
+
For the Service Bus built-in connector, non-session triggers follow a *continuous polling trigger pattern* that is fully managed by the connector. This pattern has the trigger constantly check for messages in the queue or topic subscription. Session triggers follow the *long-polling trigger pattern*, with its configuration is governed by the Azure Functions setting named [**clientRetryOptions:tryTimeout**](../azure-functions/functions-bindings-service-bus.md#hostjson-settings). Currently, the configuration settings for the Service Bus built-in trigger are shared between the [Azure Functions host extension](../azure-functions/functions-bindings-service-bus.md#hostjson-settings), which is defined in your logic app's [**host.json** file](../logic-apps/edit-app-settings-host-settings.md), and the trigger settings defined in your logic app's workflow, which you can set up either through the designer or code view. This section covers both settings locations.
141
+
142
+
* Some built-in triggers, such as the **When messages are available in a queue** trigger, can return one or more messages. When these triggers fire, they return between one and the number of messages.
143
143
144
-
* In Standard workflows, some triggers, such as the **When messages are available in a queue** trigger, can return one or more messages. When these triggers fire, they return between one and the number of messages. For this type of trigger and where the **Maximum message count** parameter isn't supported, you can still control the number of messages received by using the **maxMessageBatchSize** property in the **host.json** file. To find this file, see [Edit host and app settings for Standard logic apps](../logic-apps/edit-app-settings-host-settings.md).
144
+
The built-in trigger named **When messages are available in a queue (V1)**doesn't support the parameter named **Maximum message batch size**. Make sure that you use the V2 version instead. To use a trigger where the parameter isn't supported, you can still control the number of messages received by adding the `maxMessageBatchSize` parameter to the trigger definition in the host.json file. To find this file, see [Edit host and app settings for Standard logic apps](../logic-apps/edit-app-settings-host-settings.md).
145
145
146
-
147
146
```json
148
147
"extensions": {
149
-
"serviceBus": {
148
+
"serviceBus": {
150
149
"maxMessageBatchSize": 25
151
-
}
150
+
}
152
151
}
153
152
```
154
153
155
-
*You can also enable concurrency on the Service Bus trigger, either through the designer or in code:
154
+
You can also enable concurrency on the Service Bus trigger, either through the designer or in code, for example:
156
155
157
156
```json
158
157
"runtimeConfiguration": {
159
-
"concurrency": {
160
-
"runs": 100
158
+
"concurrency": {
159
+
"runs": 50
161
160
}
162
161
}
163
162
```
164
163
165
-
When you set up concurrency using a batch, keep the number of concurrent runs larger than the overall batch size. That way, read messages don't go into a waiting state and are always picked up when they're read. In some cases, the trigger can have up to twice the batch size.
164
+
* If you set up concurrency using a batch, keep the number of concurrent runs larger than the overall batch size. That way, read messages don't go into a waiting state and are always picked up when they're read. In some cases, the trigger can have up to twice the batch size.
166
165
167
-
* If you enable concurrency, the **SplitOn** limit is reduced to 100 items. This behavior is true for all triggers, not just the Service Bus trigger. Make sure the specified batch size is less than this limit on any trigger where you enable concurrency.
166
+
* If you enable concurrency on the trigger named **When messages are available in a queue (V1)**, and 100+ messages are sent to the queue, all messages are routed to the [dead-letter queue](../service-bus-messaging/service-bus-dead-letter-queues.md).
168
167
169
-
*[Some scenarios exist where the trigger can exceed the concurrency settings](../logic-apps/logic-apps-workflow-actions-triggers.md#change-waiting-runs-limit). Rather than fail these runs, Azure Logic Apps queues them in a waiting state until they can be started. The [**maximumWaitingRuns** setting](../logic-apps/edit-app-settings-host-settings.md#trigger-concurrency) controls the number of runs allowed in the waiting state:
168
+
* If you enable concurrency, the **SplitOn** limit is reduced to 100 items. This behavior is true for all triggers, not just the Service Bus trigger. Make sure the specified batch size is less than this limit on any trigger where you enable concurrency.
170
169
171
-
```json
172
-
"runtimeConfiguration": {
173
-
"concurrency": {
174
-
"runs": 100,
175
-
"maximumWaitingRuns": 50
176
-
}
177
-
}
178
-
```
170
+
* If you enable concurrency, by default, a 30-second delay exists between batch reads. This delay slows down the trigger to achieve the following goals:
171
+
172
+
* Reduce the number of storage calls sent to check the number of runs on which to apply concurrency.
179
173
180
-
With the Service Bus trigger, make sure that you carefully test these changes so that runs don't wait longer than the message lock timeout. For more information about the default values, see [Concurrency and de-batching limits here](../logic-apps/logic-apps-limits-and-config.md#concurrency-and-debatching).
174
+
* Mimic the behavior of the Service Bus managed connector trigger, which has a 30-second long poll when no messages are found.
181
175
182
-
* If you enable concurrency, a 30-second delay exists between batch reads, by default. This delay slows down the trigger to achieve the following goals:
176
+
You can change this delay, but make sure that you carefully test any changes to the default value:
183
177
184
-
- Reduce the number of storage calls sent to check the number of runs on which to apply concurrency.
- Mimic the behavior of the Service Bus managed connector trigger, which has a 30-second long poll when no messages are found.
186
+
* [Some scenarios exist where the trigger can exceed the concurrency settings](../logic-apps/logic-apps-workflow-actions-triggers.md#change-waiting-runs-limit). Rather than fail these runs, Azure Logic Apps queues them in a waiting state until they can be started. The [`maximumWaitingRuns` setting](../logic-apps/edit-app-settings-host-settings.md#trigger-concurrency) controls the number of runs allowed in the waiting state:
187
187
188
-
You can change this delay, but make sure that you carefully test any changes to the default value:
With the Service Bus trigger, make sure that you carefully test these changes so that runs don't wait longer than the message lock timeout. For more information about the default values, see [Concurrency and de-batching limits here](../logic-apps/logic-apps-limits-and-config.md#concurrency-and-debatching).
Copy file name to clipboardExpand all lines: articles/connectors/enable-stateful-affinity-built-in-connectors.md
+9-2Lines changed: 9 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ ms.suite: integration
6
6
ms.reviewer: estfan, edwardhe, azla
7
7
ms.topic: how-to
8
8
ms.custom: devx-track-azurepowershell
9
-
ms.date: 03/18/2025
9
+
ms.date: 07/12/2025
10
10
---
11
11
12
12
# Enable stateful mode for stateless built-in connectors in Azure Logic Apps
@@ -197,6 +197,13 @@ Set-AzResource :
197
197
198
198
Resource scale-in events might cause the loss of context for built-in connectors with stateful mode enabled. To prevent this potential loss before such events can happen, fix the number of instances available for your logic app resource. This way, no scale-in events can happen to cause this potential context loss.
199
199
200
+
> [!NOTE]
201
+
>
202
+
> For logic apps that doesn't use the App Service Environment v3 hosting option,
203
+
> Azure Logic Apps waits up to 5 minutes before taking down a virtual machine during
204
+
> scale-in events. Built-in connectors might experience issues. For example,
205
+
> Azure Service Bus can't complete messages during platform upgrades.
206
+
200
207
1. On your logic app resource menu, under **Settings**, select **Scale out (App Service plan)**.
201
208
202
209
1. On the **Scale out (App Service plan)** page, in the **App Scale out** section, follow these steps:
@@ -209,7 +216,7 @@ Resource scale-in events might cause the loss of context for built-in connectors
209
216
210
217
1. When you're done, on the **Scale out** toolbar, select **Save**.
211
218
212
-
## Next steps
219
+
## Related content
213
220
214
221
-[Connect to Azure Service Bus](/azure/connectors/connectors-create-api-servicebus)
215
222
-[Connect to SAP](/azure/logic-apps/connectors/sap)
0 commit comments