Azure Logic Apps에서 관리 ID를 사용하여 Azure 리소스에 대한 액세스 및 연결 인증

적용 대상: Azure Logic Apps(사용량 + 표준)

관리 ID를 사용하여 논리 앱 워크플로에서 Microsoft Entra로 보호된 리소스에 대한 액세스 또는 연결을 인증하는 경우 자격 증명, 비밀 또는 Microsoft Entra 토큰을 제공할 필요가 없습니다. Azure Logic Apps에서 일부 커넥터 작업은 Microsoft Entra ID로 보호되는 리소스에 대한 액세스를 인증해야 하는 경우 관리 ID 사용을 지원합니다. Azure는 이 ID를 관리하며, 이 중요한 정보를 관리할 필요가 없기 때문에 자격 증명을 보호하는 데 도움이 됩니다. 자세한 내용은 Azure 리소스에 대한 관리 ID란?을 참조하세요.

Azure Logic Apps는 시스템이 할당한 관리 ID사용자가 할당한 관리 ID를 지원합니다. 다음 목록에서는 이러한 관리 ID 유형 간의 몇 가지 차이점을 설명합니다.

  • 논리 앱 리소스는 하나의 고유한 시스템이 할당한 ID만 사용하도록 설정하고 사용할 수 있습니다.

  • 논리 앱 리소스는 다른 논리 앱 리소스의 그룹에서 동일한 사용자가 할당한 ID를 공유할 수 있습니다.

이 가이드에서는 다음 작업을 완료하는 방법을 보여줍니다.

  • 논리 앱 리소스에 대해 시스템 할당 관리 ID를 사용하도록 설정하고 설정합니다. 이 가이드에서는 인증에 ID를 사용하는 방법을 보여 주는 예제를 제공합니다.

  • 사용자 할당 ID를 만들고 설정합니다. 이 가이드에서는 Azure Portal 및 ARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 사용자 할당 ID를 만드는 방법과 인증에 ID를 사용하는 방법을 보여줍니다. Azure PowerShell, Azure CLI 및 Azure REST API의 경우 다음 설명서를 참조하세요.

도구 설명서
Azure PowerShell 사용자가 할당한 ID 만들기
Azure CLI 사용자가 할당한 ID 만들기
Azure REST API 사용자가 할당한 ID 만들기

사용량 및 표준 논리 앱

논리 앱 리소스 종류에 따라 시스템이 할당한 ID, 사용자가 할당한 ID 또는 두 ID 모두를 동시에 사용하도록 설정할 수 있습니다.

논리 앱 환경 관리 ID 지원
소비 다중 테넌트 Azure Logic Apps

- ISE(통합 서비스 환경)
- 논리 앱에서 시스템이 할당한 ID 또는 사용자가 할당한 ID 중 하나를 사용하도록 설정할 수 있습니다.

- 논리 앱 리소스 수준과 연결 수준에서 관리 ID를 사용할 수 있습니다.

- 사용자가 할당한 ID를 사용하도록 설정하는 경우 논리 앱은 한 번에 하나의 사용자가 할당한 ID를 가질 수 있습니다.
Standard - 단일 테넌트 Azure Logic Apps

- ASEv3(App Service Environment v3)

- Azure Arc 지원 Logic Apps
- 기본적으로 사용하도록 설정되는 시스템이 할당한 ID 및 사용자가 할당한 ID를 모두 동시에 사용하도록 설정할 수 있습니다.

- 논리 앱 리소스 수준과 연결 수준에서 관리 ID를 사용할 수 있습니다.

- 사용자가 할당한 ID를 사용하도록 설정하는 경우 논리 앱 리소스는 한 번에 여러 개의 사용자가 할당한 ID를 가질 수 있습니다.

Azure Logic Apps의 관리 ID 제한에 대한 내용은 논리 앱 관리 ID 한도를 참조하세요. 사용량 및 표준 논리 앱 리소스 종류와 환경에 관한 자세한 내용은 다음 설명서를 참조하세요.

관리 ID를 사용할 수 있는 위치

Azure Logic Apps에서는 Microsoft Entra ID로 OAuth를 지원하는 특정 기본 제공 및 관리 커넥터 작업만 인증에 관리 ID를 사용할 수 있습니다. 다음 표에서는 샘플 선택만 제공합니다. 더 완전한 목록을 보려면 인증을 지원하는 트리거 및 작업에 대한 인증 유형관리 ID를 사용하여 Microsoft Entra 인증을 지원하는 Azure 서비스를 참조하세요.

사용량 논리 앱 워크플로의 경우 다음 표에 관리 ID 인증을 지원하는 커넥터가 나열되어 있습니다.

커넥터 유형 지원되는 커넥터
기본 제공 - Azure API Management
- Azure App Services
- Azure Functions
- HTTP
- HTTP + 웹후크

참고: HTTP 작업은 시스템이 할당한 ID를 사용하여 Azure 방화벽 뒤에 있는 Azure Storage 계정에 대한 연결을 인증할 수 있습니다. 그러나 동일한 연결을 인증하는 데는 사용자가 할당한 관리 ID를 지원하지 않습니다.

관리형 - Azure App Service
- Azure Automation
- Azure Blob Storage
- Azure Container Instance
- Azure Cosmos DB
- Azure Data Explorer
- Azure Data Factory
- Azure Data Lake
- Azure Event Grid
- Azure Event Hubs
- Azure IoT Central V2
- Azure IoT Central V3
- Azure Key Vault
- Azure Log Analytics
- Azure Queues
- Azure Resource Manager
- Azure Service Bus
- Azure Sentinel
- Azure Table Storage
- Azure VM
- Microsoft Entra ID를 사용하는 HTTP
- SQL Server

필수 조건

  • Azure 계정 및 구독 구독이 없는 경우 Azure 체험 계정에 등록합니다. 액세스 권한이 필요한 관리 ID 및 대상 Azure 리소스는 모두 동일한 Azure 구독을 사용해야 합니다.

  • 액세스하려는 대상 Azure 리소스. 이 리소스에서 관리 ID가 논리 앱 또는 연결을 대신하여 해당 리소스에 액세스하는 데 필요한 역할을 추가합니다. 관리 ID에 역할을 추가하려면 이 역할을 해당 Microsoft Entra 테넌트의 ID에 할당할 수 있는 Microsoft Entra 관리자 권한이 필요합니다.

  • 관리 ID를 지원하는 트리거 또는 작업을 사용하려는 논리 앱 리소스 및 워크플로

