작업 ID란?

워크로드 ID는 소프트웨어 워크로드(예: 애플리케이션, 서비스, 스크립트 또는 컨테이너)에 할당하여 다른 서비스 및 리소스에 인증하고 액세스하는 데 사용하는 ID입니다. 이 용어는 산업 전체에서 일관적으로 사용되지는 않지만, 일반적으로 워크로드 ID는 소프트웨어 엔터티가 일부 시스템을 인증하는 데 필요한 항목입니다. 예를 들어 GitHub Actions를 Azure 구독에 액세스하려면 해당 구독에 액세스할 수 있는 워크로드 ID가 필요합니다. 워크로드 ID는 Amazon S3 버킷에 대한 읽기 전용 액세스 권한이 있는 EC2 인스턴스에 연결된 AWS 서비스 역할일 수도 있습니다.

Microsoft Entra에서 워크로드 ID는 애플리케이션, 서비스 사용자 및 관리 ID입니다.

애플리케이션은 애플리케이션 개체를 통해 정의되는 추상 엔터티 또는 템플릿입니다. 애플리케이션 개체는 모든 테넌트에서 사용할 애플리케이션의 전역 표현입니다. 애플리케이션 개체는 토큰을 발급하는 방법, 애플리케이션에서 액세스해야 하는 리소스 및 애플리케이션에서 수행할 수 있는 작업을 설명합니다.

서비스 주체는 특정 테넌트에 있는 전역 애플리케이션 개체의 로컬 표현 또는 애플리케이션 인스턴스입니다. 애플리케이션 개체는 애플리케이션이 사용되는 모든 테넌트에 서비스 주체 개체를 만들기 위한 템플릿으로 사용됩니다. 서비스 주체 개체는 앱이 특정 테넌트에서 실제로 수행할 수 있는 작업, 앱에 액세스할 수 있는 사용자 및 앱이 액세스할 수 있는 리소스를 정의합니다.

관리 ID는 개발자가 자격 증명을 관리할 필요가 없는 특별한 유형의 서비스 주체입니다.

Microsoft Entra ID의 워크로드 ID는 다음과 같은 방식으로 사용됩니다.

  • 웹앱이 관리자 또는 사용자 동의를 기반으로 Microsoft Graph에 액세스할 수 있는 앱. 이 액세스 권한은 사용자를 대신하거나 애플리케이션을 대신할 수 있습니다.
  • 개발자가 Azure Key Vault 또는 Azure Storage와 같은 Azure 리소스에 대한 액세스 권한을 서비스에 프로비저닝하는 데 사용하는 관리 ID.
  • 개발자가 GitHub의 웹앱을 Azure App Service에 배포하는 CI/CD 파이프라인을 사용하기 위해 사용하는 서비스 주체.

워크로드 ID, 다른 머신 ID 및 인간 ID

크게 보면 인간 ID와 머신/비인간 ID의 두 종류 ID가 있습니다. 워크로드 ID와 디바이스 ID가 합쳐져서 머신(또는 비인간) ID라는 그룹을 구성합니다. 워크로드 ID는 소프트웨어 워크로드를 나타내고, 디바이스 ID는 데스크톱 컴퓨터, 모바일, IoT 센서 및 IoT 관리 디바이스와 같은 디바이스를 나타냅니다. 머신 ID는 직원(내부 작업자 및 프런트 라인 작업자) 및 외부 사용자(고객, 컨설턴트, 공급업체 및 파트너)와 같은 사람을 나타내는 인간 ID와 뚜렷이 다릅니다.

Diagram that shows different types of machine and human identities.

워크로드 ID 보안 필요

점점 더 많은 솔루션이 중요한 작업을 완료하기 위해 비인적 엔터티에 의존하고 있으며 비인적 ID의 수가 급격히 증가하고 있습니다. 최근의 사이버 공격은 악의적 사용자가 점점 더 인적 ID보다 비인적 ID를 대상으로 하고 있다는 것을 보여 줍니다.

휴먼 사용자에게는 일반적으로 광범위한 리소스에 액세스하는 데 사용되는 단일 ID가 있습니다. 사용자와 달리 소프트웨어 워크로드는 여러 자격 증명을 처리하여 다양한 리소스에 액세스할 수 있으며 해당 자격 증명은 안전하게 저장되어야 합니다. 워크로드 ID가 생성되는 시기 또는 철회 시기를 추적하기도 어렵습니다. 기업은 워크로드 ID를 보호하는 데 어려움을 겪기 때문에 애플리케이션 또는 서비스가 악용되거나 위반될 위험이 있습니다.

Diagram that shows pain points in securing workload identities.

오늘날 시장에서 대부분의 ID 및 액세스 관리 솔루션은 워크로드 ID가 아닌 휴먼 ID를 보호하는 데만 초점을 맞추고 있습니다. Microsoft Entra 워크로드 ID는 워크로드 ID를 보호하는 경우 이러한 문제를 해결하는 데 도움이 됩니다.

주요 시나리오

워크로드 ID를 사용할 수 있는 방법은 다음과 같습니다.

적응형 정책을 사용하여 액세스 보호:

손상된 ID를 지능적으로 검색합니다.

  • ID 보호를 사용하여 위험(예: 유출된 자격 증명)을 검색하고, 위협을 포함하고, 워크로드 ID에 대한 위험을 줄입니다.

수명 주기 관리 간소화:

  • 관리 ID를 사용하여 Azure에서 실행되는 워크로드에 대한 비밀을 관리할 필요 없이 Microsoft Entra 보호 리소스에 액세스합니다.
  • GitHub Actions, Kubernetes에서 실행되는 워크로드 또는 Azure 외부의 컴퓨팅 플랫폼에서 실행되는 워크로드와 같은 지원되는 시나리오에 대해 워크로드 ID 페더레이션을 사용하여 비밀을 관리할 필요 없이 Microsoft Entra 보호 리소스에 액세스합니다.
  • 서비스 주체의 액세스 권한 검토를 사용하여 Microsoft Entra ID의 권한 있는 디렉터리 역할에 할당된 서비스 주체 및 애플리케이션을 검토합니다.

다음 단계