Azure 리소스용 관리 ID란?

개발자의 일반적인 과제는 서비스 간의 통신을 보호하는 데 사용되는 비밀, 자격 증명, 인증서 및 키를 관리하는 것입니다. 관리 ID를 통해 개발자는 이러한 자격 증명을 관리할 필요가 없습니다.

개발자는 Azure Key Vault에 비밀을 안전하게 저장할 수 있지만 서비스는 Azure Key Vault에 액세스하는 방법이 필요합니다. 관리 ID는 Azure AD(Azure Active Directory) 인증을 지원하는 리소스에 연결할 때 사용할 Azure Active Directory의 자동 관리 ID를 제공합니다. 애플리케이션은 관리 ID를 사용하여 자격 증명을 관리하지 않고도 Azure AD 토큰을 가져올 수 있습니다.

다음 비디오에서는 관리 ID를 사용하는 방법을 보여줍니다.

관리 ID를 사용하는 경우 얻을 수 있는 몇 가지 혜택은 다음과 같습니다.

  • 자격 증명을 관리할 필요가 없으며, 자격 증명에 액세스할 수도 없습니다.
  • 관리 ID를 사용하여 사용자 고유의 애플리케이션을 포함하여 Azure AD 인증을 지원하는 모든 리소스에 인증할 수 있습니다.
  • 관리 ID는 추가 비용 없이 사용할 수 있습니다.

참고

Azure 리소스에 대한 관리 ID는 이전에 MSI(관리 서비스 ID)로 알려진 서비스에 대한 새 이름입니다.

관리 ID 유형

두 가지 종류의 관리 ID가 있습니다.

  • 시스템이 할당. 일부 Azure 서비스를 사용하면 서비스 인스턴스에서 직접 관리 ID를 사용하도록 설정할 수 있습니다. 시스템이 할당한 관리 ID를 사용하도록 설정하면 Azure AD에 ID가 만들어집니다. ID는 해당 서비스 인스턴스의 수명 주기와 연결됩니다. 리소스가 삭제되면 Azure에서 자동으로 ID를 삭제합니다. 의도적으로 해당 Azure 리소스만 이 ID를 사용하여 Azure AD에서 토큰을 요청할 수 있습니다.
  • 사용자 할당. 관리 ID를 독립 실행형 Azure 리소스로 만들 수도 있습니다. 사용자가 할당한 관리 ID를 만들고, 이를 하나 이상의 Azure 서비스 인스턴스에 할당할 수 있습니다. 사용자가 할당한 관리 ID는 이를 사용하는 리소스와 별도로 관리됩니다.

다음 표에서는 두 가지 유형의 관리 ID 간의 차이점을 보여 줍니다.

속성 시스템 할당 관리 ID 사용자 할당 관리 ID
만들기 Azure 리소스(예: Azure Virtual Machines 또는 Azure App Service)의 일부로 생성됩니다. 독립 실행형 Azure 리소스로 생성됩니다.
수명 주기 관리 ID를 만드는 데 사용된 Azure 리소스와 공유되는 수명 주기입니다.
부모 리소스를 삭제하면 관리 ID도 삭제됩니다.
독립적인 수명 주기.
명시적으로 삭제되어야 합니다.
Azure 리소스 전체에서 공유 공유할 수 없습니다.
단일 Azure 리소스하고만 연결할 수 있습니다.
공유할 수 있습니다.
동일한 사용자 할당 관리 ID를 둘 이상의 Azure 리소스와 연결할 수 있습니다.
일반 사용 예 단일 Azure 리소스 내에 포함된 워크로드입니다.
독립적인 ID가 필요한 워크로드
예를 들어 단일 가상 머신에서 실행되는 애플리케이션
여러 리소스에서 실행되며 단일 ID를 공유할 수 있는 워크로드입니다.
프로비전 흐름에 보안 리소스 사전 승인이 필요한 워크로드입니다.
리소스가 자주 재활용되지만 권한이 알관적으로 유지되어야 하는 워크로드입니다.
예를 들어 여러 가상 머신이 동일한 리소스에 액세스해야 하는 워크로드가 있습니다.

중요

선택한 ID 유형에 관계없이 관리 ID는 Azure 리소스에만 사용할 수 있는 특수 유형의 서비스 주체입니다. 관리 ID가 삭제되면 해당하는 서비스 주체가 자동으로 제거됩니다.


Azure 리소스에 대한 관리 ID를 사용하는 방법

아래 단계에 따라 관리 ID를 사용할 수 있습니다.

  1. Azure에서 관리 ID를 만듭니다. 시스템 할당 관리 ID 또는 사용자 할당 관리 ID 중에서 선택할 수 있습니다.
  2. 사용자 할당 관리 ID를 사용하는 경우 Azure Logic App 또는 Azure Web App과 같은 "원본" Azure 리소스에 관리 ID를 할당합니다.
  3. 관리 ID에 "대상" 서비스에 대한 액세스 권한을 부여합니다.
  4. 관리 ID를 사용하여 리소스에 액세스합니다. 이 단계에서는 Azure.Identity 라이브러리와 함께 Azure SDK를 사용할 수 있습니다. 일부 "원본" 리소스는 연결에 관리 ID를 사용하는 방법을 알고 있는 커넥터를 제공합니다. 이 경우 "원본" 리소스의 기능으로 ID를 사용할 수 있습니다.

Azure 서비스에서 어떤 기능을 지원하나요?

Azure 리소스에 대한 관리 ID는 Azure AD 인증을 지원하는 서비스를 인증하는 데 사용할 수 있습니다. 지원되는 Azure 서비스 목록은 Azure 리소스에 대한 관리 ID를 지원하는 서비스를 참조하세요.

관리 ID를 사용하여 수행할 수 있는 작업은 무엇인가요?

시스템 할당 관리 ID를 지원하는 리소스를 통해 다음 작업을 수행할 수 있습니다.

  • 리소스 수준에서 관리 ID를 사용하거나 사용하지 않도록 설정합니다.
  • RBAC(역할 기반 액세스 제어)를 사용하여 권한을 부여합니다.
  • Azure 활동 로그에서 CRUD(만들기, 읽기, 업데이트, 삭제) 작업을 봅니다.
  • Azure AD 로그인 로그에서 로그인 활동을 봅니다.

대신 사용자 할당 관리 ID를 선택하는 경우:

Azure Resource Manager 템플릿, Azure Portal, Azure CLI, PowerShell 및 REST API를 사용하여 관리 ID에 대한 작업을 수행할 수 있습니다.

다음 단계