Azure Portal에서 시스템이 할당한 ID 사용

  1. Azure Portal에서 논리 앱 리소스를 엽니다.

  2. 논리 앱 메뉴의 설정에서 ID를 선택합니다.

  3. ID 페이지의 시스템 할당 아래에서 켜기>저장을 선택합니다. Azure에서 확인하라는 메시지가 표시되면 를 선택합니다.

    Screenshot shows Azure portal, Consumption logic app, Identity page, and System assigned tab with selected options, On and Save.

    참고 항목

    단일 관리 ID만 있을 수 있다는 오류가 표시되면 논리 앱 리소스가 이미 사용자가 할당한 ID와 연결되어 있습니다. 시스템이 할당한 ID를 추가하려면 먼저 논리 앱 리소스에서 사용자가 할당한 ID를 제거해야 합니다.

    이제 논리 앱 리소스에서 시스템이 할당한 ID를 사용할 수 있습니다. 이 ID는 Microsoft Entra ID에 등록되며 개체 ID로 표시됩니다.

    Screenshot shows Consumption logic app, Identity page, and object ID for system-assigned identity.

    속성 설명
    개체(보안 주체) ID <identity-resource-ID> Microsoft Entra 테넌트의 논리 앱에 대한 시스템이 할당한 ID를 나타내는 GUID(Globally Unique Identifier).
  4. 이제 이 가이드의 뒷부분에 있는 리소스에 대한 ID 액세스 권한을 부여하는 단계를 수행합니다.

ARM 템플릿에서 시스템 할당 ID 사용

논리 앱 리소스의 만들기 및 배포를 자동화하려면 ARM 템플릿을 사용할 수 있습니다. 템플릿에서 논리 앱 리소스에 대해 시스템이 할당한 ID를 사용하도록 설정하려면 identity 개체 및 type 자식 속성을 템플릿의 논리 앱 리소스 정의에 추가합니다. 예를 들면 다음과 같습니다.

{
   "apiVersion": "2016-06-01",
   "type": "Microsoft.logic/workflows",
   "name": "[variables('logicappName')]",
   "location": "[resourceGroup().location]",
   "identity": {
      "type": "SystemAssigned"
   },
   "properties": {},
   <...>
}

Azure에서 논리 앱 리소스 정의를 만들면 identity 개체에서 다음과 같은 기타 속성을 가져옵니다.

"identity": {
   "type": "SystemAssigned",
   "principalId": "<principal-ID>",
   "tenantId": "<Azure-AD-tenant-ID>"
}
Property(JSON) 설명
principalId <principal-ID> Microsoft Entra 테넌트에서 논리 앱을 나타내는 관리 ID에 대한 서비스 주체 개체의 GUID(Globally Unique Identifier)입니다. 이 GUID는 "개체 ID" 또는 objectID로 나타나는 경우도 있습니다.
tenantId <Azure AD 테넌트 ID> 논리 앱이 현재 멤버로 속해 있는 Microsoft Entra 테넌트를 나타내는 GUID(Globally Unique Identifier). Microsoft Entra 테넌트 내부에서 서비스 주체는 논리 앱 인스턴스와 이름이 같습니다.

Azure Portal에서 사용자가 할당한 ID 만들기

사용량 논리 앱 리소스 또는 표준 논리 앱 리소스에서 사용자가 할당한 ID를 사용하도록 설정하려면 해당 ID를 별도의 Azure 리소스로 만들어야 합니다.

  1. Azure Portal 검색 상자에 관리 ID를 입력하고 관리 ID를 선택합니다.

    Screenshot shows Azure portal with selected option named Managed Identities.

  2. 관리 ID 페이지에서 만들기를 선택합니다.

    Screenshot shows Managed Identities page and selected option for Create.

  3. 관리 ID에 대한 정보를 제공하고 검토 + 만들기를 선택합니다. 예를 들면 다음과 같습니다.

    Screenshot shows page named Create User Assigned Managed Identity, with managed identity details.

    속성 필요함 Description
    구독 <Azure-subscription-name> Azure 구독 이름
    리소스 그룹 <Azure-resource-group-name> Azure 리소스 그룹 이름입니다. 새 그룹을 만들거나 기존 그룹을 선택합니다. 이 예에서는 fabrikam-managed-identities-RG라는 새 그룹을 만듭니다.
    지역 <Azure-region> 리소스에 대한 정보를 저장할 Azure 지역입니다. 이 예제에서는 미국 서부를 사용합니다.
    이름 <user-assigned-identity-name> 사용자가 할당한 ID를 제공하는 이름입니다. 이 예에서는 Fabrikam-user-assigned-identity를 사용합니다.

    Azure는 정보의 유효성을 검사한 후 관리 ID를 만듭니다. 이제 사용자가 할당한 ID를 논리 앱 리소스에 추가할 수 있습니다.

Azure Portal에서 논리 앱에 사용자가 할당한 ID 추가

  1. Azure Portal에서 논리 앱 리소스를 엽니다.

  2. 논리 앱 메뉴의 설정에서 ID를 선택합니다.

  3. ID 페이지에서 사용자 할당>추가를 선택합니다.

    Screenshot shows Consumption logic app and Identity page with selected option for Add.

  4. 사용자가 할당한 관리 ID 추가 창에서 다음 단계를 수행합니다.

    1. 구독 목록에서 Azure 구독을 선택합니다.

    2. 해당 구독의 모든 관리 ID를 표시하는 목록에서 원하는 사용자 할당 ID를 선택합니다. 목록을 필터링하려면 사용자가 할당한 관리 ID 검색 상자에서 ID 또는 리소스 그룹의 이름을 입력합니다.

      Screenshot shows Consumption logic app and selected user-assigned identity.

    3. 완료되면 추가를 선택합니다.

      참고 항목

      하나의 관리 ID만 있을 수 있다는 오류가 표시되면 논리 앱이 이미 시스템이 할당한 ID와 연결되어 있습니다. 사용자가 할당한 ID를 추가하려면 먼저 시스템이 할당한 ID를 사용하지 않도록 설정해야 합니다.

    이제 논리 앱이 사용자가 할당한 관리 ID와 연결됩니다.

    Screenshot shows Consumption logic app with associated user-assigned identity.

  5. 이제 이 가이드의 뒷부분에 있는 리소스에 대한 ID 액세스 권한을 부여하는 단계를 수행합니다.

