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
Copy file name to clipboardExpand all lines: articles/logic-apps/authenticate-with-managed-identity.md
+33-35Lines changed: 33 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
---
2
2
title: Authenticate Connections with Managed Identities
3
-
description: Secure workflow connections to protected Azure resources without managing credentials, secrets, or tokens by using a managed identity in Azure Logic Apps.
4
-
services: logic-apps
3
+
description: Secure workflow connections to protected Azure resources by using a managed identity in Azure Logic Apps. Avoid managing credentials, secrets, or tokens.
To authenticate connections from logic app workflows to Microsoft Entra-protected Azure resources, set up a *managed identity*. This identity accesses protected resources on your logic app's behalf.
22
-
23
-
As the recommended security option, managed identity authentication removes the need to store and manage credentials, secrets, or access tokens. Azure manages this identity to help keep your authentication details secure.
21
+
Set up a *managed identity* when you want to authenticate connections from logic app workflows to Microsoft Entra-protected Azure resources. This identity accesses protected resources on your logic app's behalf and removes the need to store and manage credentials, secrets, or access tokens. Due to this behavior, a managed identity is recommended for authentication. Azure manages this identity to help keep your authentication details secure.
24
22
25
23
In Azure Logic Apps, many connectors support both managed identity types:
26
24
@@ -72,7 +70,7 @@ Before you set up and use a managed identity with a logic app, review the follow
72
70
73
71
- Your logic app resource has only one unique system-assigned identity.
74
72
75
-
By default, the system-assigned identity is already enabled on Standard logic apps.
73
+
By default, Standard logic apps automatically enable the system-assigned identity.
76
74
77
75
- Your logic app resource can have the system-assigned identity and one or more user-assigned identities enabled at the same time.
78
76
@@ -98,7 +96,7 @@ For more information, see:
98
96
99
97
For built-in and managed connector operations in Azure Logic Apps to support managed identity authentication, they must support OAuth with Microsoft Entra.
100
98
101
-
The following tables provide a sample connector selection that supports managed identity authentication, based on the logic app type.
99
+
The following tables show sample connectors that support managed identity authentication, based on the logic app type.
102
100
103
101
### [Consumption](#tab/consumption)
104
102
@@ -130,13 +128,13 @@ Based on your logic app type, follow the corresponding steps for the Azure porta
130
128
131
129
### [Consumption](#tab/consumption)
132
130
133
-
On a Consumption logic app resource, you must manually enable the system-assigned identity.
131
+
On a Consumption logic app resource, manually enable the system-assigned identity.
134
132
135
133
1. In the [Azure portal](https://portal.azure.com), open your Consumption logic app resource.
136
134
137
135
1. On the logic app sidebar, under **Settings**, select **Identity**.
138
136
139
-
1. On the **Identity** page, under **System assigned**, select **On** >**Save**. To confirm, select **Yes**.
137
+
1. On the **Identity** page, under **System assigned**, select **On**, and then select**Save**. To confirm, select **Yes**.
140
138
141
139
:::image type="content" source="media/authenticate-with-managed-identity/enable-system-assigned-identity-consumption.png" alt-text="Screenshot that shows the Azure portal, Consumption logic app, Identity page, and System assigned tab with selected options, On and Save." lightbox="media/authenticate-with-managed-identity/enable-system-assigned-identity-consumption.png":::
142
140
@@ -158,7 +156,7 @@ On a Standard logic app resource, the system-assigned identity is automatically
158
156
159
157
1. On the logic app sidebar, under **Settings**, select **Identity**.
160
158
161
-
1. On the **Identity** page, under **System assigned**, select **On** >**Save**. To confirm, select **Yes**.
159
+
1. On the **Identity** page, under **System assigned**, select **On**, and then select**Save**. To confirm, select **Yes**.
162
160
163
161
:::image type="content" source="media/authenticate-with-managed-identity/enable-system-assigned-identity-standard.png" alt-text="Screenshot that shows the Azure portal, Standard logic app, Identity page, and System assigned tab with selected options for On and Save." lightbox="media/authenticate-with-managed-identity/enable-system-assigned-identity-standard.png":::
164
162
@@ -181,7 +179,7 @@ On a Standard logic app resource, the system-assigned identity is automatically
181
179
182
180
To automate creating and deploying logic app resources, use an [ARM template](logic-apps-azure-resource-manager-templates-overview.md).
183
181
184
-
In your template, at the root level, your logic app resouce definition requires an `identity` object with the `type` property set to `SystemAssigned`, for example:
182
+
In your template, at the root level, your logic app resource definition requires an `identity` object with the `type` property set to `SystemAssigned`, for example:
185
183
186
184
### [Consumption](#tab/consumption)
187
185
@@ -230,7 +228,7 @@ When Azure creates your logic app resource definition, the `identity` object get
230
228
231
229
| Property (JSON) | Value | Description |
232
230
|-----------------|-------|-------------|
233
-
|`principalId`| <*principal-ID*> | The Globally Unique Identifier (GUID) that Microsoft Entra uses to admiminister the service principal object for your managed identity in the Microsoft Entra tenant. This GUID sometimes appears as an "object ID" or `objectID`. |
231
+
|`principalId`| <*principal-ID*> | The Globally Unique Identifier (GUID) that Microsoft Entra uses to manage the service principal object for your managed identity in the Microsoft Entra tenant. This GUID sometimes appears as an "object ID" or `objectID`. |
234
232
|`tenantId`| <*Microsoft-Entra-tenant-ID*> | The Globally Unique Identifier (GUID) that represents the Microsoft Entra tenant where the logic app is now a member. Inside the Microsoft Entra tenant, the service principal has the same name as the logic app instance. |
235
233
236
234
<aname="azure-portal-user-identity"></a>
@@ -522,7 +520,7 @@ When the template creates your logic app resource definition, the `identity` obj
522
520
523
521
| Property (JSON) | Value | Description |
524
522
|-----------------|-------|-------------|
525
-
|`principalId`| <*principal-ID*> | The Globally Unique Identifier (GUID) that Microsoft Entra uses to admiminister the service principal object for your managed identity in the Microsoft Entra tenant. This GUID sometimes appears as an "object ID" or `objectID`. In the Microsoft Entra tenant, the service principal has the same name as the logic app instance. |
523
+
|`principalId`| <*principal-ID*> | The Globally Unique Identifier (GUID) that Microsoft Entra uses to administrate the service principal object for your managed identity in the Microsoft Entra tenant. This GUID sometimes appears as an "object ID" or `objectID`. In the Microsoft Entra tenant, the service principal has the same name as the logic app instance. |
526
524
|`clientId`| <*client-ID*> | The Globally Unique Identifier (GUID) that represents the logic app's identity and specifies the identity to use during runtime calls. |
527
525
528
526
For more information about Azure Resource Manager templates and managed identities for Azure Functions, see [ARM template - Azure Functions](../azure-functions/functions-create-first-function-resource-manager.md#review-the-template).
@@ -555,7 +553,7 @@ Before you can use the managed identity for authentication, you need to grant th
555
553
556
554
For example, you can create an access policy on the key vault resource to assign the necessary permissions for your managed identity.
557
555
558
-
This section show how to create an access policy by using the [Azure portal](#azure-portal-access-policy).
556
+
This section shows how to create an access policy by using the [Azure portal](#azure-portal-access-policy).
559
557
560
558
For Resource Manager templates, Azure PowerShell, and Azure CLI, see:
561
559
@@ -623,7 +621,7 @@ For Azure resources that require you to assign a role for your managed identity,
623
621
-[Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal)
624
622
-[Assign a managed identity access to an Azure resource or another resource](/entra/identity/managed-identities-azure-resources/how-to-assign-access-azure-resource)
625
623
626
-
1.[Authenticate your trigger or action with the managed identity](#authenticate-access-with-identity).
624
+
1.[Authenticate your trigger or action by using the managed identity](#authenticate-access-with-identity).
627
625
628
626
<aname="azure-portal-access-policy"></a>
629
627
@@ -659,11 +657,11 @@ For Azure resources where you want to create an access policy for your managed i
659
657
660
658
1. Skip the optional **Application** step, select **Next**, and finish creating the access policy.
661
659
662
-
1.[Authenticate your trigger or action with the managed identity](#authenticate-access-with-identity).
660
+
1.[Authenticate your trigger or action by using the managed identity](#authenticate-access-with-identity).
663
661
664
662
<aname="authenticate-access-with-identity"></a>
665
663
666
-
## Authenticate access with the managed identity
664
+
## Authenticate access by using the managed identity
667
665
668
666
This section shows how to use a managed identity to authenticate access for a workflow [trigger or action that supports managed identity authentication](#triggers-actions-managed-identity). The example continues from where you set up access for a managed identity by using RBAC and an Azure storage account. Though your target Azure resource might differ, the general steps are mostly similar.
669
667
@@ -678,13 +676,13 @@ The following steps show how to use the managed identity by using the Azure port
678
676
679
677
1. In the [Azure portal](https://portal.azure.com), open your Consumption logic app resource.
680
678
681
-
1. Add the [trigger or action that supports managed identities](#triggers-actions-managed-identity), if you haven't taken this step already.
679
+
1. Add the [trigger or action that supports managed identities](#triggers-actions-managed-identity), if you haven't already.
682
680
683
681
1. On the trigger or action, follow these steps:
684
682
685
683
-**Built-in operations**
686
684
687
-
These steps continue by using the **HTTP** action as an example.
685
+
These steps use the **HTTP** action as an example.
688
686
689
687
1. From the **Advanced parameters** list, select the **Authentication** parameter.
690
688
@@ -727,15 +725,15 @@ The following steps show how to use the managed identity by using the Azure port
727
725
728
726
-**Single-authentication**: These connectors support only one authentication type, which is the managed identity in this case.
729
727
730
-
The following steps continue by using an **Azure Resource** action as an example:
728
+
The following steps use an **Azure Resource** action as an example:
731
729
732
730
1. From the **Managed Identity** list, select the currently enabled managed identity.
733
731
734
732
1. Select **Create new**.
735
733
736
734
-**Multi-authentication**: These connectors support multiple authentication types, but you can select and use only one type at a time.
737
735
738
-
The following steps continue by using an **Azure Blob Storage** action as an example:
736
+
The following steps use an **Azure Blob Storage** action as an example:
739
737
740
738
1. From the **Authentication Type** list, select **Logic Apps Managed Identity**.
741
739
@@ -749,13 +747,13 @@ The following steps show how to use the managed identity by using the Azure port
749
747
750
748
1. In the [Azure portal](https://portal.azure.com), open your Standard logic app resource.
751
749
752
-
1. Add the [trigger or action that supports managed identities](#triggers-actions-managed-identity), if you haven't taken this step already.
750
+
1. Add the [trigger or action that supports managed identities](#triggers-actions-managed-identity), if you haven't already.
753
751
754
752
1. On the trigger or action, follow these steps:
755
753
756
754
-**Built-in operations**
757
755
758
-
These steps continue by using the **HTTP** action as an example.
756
+
These steps use the **HTTP** action as an example.
759
757
760
758
1. From the **Advanced parameters** list, select the **Authentication** parameter.
761
759
@@ -810,7 +808,7 @@ The following steps show how to use the managed identity by using the Azure port
810
808
811
809
-**Multi-authentication**: These connectors support multiple authentication types, but you can select and use only one type at a time.
812
810
813
-
The following steps continue by using an **Azure Blob Storage** action as an example.
811
+
The following steps use an **Azure Blob Storage** action as an example.
814
812
815
813
1. From the **Authentication Type** list, select **Logic Apps Managed Identity**.
816
814
@@ -861,7 +859,7 @@ To run the [Snapshot Blob operation](/rest/api/storageservices/snapshot-blob), t
861
859
862
860
The following example shows a sample **HTTP** action with all the previously described property values to use for the Snapshot Blob operation:
863
861
864
-
:::image type="content" source="media/authenticate-with-managed-identity/http-action-example-consumption.png" alt-text="Screenshot shows Azure portal, Consumption workflow, and HTTP action setup to access resources." lightbox="media/authenticate-with-managed-identity/http-action-example-consumption.png":::
862
+
:::image type="content" source="media/authenticate-with-managed-identity/http-action-example-consumption.png" alt-text="Screenshot shows Azure portal, Consumption workflow, and HTTP action set up to access resources." lightbox="media/authenticate-with-managed-identity/http-action-example-consumption.png":::
865
863
866
864
1. In the **HTTP** action, from the **Advanced parameters** list, select **Authentication**.
867
865
@@ -914,7 +912,7 @@ To run the [Snapshot Blob operation](/rest/api/storageservices/snapshot-blob), t
914
912
915
913
The following example shows a sample **HTTP** action with all the previously described property values to use for the Snapshot Blob operation:
916
914
917
-
:::image type="content" source="media/authenticate-with-managed-identity/http-action-example-standard.png" alt-text="Screenshot shows Azure portal, Standard workflow, and HTTP action setup to access resources." lightbox="media/authenticate-with-managed-identity/http-action-example-standard.png":::
915
+
:::image type="content" source="media/authenticate-with-managed-identity/http-action-example-standard.png" alt-text="Screenshot shows Azure portal, Standard workflow, and HTTP action set up to access resources." lightbox="media/authenticate-with-managed-identity/http-action-example-standard.png":::
918
916
919
917
1. In the **HTTP** action, from the **Advanced parameters** list, select **Authentication**.
920
918
@@ -965,7 +963,7 @@ To run the [Snapshot Blob operation](/rest/api/storageservices/snapshot-blob), t
## Example: Authenticate managed connector trigger or action with a managed identity
966
+
## Example: Authenticate managed connector trigger or action by using a managed identity
969
967
970
968
The **Azure Resource Manager** managed connector has an action named **Read a resource** that can use the managed identity you enable on your logic app resource. This example shows how to use the system-assigned managed identity with a managed connector.
971
969
@@ -1033,7 +1031,7 @@ The **Azure Resource Manager** managed connector has an action named **Read a re
1033
1031
1034
1032
## Connections with managed identities in logic app resource definitions
1035
1033
1036
-
A managed identity authenticated connection type is a special connection type that works only with a managed identity. At workflow runtime, the connection uses the managed identity enabled on the logic app resource. Azure Logic Apps checks whether any managed connector operations in the workflow use the managed identity and whether all the required permissions exist to use the managed identity for accessing the corresponding target resources. If this check passess successfully, Azure Logic Apps gets the Microsoft Entra token associated with the managed identity, uses that identity to authenticate access to the target Azure resources, and performs the corresponding operations in the workflow.
1034
+
A managed identity authenticated connection type is a special connection type that works only with a managed identity. At workflow runtime, the connection uses the managed identity enabled on the logic app resource. Azure Logic Apps checks whether any managed connector operations in the workflow use the managed identity and whether all the required permissions exist to use the managed identity for accessing the corresponding target resources. If this check passes successfully, Azure Logic Apps gets the Microsoft Entra token associated with the managed identity, uses that identity to authenticate access to the target Azure resources, and performs the corresponding operations in the workflow.
1037
1035
1038
1036
### [Consumption](#tab/consumption)
1039
1037
@@ -1147,13 +1145,13 @@ This example shows the `managedApiConnections` object configuration when the log
1147
1145
1148
1146
## ARM template for API connections and managed identities
1149
1147
1150
-
If you use an ARM template to automate deployment, and your workflow includes an API connection, which is created by a [managed connector](../connectors/managed.md), that uses a managed identity, you need to take an extra step.
1148
+
If you use an ARM template to automate deployment, and your workflow includes an API connectioncreated by a [managed connector](../connectors/managed.md) and uses a managed identity, you need to take an extra step.
1151
1149
1152
-
In an ARM template, the underlying connector resource definition differs based on whether you have a Consumption or Standard logic app resource and whether the [connector shows single-authentication or multi-authentication options](#managed-connectors-managed-identity).
1150
+
In an ARM template, the underlying connector resource definition differs based on whether you use a Consumption or Standard logic app resource and whether the [connector shows single-authentication or multi-authentication options](#managed-connectors-managed-identity).
1153
1151
1154
1152
### [Consumption](#tab/consumption)
1155
1153
1156
-
The following examples apply to Consumption logic app resources. They show how the underlying connector resource definition differs between a single-authentication connector and a multi-authentication connector.
1154
+
The following examples apply to Consumption logic app resources. They show how the underlying connector resource definition differs between a single-authentication connector and a multiauthentication connector.
1157
1155
1158
1156
#### Single-authentication
1159
1157
@@ -1185,7 +1183,7 @@ This example shows the underlying connection resource definition for a connector
1185
1183
},
1186
1184
```
1187
1185
1188
-
#### Multi-authentication
1186
+
#### Multiple authentication methods
1189
1187
1190
1188
This example shows the underlying connection resource definition for a connector action that supports multiple authentication types and uses a managed identity in a Consumption logic app workflow. The definition includes the following attributes:
1191
1189
@@ -1251,7 +1249,7 @@ This example shows the underlying connection resource definition for a connector
1251
1249
},
1252
1250
```
1253
1251
1254
-
#### Multi-authentication
1252
+
#### Multiple authentication methods
1255
1253
1256
1254
This example shows the underlying connection resource definition for a connector action that supports multiple authentication types and uses a managed identity in a Standard logic app workflow. The definition includes the following attributes:
1257
1255
@@ -1461,7 +1459,7 @@ When you turn off the managed identity on your logic app resource, you remove th
1461
1459
>
1462
1460
> Avoid disabling the system-assigned identity as much as possible. To remove the identity's access to Azure resources, remove the identity's role assignment from the target resource. If you delete your logic app resource, Azure automatically removes the managed identity from Microsoft Entra ID.
1463
1461
1464
-
The following sections show how to disable the managed identiy by using the [Azure portal](#azure-portal-disable) and [Azure Resource Manager template (ARM template)](#template-disable). For Azure PowerShell, Azure CLI, and Azure REST API, see:
1462
+
The following sections show how to disable the managed identity by using the [Azure portal](#azure-portal-disable) and [Azure Resource Manager template (ARM template)](#template-disable). For Azure PowerShell, Azure CLI, and Azure REST API, see:
0 commit comments