Azure Logic Apps에 대한 사용자 지정 확장 확장성을 보호하기 위한 모범 사례
이 문서에서는 Azure Logic Apps에 대한 Microsoft Entra ID 거버넌스 사용자 지정 확장 확장 확장성을 보호하기 위한 모범 사례를 설명합니다. 이 지침은 권한 관리, 수명 주기 워크플로 및 Azure Logic Apps에 대해 게시된 일반 보안 지침에 대한 보완과 관련이 있습니다.
이 문서에 설명된 모범 사례는 다음과 같습니다.
- 구독에 대한 관리 액세스 보호
- SAS(공유 액세스 서명) 사용 안 됨
- 인증에 관리 ID 사용
- 최소 권한으로 권한 부여
- PoP(소유 증명) 사용 보장
Logic Apps를 호스트하는 Azure 구독에 대한 관리 액세스는 보호되어야 합니다. 클라우드 채택 프레임워크 따라 가능한 경우 Logic Apps를 ID 구독에 배치하는 것이 좋습니다. 자세한 내용은 다음을 참조하세요. Azure 랜딩 존이란?
Logic Apps에 대한 인바운드 호출은 하나의 권한 부여 체계, Microsoft Entra ID 액세스 토큰 또는 SAS(공유 액세스 서명)만 사용할 수 있습니다. 그러나 한 체계를 사용하면 다른 스키마를 사용하지 않도록 설정하지 않습니다. Microsoft Entra ID 거버넌스에서 Logic Apps로의 호출은 Microsoft Entra ID 액세스 토큰 권한 부여 체계를 통해 권한이 부여됩니다.
Microsoft Entra ID 거버넌스에서 필요하지 않으므로 Logic Apps에서 SAS(공유 액세스 서명) 권한 부여 체계를 사용하지 않도록 설정하는 것이 좋습니다. SAS(공유 액세스 서명) 권한 부여 체계를 사용하지 않도록 설정하면 서명이 무단 액세스에 노출되거나 대상이 될 위험이 없습니다.
2024년 4월 29일 이후에 Microsoft Entra ID 거버넌스 사용자 지정 확장 사용자 인터페이스를 통해 만든 모든 Logic Apps에는 기본적으로 SAS(공유 액세스 서명) 권한 부여 체계가 비활성화되어 있습니다.
2024년 4월 29일 또는 그 이전에 Microsoft Entra ID 거버넌스 사용자 지정 확장 사용자 인터페이스를 통해 논리 앱을 만든 경우 지침에 따라 SAS (공유 액세스 서명) 인증 사용 안 함(사용 전용)에 있는 SAS(공유 액세스 서명) 권한 부여 체계를 사용하지 않도록 설정합니다.
서비스 간 통신을 보호하는 데 사용되는 비밀, 자격 증명, 인증서 및 키를 관리하는 것은 일반적인 과제입니다. 관리 ID는 이러한 자격 증명을 관리할 필요가 없습니다. 사용자 지정 확장 "시작 및 대기" 패턴을 사용하는 경우(권한 관리 참조; 수명 주기 워크플로 참조) Azure Logic Apps 관리 ID를 사용하도록 설정하여 다시 시작 호출(taskProcessingResult: resume; accessPackageAssignmentRequest: resume) - Microsoft Entra ID 거버넌스 시나리오에서 논리 앱이 다른 Microsoft Graph 엔드포인트 또는 다른 Microsoft Entra 통합 서비스를 호출해야 하는 경우 관리 ID를 사용하여 이러한 서비스에 대한 호출을 인증할 수도 있습니다.
권한 관리: 관리 ID를 직접 사용하도록 설정해야 합니다. 이 프로세스에 대한 자세한 내용은 다음을 참조 하세요. Azure Portal에서 시스템 할당 ID를 사용하도록 설정한 다음 권한을 부여합니다.
수명 주기 워크플로: "시작 및 대기" 사용자 지정 확장에 대해 관리 ID가 자동으로 활성화되고 권한이 부여됩니다. 논리 앱이 다른 서비스를 호출해야 하는 경우 동일한 관리 ID를 사용하고 권한을 부여할 수 있습니다. '시작 및 계속' 사용자 지정 확장의 경우 관리 ID를 직접 사용하도록 설정해야 합니다.
Logic Apps 작업에서 관리 ID를 사용하는 방법에 대한 단계는 다음 을 참조하세요. 관리 ID를 사용하여 액세스 인증.
Logic Apps에서 Microsoft Entra ID 거버넌스로의 다시 시작 호출은 수명 주기 워크플로 및 권한 관리 내에서 직접 권한을 부여할 수 있습니다. 직접 권한이 부여되면 LifecycleWorkflows.ReadWrite.All 또는 Entitlement Management.ReadWrite.All과 같은 관리 ID 애플리케이션 권한을 할당할 필요가 없습니다 .
최소 권한 권한을 할당하기 위한 지침:
관리 ID에 지정된 카탈로그에 대한 '액세스 패키지 할당 관리자' 역할을 할당하여 다시 시작 호출에 권한을 부여합니다. 카탈로그에 역할을 할당하는 방법에 대한 일반적인 지침은 다음을 참조 하세요. 카탈로그 소유자로서 액세스 패키지 관리자에게 위임합니다.
관리 ID는 사용자 지정 확장 설정 내에서 다시 시작 호출에 대해 직접 권한을 부여할 수 있습니다. 수명 주기 워크플로는 사용자 지정 확장 만들기 프로세스 중에 자동으로 설정합니다. 자세한 내용은 응답 권한 부여를 참조하세요.
다른 Microsoft Graph API와 같이 Microsoft Entra ID와 통합된 다른 서비스를 호출하도록 논리 앱에 권한을 부여해야 하는 경우 관리 ID는 다양한 역할 기반 액세스 제어 시스템의 역할 할당을 통해 권한을 얻을 수 있으며, 이는 종종 최소 권한 원칙을 따를 수 있습니다. 예제의 전체 목록은 다음과 같습니다.
- 권한 관리 사용자 지정 확장이 권한 관리에서 추가 정보를 쿼리해야 하는 경우 지정된 카탈로그에 대해 자격 관리의 역할 중 하나(예: 카탈로그 판독기)를 논리 앱에 할당할 수 있습니다. 이렇게 하면 테넌트 전체 EntitlementManagement.Read.All 및/또는 EntitlementManagement.ReadWrite.All 애플리케이션 권한에 비해 사용 권한 및 범위를 줄일 수 있습니다.
- 수명 주기 워크플로 사용자 지정 확장을 사용하여 기본 제공 작업이 아닌 임시 액세스 패스를 생성하려는 경우 관리 단위로 범위가 지정된 인증 관리자 Microsoft Entra 기본 제공 역할을 관리 단위로 할당할 수 있습니다. 이 경우 UserAuthenticationMethod.ReadWrite.All 애플리케이션 권한을 할당하면 논리 앱이 손상될 경우 폭발 반경이 크게 증가합니다.
Microsoft Graph 권한 부여에 대한 자세한 내용은 다음 을 참조하세요. 사용자 없이 액세스 권한을 얻습니다.
Logic Apps는 Microsoft Entra ID 액세스 토큰 권한 부여 체계에 대한 전달자 또는 소유 증명 유형 액세스 토큰을 지원합니다. Microsoft Entra ID 거버넌스 사용자 지정 확장 공개 미리 보기의 시작 부분에서 PoP(소유 증명)가 아닌 전달자는 Microsoft Entra ID 거버넌스에서 Logic Apps로의 호출에 권한을 부여하는 데 액세스 토큰을 사용했습니다.
일반 공급으로 전환한 이후 Microsoft Entra ID 거버넌스 사용자 인터페이스 및 Microsoft Graph v1.0 엔드포인트를 통해 만든 모든 사용자 지정 확장은 기본적으로 소유 증명 액세스 토큰 권한 부여 체계를 사용합니다.
사용자 환경에 전달자 형식 액세스 토큰을 사용하는 사용자 지정 확장이 여전히 포함되어 있는 경우 소유 증명 형식 액세스 토큰으로 전환하는 것이 좋습니다.
사용자 지정 확장에서 현재 사용되는 권한 부여 체계를 확인하려면 Microsoft Entra 관리 센터에 표시된 토큰 보안 열을 참조하세요.
액세스 토큰 유형 | Microsoft Entra 관리 센터 토큰 보안 열 |
---|---|
무기명 | 일반 |
PoP(소유 증명) | 소유 증명 |
수명 주기 워크플로의 사용자 지정 확장은 전달자에서 소유 증명 형식 액세스 토큰으로 마이그레이션할 수 없습니다. 새 사용자 지정 확장을 만들고 해당 워크플로에서 구성해야 합니다.
권한 관리 사용자 지정 확장의 하위 집합의 경우 권한 관리 사용자 인터페이스를 통해 사용할 수 있는 '새 확장 유형으로 업데이트' 옵션을 사용할 수 있습니다. 새 확장 유형으로 업데이트하려면 다음 단계를 수행합니다.
최소한 ID 관리 관리자로 Microsoft Entra 관리 센터에 로그인합니다.
ID 거버넌스>권한 관리>카탈로그를 찾아보세요.
업데이트하려는 사용자 지정 확장이 있는 카탈로그를 선택합니다.
카탈로그 개요 페이지에서 사용자 지정 확장을 선택합니다.
사용자 지정 확장 페이지에서 토큰 보안이 Regular이라고 하는 사용자 지정 확장을 찾아 옆에 있는 세 줄을 선택합니다.
새 확장 유형으로 업데이트를 선택합니다.
참고
업데이트 함수가 실패하면 해당 액세스 패키지 할당 정책에서 새 사용자 지정 확장을 만들고 구성해야 합니다.