ARM 템플릿에서 사용자 할당 ID 만들기

논리 앱 리소스의 만들기 및 배포를 자동화하려면 ARM 템플릿을 사용할 수 있습니다. 이러한 템플릿은 인증에 사용자 할당 ID를 지원합니다.

템플릿의 resources 섹션에서 논리 앱의 리소스 정의에는 다음 항목이 필요합니다.

  • type 속성이 UserAssigned로 설정된 identity 개체

  • 사용자 할당 리소스 및 이름을 지정하는 자식 userAssignedIdentities 개체입니다.

다음 예제에는 매개 변수가 없는 identity 개체가 있는 HTTP PUT 요청에 대한 사용량 논리 앱 리소스 및 워크플로 정의가 표시됩니다. PUT 요청 및 후속 GET 작업에 대한 응답에도 이 identity 개체가 있습니다.

{
   "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
   "contentVersion": "1.0.0.0",
   "parameters": {<template-parameters>},
   "resources": [
      {
         "apiVersion": "2016-06-01",
         "type": "Microsoft.logic/workflows",
         "name": "[variables('logicappName')]",
         "location": "[resourceGroup().location]",
         "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
               "/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>": {}
            }
         },
         "properties": {
            "definition": {<logic-app-workflow-definition>}
         },
         "parameters": {},
         "dependsOn": []
      },
   ],
   "outputs": {}
}

관리 ID의 리소스 정의도 템플릿에 포함되면 identity 개체를 매개 변수화할 수 있습니다. 다음 예제에서는 템플릿의 variables 섹션에서 정의한 자식 userAssignedIdentities 개체에서 userAssignedIdentityName 변수를 참조하는 방법을 보여줍니다. 이 변수는 사용자가 할당한 ID에 대한 리소스 ID를 참조합니다.

{
   "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
   "contentVersion": "1.0.0.0",
   "parameters": {
      "Template_LogicAppName": {
         "type": "string"
      },
      "Template_UserAssignedIdentityName": {
         "type": "securestring"
      }
   },
   "variables": {
      "logicAppName": "[parameters(`Template_LogicAppName')]",
      "userAssignedIdentityName": "[parameters('Template_UserAssignedIdentityName')]"
   },
   "resources": [
      {
         "apiVersion": "2016-06-01",
         "type": "Microsoft.logic/workflows",
         "name": "[variables('logicAppName')]",
         "location": "[resourceGroup().location]",
         "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
               "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]": {}
            }
         },
         "properties": {
            "definition": {<logic-app-workflow-definition>}
         },
         "parameters": {},
         "dependsOn": [
            "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]"
         ]
      },
      {
         "apiVersion": "2018-11-30",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities",
         "name": "[parameters('Template_UserAssignedIdentityName')]",
         "location": "[resourceGroup().location]",
         "properties": {}
      }
  ]
}

리소스에 대한 ID 액세스 권한 부여

논리 앱의 관리 ID를 인증에 사용하려면 먼저 ID를 사용하려는 Azure 리소스에서 해당 ID에 대한 액세스를 설정해야 합니다. 액세스를 설정하는 방법은 ID가 액세스해야 하는 리소스에 따라 달라집니다.

참고 항목

관리 ID가 동일한 구독의 Azure 리소스에 액세스할 수 있는 경우 이 ID는 해당 리소스에만 액세스할 수 있습니다. 그러나 관리 ID를 지원하는 일부 트리거와 작업에서 먼저 대상 리소스가 포함된 Azure 리소스 그룹을 선택해야 합니다. ID가 리소스 그룹 수준에서 액세스 권한이 없는 경우에는 대상 리소스에 액세스할 수 있어도 해당 그룹의 리소스가 나열되지 않습니다.

이 동작을 처리하려면 리소스뿐만 아니라 리소스 그룹에 대한 액세스 권한도 ID에 부여해야 합니다. 마찬가지로, 대상 리소스를 선택하기 전에 구독을 선택해야 하는 경우 구독에 대한 액세스 권한을 ID에 부여해야 합니다.

경우에 따라 ID가 연결된 리소스에 액세스할 수 있어야 할 수 있습니다. 예를 들어 워크플로에서 동일한 로직 앱의 애플리케이션 설정을 업데이트하기 위한 액세스 권한이 필요한 논리 앱에 대한 관리 ID가 있다고 가정해 보겠습니다. 해당 ID에 연결된 논리 앱에 대한 액세스 권한을 부여해야 합니다.

예를 들어, 관리 ID를 사용하여 Azure Blob Storage 계정에 액세스하려면 Azure RBAC(Azure 역할 기반 액세스 제어)를 사용하여 액세스를 설정하고 해당 ID의 적절한 역할을 스토리지 계정에 할당해야 합니다. 이 섹션의 단계에서는 Azure PortalARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 이 작업을 완료하는 방법을 설명합니다. Azure PowerShell, Azure CLI 및 Azure REST API의 경우 다음 설명서를 참조하세요.

도구 설명서
Azure PowerShell 역할 할당 추가
Azure CLI 역할 할당 추가
Azure REST API 역할 할당 추가

그러나 관리 ID를 사용하여 Azure 키 자격 증명 모음에 액세스하려면 키 자격 증명 모음에서 해당 ID에 대한 액세스 정책을 만들고 이 키 자격 증명 모음에서 해당 ID에 대한 적절한 권한을 할당해야 합니다. 이 섹션의 이후 단계에서는 Azure Portal을 사용하여 이 작업을 완료하는 방법을 설명합니다. Resource Manager 템플릿, PowerShell 및 Azure CLI의 경우 다음 설명서를 참조하세요.

도구 설명서
ARM 템플릿(Azure Resource Manager 템플릿) Key Vault 액세스 정책 리소스 정의
Azure PowerShell Key Vault 액세스 정책 할당
Azure CLI Key Vault 액세스 정책 할당

Azure Portal에서 관리 ID 역할 기반 액세스 할당

인증에 관리 ID를 사용하려면 Azure Storage 계정과 같은 일부 Azure 리소스에서는 대상 리소스에 대한 적절한 권한이 있는 역할에 해당 ID를 할당해야 합니다. Azure 키 자격 증명 모음과 같은 다른 Azure 리소스에서는 해당 ID의 대상 리소스에 대한 적절한 권한이 있는 액세스 정책을 만들어야 합니다.

  1. Azure Portal에서 ID를 사용하려는 리소스를 엽니다.

  2. 리소스의 메뉴에서 액세스 제어(IAM)>추가>역할 할당 추가를 차례로 선택합니다.

    참고 항목

    역할 할당 추가 옵션이 사용되지 않도록 설정되면 역할을 할당할 수 있는 권한이 없는 것입니다. 자세한 내용은 Microsoft Entra 기본 제공 역할을 참조하세요.

  3. 이제 관리 ID에 필요한 역할을 할당합니다. 역할 탭에서 ID에 현재 리소스에 대해 필요한 액세스 권한을 제공하는 역할을 할당합니다.

    이 예제에서는 Azure Storage 컨테이너의 Blob에 대한 쓰기 액세스 권한을 포함하는 Storage Blob 데이터 기여자라는 역할을 할당합니다. 특정 스토리지 컨테이너 역할에 대한 자세한 내용은 Azure Storage 컨테이너의 Blob에 액세스할 수 있는 역할을 참조하세요.

  4. 다음으로, 역할을 할당할 관리 ID를 선택합니다. 다음에 대한 액세스 할당에서 관리 ID>구성원 추가를 선택합니다.

  5. 관리 ID의 유형에 따라 다음 값을 선택하거나 제공합니다.

    Type Azure 서비스 인스턴스 구독 멤버
    시스템 할당 논리 앱 <Azure-subscription-name> <your-logic-app-name>
    사용자 할당 해당 없음 <Azure-subscription-name> <your-user-assigned-identity-name>

    역할 할당에 관한 자세한 내용은 Azure Portal을 사용하여 역할 할당을 참조하세요.

  6. 완료한 후 ID를 사용하여 관리 ID를 지원하는 트리거 및 작업에 대한 액세스를 인증할 수 있습니다.

이 작업에 대한 자세한 내용은 Azure RBAC를 사용하여 다른 리소스에 관리 ID 액세스 할당을 참조하세요.

Azure Portal에서 액세스 정책 만들기

인증에 관리 ID를 사용하려면 Azure 키 자격 증명 모음과 같은 일부 Azure 리소스에서는 해당 ID의 대상 리소스에 대한 적절한 권한이 있는 액세스 정책을 만들어야 합니다. Azure Storage 계정과 같은 다른 Azure 리소스에서는 대상 리소스에 대한 적절한 권한이 있는 역할에 해당 ID를 할당해야 합니다.

  1. Azure Portal에서 ID를 사용하려는 대상 리소스를 엽니다. 이 예제에서는 Azure 키 자격 증명 모음을 대상 리소스로 사용합니다.

  2. 리소스 메뉴에서 액세스 정책>만들기를 선택하면 액세스 정책 만들기 창이 열립니다.

    참고 항목

    리소스에 액세스 정책 옵션이 없는 경우 대신 역할 할당을 할당해 보세요.

    Screenshot shows Azure portal and key vault example with open pane named Access policies.

  3. 권한 탭에서 ID가 대상 리소스에 액세스하는 데 필요한 권한을 선택합니다.

    예를 들어, 관리형 Azure Key Vault 커넥터의 비밀 나열 작업에서 ID를 사용하려면 해당 ID에 목록 권한이 필요합니다. 따라서 비밀 권한 열에서 목록을 선택합니다.

    Screenshot shows Permissions tab with selected List permissions.

  4. 준비가 되면 다음을 선택합니다. 보안 주체 탭에서 이 예제의 사용자가 할당한 ID인 관리 ID를 찾고 선택합니다.

  5. 선택적 애플리케이션 단계를 건너뛰고, 다음을 선택하고, 액세스 정책 만들기를 완료합니다.

다음 섹션에서는 관리 ID를 사용하여 트리거 또는 작업에 대한 액세스를 인증하는 방법에 대해 설명합니다. 예제는 RBAC를 사용하여 관리 ID에 대한 액세스를 설정하는 이전 섹션의 단계로 계속되며 Azure Key Vault를 예로 사용하지 않습니다. 그러나 인증에 관리 ID를 사용하는 일반적인 단계는 동일합니다.

관리 ID를 사용하여 액세스 인증

논리 앱 리소스에 대해 관리 ID를 사용하도록 설정하고 대상 리소스 또는 엔터티에 대한 액세스 권한을 해당 ID에 부여한 후에는 관리 ID를 지원하는 트리거 및 작업에서 해당 ID를 사용할 수 있습니다.

Important

시스템이 할당한 ID를 사용하려는 Azure 함수가 있는 경우 먼저 Azure Functions에 대한 인증을 사용하도록 설정합니다.

다음 단계에서는 Azure Portal을 통해 트리거 또는 작업에서 관리 ID를 사용하는 방법을 보여 줍니다. 트리거 또는 작업의 기본 JSON 정의에서 관리 ID를 지정하려면 관리 ID 인증을 참조하세요.

  1. Azure Portal에서 논리 앱 리소스를 엽니다.

  2. 아직 수행하지 않은 경우 관리 ID를 지원하는 트리거 또는 작업을 추가합니다.

    참고 항목

    일부 커넥터 작업만 인증 유형을 추가할 수 있도록 지원합니다. 자세한 내용은 트리거 인증 형식과 인증 지원 동작을 참조하세요.

  3. 추가한 트리거 또는 작업에서 다음 단계를 수행합니다.

    • 관리 ID 인증을 지원하는 기본 제공 커넥터 작업

      1. 새 매개 변수 추가 목록에서 속성이 아직 표시되지 않으면 인증 속성을 추가합니다.

        Screenshot shows Consumption workflow with built-in action and opened list named Add new parameter, with selected option for Authentication.

      2. 인증 유형 목록에서 관리 ID를 선택합니다.

        Screenshot shows Consumption workflow with built-in action and opened list named Authentication type, with selected option for Managed identity.

      자세한 내용은 예: 관리 ID로 기본 제공 트리거 또는 작업 인증을 참조하세요.

    • 관리 ID 인증을 지원하는 관리형 커넥터 작업

      1. 테넌트 선택 페이지에서 관리 ID를 사용하여 연결을 선택합니다. 예를 들면 다음과 같습니다.

        Screenshot shows Consumption workflow with Azure Resource Manager action and selected option for Connect with managed identity.

      2. 다음 페이지에서 연결 이름에 대해 연결에 사용할 이름을 제공합니다.

      3. 인증 유형의 경우 관리형 커넥터에 따라 다음 옵션 중 하나를 선택합니다.

        • 단일 인증: 이 커넥터는 하나의 인증 유형만 지원합니다. 관리 ID 목록에서 현재 사용하도록 설정된 관리 ID(아직 선택하지 않은 경우)를 선택한 다음, 만들기를 선택합니다. 예를 들면 다음과 같습니다.

          Screenshot shows Consumption workflow, connection name box, and selected option for system-assigned managed identity.

        • 다중 인증: 이 커넥터는 여러 인증 유형을 표시하지만 여전히 하나의 유형만 선택할 수 있습니다. 인증 유형 목록에서 Logic Apps 관리 ID>만들기를 선택합니다. 예를 들면 다음과 같습니다.

          Screenshot shows Consumption workflow, connection name box, and selected option for Logic Apps Managed Identity.

        자세한 내용은 예: 관리 ID로 관리형 커넥터 트리거 또는 작업 인증을 참조하세요.

예: 관리 ID로 기본 제공 트리거 또는 작업 인증

기본 제공 HTTP 트리거 또는 작업은 논리 앱 리소스에서 사용하도록 설정하는 시스템이 할당한 ID를 사용할 수 있습니다. 일반적으로 HTTP 트리거 또는 작업에서 다음 속성을 사용하여 액세스하려는 리소스 또는 엔터티를 지정합니다.

속성 필수 설명
방법 실행하려는 작업에서 사용하는 HTTP 메서드
URI 대상 Azure 리소스 또는 엔터티에 액세스하기 위한 엔드포인트 URL. URI 구문에는 일반적으로 Azure 리소스 또는 서비스에 대한 리소스 ID가 포함됩니다.
헤더 아니요 나가는 요청에 필요하거나 포함시키려는 헤더 값(예: 콘텐츠 형식)
쿼리 아니요 필요하거나 요청에 포함하려는 모든 쿼리 매개 변수. 예를 들어 특정 작업 또는 실행하려는 작업의 API 버전에 대한 쿼리 매개 변수입니다.
인증 대상 리소스 또는 엔터티에 대한 액세스를 인증하는 데 사용할 인증 유형

특정한 예로, 이전에 ID에 대한 액세스를 설정한 Azure Storage 계정의 Blob에서 Blob 스냅샷 작업을 실행하려고 한다고 가정합니다. 그러나 Azure Blob Storage 커넥터는 현재 이 작업을 제공하지 않습니다. 대신 이 작업은 HTTP 작업 또는 다른 Blob Service REST API 작업을 사용하여 실행할 수 있습니다.

Important

Azure Blob 커넥터 및 관리 ID를 사용하여 방화벽 뒤의 Azure Storage 계정에 액세스하려면 신뢰할 수 있는 Microsoft 서비스의 액세스를 허용하는 예외로 스토리지 계정도 설정해야 합니다.

Blob 스냅샷 작업을 실행하기 위해 HTTP 작업에서 지정하는 속성은 다음과 같습니다.

속성 Required 예제 값 설명
방법 PUT Blob 스냅샷 작업에서 사용하는 HTTP 메서드
URI https://<storage-account-name>/<folder-name>/{name} 이 구문을 사용하는 Azure 글로벌(퍼블릭) 환경의 Azure Blob Storage 파일에 대한 리소스 ID
헤더 Azure Storage용 x-ms-blob-type = BlockBlob

x-ms-version = 2019-02-02

x-ms-date = @{formatDateTime(utcNow(),'r')}

Azure Storage 작업에 필요한 x-ms-blob-type, x-ms-versionx-ms-date 헤더 값입니다.

중요: Azure Storage에 대한 나가는 HTTP 트리거 및 작업 요청에서 헤더에는 실행하려는 작업에 대한 x-ms-version 속성 및 API 버전이 필요합니다. x-ms-date는 현재 날짜여야 합니다. 그렇지 않으면 워크플로는 403 FORBIDDEN 오류와 함께 실패합니다. 현재 날짜를 필수 형식으로 가져오려면 예제 값의 식을 사용할 수 있습니다.

자세한 내용은 다음 설명서를 참조하세요.

- 요청 헤더 - Blob 스냅샷
- Azure Storage 서비스에 대한 버전 관리

쿼리 Blob 스냅샷 작업에만 해당 comp = snapshot 작업에 대한 쿼리 매개 변수 이름 및 값입니다.

다음 예제에서는 스냅샷 Blob 작업에 사용할 이전에 설명한 모든 속성 값이 포함된 샘플 HTTP 작업을 보여 줍니다.

Screenshot shows Azure portal, Consumption workflow, and HTTP action set up to access resources.

  1. HTTP 작업을 추가한 후에는 HTTP 동작에 인증 속성을 추가합니다. 새 매개 변수 추가 목록에서 인증을 선택합니다.

    Screenshot shows Consumption workflow with HTTP action and opened Add new parameter list with selected property named Authentication.

    참고 항목

    일부 트리거 및 작업만 인증 유형을 추가할 수 있도록 지원합니다. 자세한 내용은 트리거 인증 형식과 인증 지원 동작을 참조하세요.

  2. 인증 유형 목록에서 관리 ID를 선택합니다.

    Screenshot shows Consumption workflow, HTTP action, and Authentication property with selected option for Managed identity.

  3. 관리 ID 목록에서 시나리오에 따라 사용 가능한 옵션 중에서 선택합니다.

    • 시스템이 할당한 ID를 설정하는 경우 시스템이 할당한 관리 ID를 선택합니다(아직 선택하지 않은 경우).

      Screenshot shows Consumption workflow, HTTP action, and Managed identity property with selected option for System-assigned managed identity.

    • 사용자가 할당한 ID를 설정하는 경우 해당 ID를 선택합니다(아직 선택하지 않은 경우).

      Screenshot shows Consumption workflow, HTTP action, and Managed identity property with selected user-assigned identity.

    이 예제에서는 시스템이 할당한 관리 ID를 사용하여 계속 진행합니다.

  4. 일부 트리거 및 작업에서는 대상 리소스 ID를 설정하기 위한 대상 그룹 속성도 표시됩니다. 대상 그룹 속성을 대상 리소스 또는 서비스에 대한 리소스 ID로 설정합니다. 그렇지 않으면 대상 그룹 속성에서 기본적으로 Azure Resource Manager에 대한 리소스 ID인 https://management.azure.com/ 리소스 ID를 사용합니다.

    예를 들어 전역 Azure 클라우드의 Key Vault 리소스에 대한 액세스를 인증하려면 Audience 속성을 정확히 다음 리소스 ID로 설정해야 합니다. https://vault.azure.net. 이 특정 리소스 ID에는 후행 슬래시가 없습니다. 실제로 후행 슬래시를 포함하면 400 Bad Request 오류 또는 401 Unauthorized 오류가 발생할 수 있습니다.

    Important

    대상 리소스 ID는 필수 후행 슬래시를 포함하여 Microsoft Entra ID에 필요한 값과 정확히 일치해야 합니다. 예를 들어 모든 Azure Blob Storage 계정에 대한 리소스 ID에는 후행 슬래시가 필요합니다. 그러나 특정 스토리지 계정에 대한 리소스 ID에는 후행 슬래시가 필요하지 않습니다. Microsoft Entra ID를 지원하는 Azure 서비스에 대한 리소스 ID를 확인하세요.

    다음 예에서는 인증에 사용되는 액세스 토큰이 모든 스토리지 계정에 유효하도록 대상 그룹 속성을 https://storage.azure.com/으로 설정합니다. 그러나 특정 스토리지 계정에 대한 루트 서비스 URL(https://<your-storage-account>.blob.core.windows.net)도 지정할 수 있습니다.

    Screenshot shows Consumption workflow, HTTP action, and Audience

    Azure Storage에 대해 Microsoft Entra ID를 사용하여 액세스 권한을 부여하는 방법에 관한 자세한 내용은 다음 설명서를 참조하세요.

  5. 워크플로를 원하는 방식으로 계속 빌드합니다.

예: 관리 ID로 관리형 커넥터 트리거 또는 작업 인증

Azure Resource Manager 관리형 커넥터에는 논리 앱 리소스에서 사용하도록 설정하는 관리 ID를 사용할 수 있는 리소스 읽기라는 작업이 있습니다. 이 예에서는 시스템이 할당한 관리 ID를 사용하는 방법을 보여 줍니다.

  1. 워크플로에 작업을 추가하고 Microsoft Entra 테넌트를 선택한 후 관리 ID를 사용하여 연결을 선택합니다.

    Screenshot shows Consumption workflow, Azure Resource Manager action, and selected option for Connect with managed identity.

  2. 연결 이름 페이지에서 연결의 이름을 입력하고 사용할 관리 ID를 선택합니다.

    Azure Resource Manager 작업은 단일 인증 작업이므로 연결 정보 상자에는 논리 앱 리소스에서 현재 사용하도록 설정된 관리 ID를 자동으로 선택하는 관리 ID 목록이 표시됩니다. 시스템이 할당한 관리 ID를 사용하도록 설정한 경우 관리 ID 목록은 시스템이 할당한 관리 ID를 선택합니다. 대신 사용자가 할당한 관리 ID를 사용하도록 설정한 경우 목록은 대신 해당 ID를 선택합니다.

    Azure Blob Storage 등의 다중 인증 트리거 또는 작업을 사용하는 경우 연결 정보 상자에는 다른 인증 유형 중 Logic Apps 관리 ID 옵션이 포함된 인증 유형 목록이 표시됩니다.

    이 예제에서는 시스템이 할당한 관리 ID만 선택할 수 있습니다.

    Screenshot shows Consumption workflow and Azure Resource Manager action with connection name entered and selected option for System-assigned managed identity.

    참고 항목

    연결을 만들거나 변경할 때 관리 ID가 사용하도록 설정되지 않았거나 관리 ID 지원 연결이 존재하지만 관리 ID가 제거된 경우에는 ID를 사용하도록 설정하고 대상 리소스에 대한 액세스 권한을 부여해야 한다는 오류가 표시됩니다.

  3. 준비가 되면 만들기를 선택합니다.

  4. 디자이너는 성공적으로 연결한 후 관리 ID 인증을 사용하여 동적 값, 콘텐츠 또는 스키마를 가져올 수 있습니다.

  5. 워크플로를 원하는 방식으로 계속 빌드합니다.

관리 ID를 사용하는 논리 앱 리소스 정의 및 연결

관리 ID를 사용하도록 설정하고 사용하는 연결은 관리 ID로만 작동하는 특수 연결 형식입니다. 런타임에 연결은 논리 앱 리소스에서 사용하도록 설정된 관리 ID를 사용합니다. 런타임에 Azure Logic Apps 서비스는 논리 앱 워크플로의 관리형 커넥터 트리거와 작업이 관리 ID를 사용하도록 설정되어 있는지, 모든 필요한 권한이 관리 ID를 사용하여 트리거 및 작업에 지정된 대상 리소스에 액세스하도록 설정되었는지를 확인합니다. 성공하면 Azure Logic Apps는 관리 ID와 연결된 Microsoft Entra 토큰을 검색하고, 이 ID를 사용하여 대상 리소스에 대한 액세스를 인증하고 트리거 및 작업에서 구성된 작업을 수행합니다.

사용량 논리 앱 리소스에서 연결 구성은 논리 앱 리소스 정의의 parameters 개체에 저장되며, 이 개체에는 사용자가 할당한 ID가 사용하도록 설정된 경우 ID의 리소스 ID와 함께 연결의 리소스 ID에 대한 포인터를 포함하는 $connections 개체가 포함됩니다.

이 예제에서는 논리 앱에서 시스템이 할당한 관리 ID를 사용하도록 설정할 때 표시되는 구성을 보여 줍니다.

"parameters": {
   "$connections": {
      "value": {
         "<action-name>": {
            "connectionId": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/{connection-name}",
            "connectionName": "{connection-name}",
            "connectionProperties": {
               "authentication": {
                  "type": "ManagedServiceIdentity"
               }
            },
            "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{managed-connector-type}"
         }
      }
   }
}

이 예제에서는 논리 앱에서 사용자가 할당한 관리 ID를 사용하도록 설정할 때 표시되는 구성을 보여 줍니다.

"parameters": {
   "$connections": {
      "value": {
         "<action-name>": {
            "connectionId": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/{connection-name}",
            "connectionName": "{connection-name}",
            "connectionProperties": {
               "authentication": {
                  "type": "ManagedServiceIdentity",
                  "identity": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resourceGroupName}/providers/microsoft.managedidentity/userassignedidentities/{managed-identity-name}"
               }
            },
            "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{managed-connector-type}"
         }
      }
   }
}

API 연결 및 관리 ID에 대한 ARM 템플릿

ARM 템플릿을 사용하여 배포를 자동화하며 관리 ID를 사용하는 Office 365 Outlook, Azure Key Vault 등의 관리형 커넥터에서 만들어진 API 연결이 워크플로에 포함된 경우 추가 단계를 수행해야 합니다.

ARM 템플릿에서 기본 커넥터 리소스 정의는 사용량 또는 표준 논리 앱이 있는지 여부, 커넥터에 단일 인증 또는 다중 인증 옵션이 표시되는지 여부에 따라 달라집니다.

다음 예제는 사용량 논리 앱 리소스에 적용되며 Azure Automation 등의 단일 인증 커넥터와 Azure Blob Storage 등의 다중 인증 커넥터 간에 기본 커넥터 리소스 정의가 어떻게 다른지 보여줍니다.

단일 인증

이 예제에서는 정의에 특성이 포함된 관리 ID를 사용하는 사용량 논리 앱에서 Azure Automation 작업의 기본 연결 리소스 정의를 보여 줍니다.

  • kind 속성은 사용량 논리 앱에서 V1로 설정됩니다.
  • parameterValueType 속성은 Alternative로 설정됩니다.
{
    "type": "Microsoft.Web/connections",
    "apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
    "name": "[variables('connections_azureautomation_name')]",
    "location": "[parameters('location')]",
    "kind": "V1",
    "properties": {
        "alternativeParameterValues": {},
        "api": {
            "id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureautomation')]"
        },
        "authenticatedUser": {},
        "connectionState": "Enabled",
        "customParameterValues": {},
        "displayName": "[variables('connections_azureautomation_name')]",
        "parameterValueSet": {},
        "parameterValueType": "Alternative"
    }
},

다중 인증

이 예제에서는 정의에 다음 특성이 포함된 관리 ID를 사용하는 사용량 논리 앱에서 Azure Blob Storage 작업의 기본 연결 리소스 정의를 보여 줍니다.

  • kind 속성은 사용량 논리 앱에서 V1로 설정됩니다.
  • parameterValueSet 개체에는 managedIdentityAuth로 설정된 name 속성과 빈 개체로 설정된 values 속성이 포함됩니다.
{
    "type": "Microsoft.Web/connections",
    "apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
    "name": "[variables('connections_azureblob_name')]",
    "location": "[parameters('location')]",
    "kind": "V1",
    "properties": {
        "alternativeParameterValues":{},
        "api": {
            "id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureblob')]"
        },
        "authenticatedUser": {},
        "connectionState": "Enabled",
        "customParameterValues": {},
        "displayName": "[variables('connections_azureblob_name')]",
        "parameterValueSet":{
            "name": "managedIdentityAuth",
            "values": {}
        },
        "parameterValueType": "Alternative"
    }
}

API 연결 인증에 대한 고급 제어 설정

워크플로에서 Office 365 Outlook, Azure Key Vault 등의 관리형 커넥터에서 만들어진 API 연결을 사용하는 경우 Azure Logic Apps 서비스는 다음 두 연결을 사용하여 메일 계정, 키 자격 증명 모음 등의 대상 리소스와 통신합니다.

Conceptual diagram showing first connection with authentication between logic app and token store plus second connection between token store and target resource.

  • 연결 #1은 내부 토큰 저장소에 대한 인증을 사용하여 설정됩니다.

  • 연결 #2는 대상 리소스에 대한 인증을 사용하여 설정됩니다.

사용량 논리 앱 리소스에서 연결 #1은 구성 옵션 없이 추상화됩니다. 표준 논리 앱 리소스 종류에서는 논리 앱을 더 세부적으로 제어할 수 있습니다. 기본적으로 연결 #1은 자동으로 시스템이 할당한 ID를 사용하도록 설정됩니다.

그러나 시나리오에서 API 연결 인증을 더 세부적으로 제어해야 하는 경우 필요에 따라 연결 #1에 대한 인증을 기본 시스템이 할당한 ID에서 논리 앱에 추가한 사용자가 할당한 ID로 변경할 수 있습니다. 이 인증은 각 API 연결에 적용되므로 동일한 대상 리소스에 대한 여러 연결에서 시스템이 할당한 ID와 사용자가 할당한 ID를 혼합할 수 있습니다.

각 API 연결에 관한 정보를 저장하는 표준 논리 앱 connections.json 파일에서 각 연결 정의에는 다음과 같은 두 개의 authentication 섹션이 있습니다.

"keyvault": {
   "api": {
      "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault"
   },
   "authentication": {
      "type": "ManagedServiceIdentity",
   },
   "connection": {
      "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>"
   },
   "connectionProperties": {
      "authentication": {
         "audience": "https://vault.azure.net",
         "type": "ManagedServiceIdentity"
      }
   },
   "connectionRuntimeUrl": "<connection-runtime-URL>"
}
  • 첫 번째 authentication 섹션은 연결 #1에 매핑됩니다. 이 섹션에서는 내부 토큰 저장소와 통신하는 데 사용되는 인증을 설명합니다. 이전에 이 섹션은 항상 Azure에 배포되는 앱의 경우 ManagedServiceIdentity로 설정되고 구성 가능한 옵션이 없었습니다.

  • 두 번째 authentication 섹션은 연결 #2에 매핑됩니다. 이 섹션에서는 대상 리소스와 통신하는 데 사용되는 인증이 해당 연결에 대해 선택한 인증 유형에 따라 달라질 수 있음을 설명합니다.

토큰 저장소에 대한 인증을 변경하는 이유는 무엇인가요?

일부 시나리오에서는 여러 논리 앱에서 동일한 API 연결을 공유하고 사용하지만 각 논리 앱의 시스템이 할당한 ID를 대상 리소스의 액세스 정책에 추가하지 않으려고 할 수 있습니다.

다른 시나리오에서는 전적으로 논리 앱에서 시스템이 할당한 ID를 설정하지 않으려고 할 수 있으며, 이 경우 인증을 사용자가 할당한 ID로 변경하고 시스템이 할당한 ID를 완전히 사용하지 않도록 설정할 수 있습니다.

토큰 저장소에 대한 인증 변경

  1. Azure Portal에서 표준 논리 앱 리소스를 엽니다.

  2. 리소스 메뉴의 워크플로에서 연결을 선택합니다.

  3. 연결 창에서 JSON 보기를 선택합니다.

    Screenshot showing the Azure portal, Standard logic app resource,

  4. JSON 편집기에서 논리 앱 리소스의 모든 워크플로에 걸쳐 API 연결이 포함된 managedApiConnections 섹션을 찾습니다.

  5. 사용자가 할당한 관리 ID를 추가하려는 연결을 찾습니다. 예를 들어, 워크플로에 Azure Key Vault 연결이 있다고 가정합니다.

    "keyvault": {
       "api": {
          "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault"
       },
       "authentication": {
          "type": "ManagedServiceIdentity"
       },
       "connection": {
          "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>"
       },
       "connectionProperties": {
          "authentication": {
             "audience": "https://vault.azure.net",
             "type": "ManagedServiceIdentity"
          }
       },
       "connectionRuntimeUrl": "<connection-runtime-URL>"
    }
    
  6. 연결 정의에서 다음 단계를 완료합니다.

    1. 첫 번째 authentication 섹션을 찾습니다. identity 속성이 이 authentication 섹션에 아직 없는 경우 논리 앱은 시스템이 할당한 ID를 암시적으로 사용합니다.

    2. 이 단계의 예제를 사용하여 identity 속성을 추가합니다.

    3. 속성 값을 사용자가 할당한 ID의 리소스 ID로 설정합니다.

    "keyvault": {
       "api": {
          "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault"
       },
       "authentication": {
          "type": "ManagedServiceIdentity",
          // Add "identity" property here
          "identity": "/subscriptions/{Azure-subscription-ID}/resourcegroups/{resource-group-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-resource-ID}" 
       },
       "connection": {
          "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>"
       },
       "connectionProperties": {
          "authentication": {
             "audience": "https://vault.azure.net",
             "type": "ManagedServiceIdentity"
          }
       },
       "connectionRuntimeUrl": "<connection-runtime-URL>"
    }
    
  7. Azure Portal에서 대상 리소스로 이동하고 대상 리소스의 요구 사항에 따라 사용자가 할당한 관리 ID에 대한 액세스 권한을 부여합니다.

    예를 들어, Azure Key Vault의 경우 키 자격 증명 모음의 액세스 정책에 ID를 추가합니다. Azure Blob Storage의 경우 ID에 필요한 역할을 스토리지 계정에 할당합니다.

관리 ID 사용 안 함

인증에 관리 ID 사용을 중지하려면 먼저 ID의 대상 리소스에 대한 액세스 권한을 제거합니다. 다음으로, 논리 앱 리소스에서 시스템이 할당한 ID를 끄거나 사용자가 할당한 ID를 제거합니다.

논리 앱 리소스에서 관리 ID를 사용하지 않도록 설정하면 해당 ID가 액세스할 수 있는 Azure 리소스에 대한 액세스를 요청하는 기능을 제거합니다.

참고 항목

시스템이 할당한 ID를 사용하지 않도록 설정하면 즉시 ID를 다시 사용하도록 설정하더라도 해당 논리 앱 워크플로의 워크플로에서 사용되는 임의 및 모든 연결이 런타임에 작동하지 않습니다. ID를 사용하지 않도록 설정하면 개체 ID가 삭제되므로 이 동작이 발생합니다. ID를 사용하도록 설정할 때마다 Azure는 다른 고유한 개체 ID를 사용하여 ID를 생성합니다. 이 문제를 해결하려면 현재 시스템이 할당한 ID에 현재 개체 ID를 사용하도록 연결을 다시 만들어야 합니다.

시스템이 할당한 ID를 사용하지 않도록 설정하는 작업은 최대한 피하는 것이 좋습니다. ID의 Azure 리소스에 대한 액세스를 제거하려면 대상 리소스에서 ID의 역할 할당을 제거합니다. 논리 앱 리소스를 삭제하면 Azure에서는 Microsoft Entra ID의 관리 ID를 자동으로 제거합니다.

이 섹션의 단계에서는 Azure PortalARM 템플릿(Azure Resource Manager 템플릿)을 사용하는 방법을 설명합니다. Azure PowerShell, Azure CLI 및 Azure REST API의 경우 다음 설명서를 참조하세요.

도구 설명서
Azure PowerShell 1. 역할 할당 제거
2. 사용자가 할당한 ID 삭제
Azure CLI 1. 역할 할당 제거
2. 사용자가 할당한 ID 삭제
Azure REST API 1. 역할 할당 제거
2. 사용자가 할당한 ID 삭제

Azure Portal에서 관리 ID 사용 안 함

관리 ID에 대한 액세스를 제거하려면 대상 리소스에서 ID의 역할 할당을 제거한 다음, 관리 ID를 사용하지 않도록 설정합니다.

역할 할당 제거

다음 단계에서는 관리 ID에서 대상 리소스에 대한 액세스 권한을 제거합니다.

  1. Azure Portal에서 관리 ID에 대한 액세스를 제거하려는 대상 Azure 리소스로 이동합니다.

  2. 대상 리소스의 메뉴에서 액세스 제어(IAM)를 선택합니다. 도구 모음 아래에서 역할 할당을 선택합니다.

  3. 역할 목록에서 제거하려는 관리 ID를 선택합니다. 도구 모음에서 제거를 선택합니다.

    제거 옵션을 사용하지 않도록 설정되면 대부분 권한이 없을 가능성이 높습니다. 리소스에 대한 역할을 관리할 수 있는 권한에 대한 자세한 내용은 Microsoft Entra ID의 관리자 역할 권한을 참조하세요.

논리 앱 리소스에서 관리 ID 사용 안 함

  1. Azure Portal에서 논리 앱 리소스를 엽니다.

  2. 논리 앱 탐색 메뉴의 설정에서 ID를 선택한 다음, ID에 대한 단계를 수행합니다.

    • 시스템 할당 항목>켜기>저장을 차례로 선택합니다. Azure에서 확인하라는 메시지가 표시되면 를 선택합니다.

    • 사용자 할당 항목 및 관리 ID를 선택한 다음, 제거를 선택합니다. Azure에서 확인하라는 메시지가 표시되면 를 선택합니다.

ARM 템플릿에서 관리 ID 사용 안 함

ARM 템플릿을 사용하여 논리 앱의 관리 ID를 만든 경우 identity 개체의 type 자식 속성을 None으로 설정합니다.

"identity": {
   "type": "None"
}

다음 단계