다음을 통해 공유


MDM과 Microsoft Entra 통합

Microsoft Entra ID는 세계 최대의 엔터프라이즈 클라우드 ID 관리 서비스입니다. 조직에서 Microsoft 및 타사 SaaS(Software as a Service) 공급업체에서 Microsoft 365 및 비즈니스 애플리케이션에 액세스하는 데 사용됩니다. 조직 사용자(예: 스토어 액세스 또는 OS 상태 로밍)를 위한 다양한 Windows 환경은 Microsoft Entra ID를 기본 ID 인프라로 사용합니다. Windows는 Microsoft Entra ID와 통합되어 디바이스를 Microsoft Entra ID에 등록하고 통합 흐름에서 MDM(모바일 디바이스 관리)에 등록할 수 있습니다.

디바이스가 MDM에 등록되면 MDM:

  • 조직 정책 준수를 적용하고, 앱을 추가 또는 제거할 수 있습니다.
  • Microsoft Entra ID에서 디바이스의 규정 준수를 보고할 수 있습니다.
  • 정책을 준수하는 디바이스에 대해 Microsoft Entra ID로 보호되는 조직 리소스 또는 애플리케이션에 대한 액세스를 허용할 수 있습니다.

MDM 제품으로 이러한 풍부한 환경을 지원하기 위해 MDM 공급업체는 Microsoft Entra ID와 통합할 수 있습니다.

통합 MDM 등록 및 UX

디바이스를 Microsoft Entra ID에 연결하는 방법에는 여러 가지가 있습니다.

각 시나리오에서 Microsoft Entra는 사용자 및 디바이스를 인증합니다. MDM 등록에 사용할 수 있는 확인된 고유 디바이스 식별자를 제공합니다. 등록 흐름은 MDM 서비스가 웹 보기를 사용하여 자체 UI를 렌더링할 수 있는 기회를 제공합니다. MDM 공급업체는 UI를 사용하여 회사 소유 및 BYOD(Bring-Your-Own-Device) 디바이스에 대해 다를 수 있는 TOU(사용 약관)를 렌더링해야 합니다. MDM 공급업체는 웹 보기를 사용하여 일회성 PIN 요청과 같은 더 많은 UI 요소를 렌더링할 수도 있습니다.

Windows 10에서는 기본 제공 시나리오 중 웹 보기가 기본적으로 전체 화면으로 표시되어 MDM 공급업체에 원활한 에지 투 에지 사용자 환경을 만들 수 있는 기능을 제공합니다. 그러나 Windows 11에서는 웹 보기가 iframe 내에서 렌더링됩니다. Microsoft Entra ID와 통합되는 MDM 공급업체는 Windows 디자인 지침을 준수하는 것이 중요합니다. 이 단계에는 반응형 웹 디자인을 사용하고 Windows 접근성 지침을 준수하는 것이 포함됩니다. 예를 들어 탐색 논리에 올바르게 연결된 앞으로 및 뒤로 단추를 포함합니다. 자세한 내용은 이 문서의 뒷부분에 나와 있습니다.

Microsoft Entra 등록이 AD FS(Active Directory Federated Services)에서 지원되는 Microsoft Entra 계정에 대해 작동하려면 ADFS 서비스의 인트라넷에 대해 암호 인증을 사용하도록 설정해야 합니다. 자세한 내용은 AD FS를 사용하여 Microsoft Entra 다단계 인증을 인증 공급자로 구성을 참조하세요.

사용자에게 Microsoft Entra 계정이 Windows에 추가되고 MDM에 등록되면 설정> 계정액세스 회사 또는 학교를 통해 등록> 관리할 수 있습니다. 조직 시나리오 또는 BYOD 시나리오에 대한 Microsoft Entra 조인의 디바이스 관리는 비슷합니다.

참고

관리는 Microsoft Entra ID 또는 회사 계정에 연결되어 있으므로 Access 회사 또는 학교 사용자 인터페이스를 통해 디바이스 등록을 제거할 수 없습니다.

Microsoft Entra 통합 등록과 관련된 MDM 엔드포인트

Microsoft Entra MDM 등록은 2단계 프로세스입니다.

  1. 사용 약관 표시 및 사용자 동의 수집: 이 동의는 사용자가 브라우저 컨트롤(웹 보기)에서 MDM 사용 약관의 URL로 리디렉션되는 수동 흐름입니다.
  2. 디바이스 등록: 이 단계는 Windows OMA DM 에이전트가 MDM 서비스를 호출하여 디바이스를 등록하는 활성 흐름입니다.

Microsoft Entra 등록을 지원하려면 MDM 공급업체가 사용 약관 엔드포인트MDM 등록 엔드포인트를 호스트하고 노출해야 합니다.

  • 엔드포인트 사용 약관: 이 엔드포인트를 사용하여 조직에서 디바이스를 제어할 수 있는 방법을 사용자에게 알릴 수 있습니다. 사용 약관 페이지는 실제 등록 단계가 시작되기 전에 사용자의 동의를 수집해야 합니다.

    사용 약관 흐름이 Windows 및 Microsoft Entra ID에 대한 "불투명 상자"라는 것을 이해하는 것이 중요합니다. 전체 웹 보기는 사용 약관 URL로 리디렉션됩니다. 사용자는 약관을 승인하거나 거부한 후 다시 리디렉션되어야 합니다. 이 디자인을 통해 MDM 공급업체는 다양한 시나리오에 대해 사용 약관을 사용자 지정할 수 있습니다. 예를 들어 BYOD와 조직 소유 디바이스에 다른 수준의 제어가 적용됩니다. 또는 특정 지역의 사용자와 같이 사용자/그룹 기반 대상 지정을 구현하면 디바이스 관리 정책이 더 엄격할 수 있습니다.

    사용 약관 엔드포인트는 디바이스 등록을 제어하기 위해 IT에서 제공하는 일회성 PIN을 수집하는 등 더 많은 비즈니스 논리를 구현할 수 있습니다. 그러나 MDM 공급업체는 사용 약관 흐름을 사용하여 사용자 자격 증명을 수집해서는 안 되며, 이는 사용자 환경의 저하가 될 수 있습니다. MDM 통합의 일부로 인해 MDM 서비스가 Microsoft Entra ID에서 발급한 토큰을 이해할 수 있으므로 필요하지 않습니다.

  • MDM 등록 엔드포인트: 사용자가 사용 약관에 동의하면 디바이스가 Microsoft Entra ID에 등록됩니다. 자동 MDM 등록이 시작됩니다.

    다음 다이어그램에서는 실제 등록 프로세스와 관련된 상위 수준 흐름을 보여 줍니다. 디바이스가 먼저 Microsoft Entra ID에 등록됩니다. 이 프로세스는 디바이스에 고유한 디바이스 식별자를 할당하고 Microsoft Entra ID(디바이스 인증)로 자신을 인증할 수 있는 기능을 디바이스에 제공합니다. 그런 다음, 디바이스가 MDM을 사용하여 관리를 위해 등록됩니다. 이 단계에서는 등록 엔드포인트를 호출하고 사용자 및 디바이스에 대한 등록을 요청합니다. 이 시점에서 사용자가 인증되었고 디바이스가 Microsoft Entra ID로 등록 및 인증되었습니다. 이 정보는 등록 엔드포인트에 표시되는 액세스 토큰 내의 클레임 형식으로 MDM에서 사용할 수 있습니다.

    Microsoft Entra 등록 흐름

    MDM은 Microsoft Graph API를 사용하여 디바이스 규정 준수를 Microsoft Entra ID로 다시 보고할 때 디바이스(디바이스 ID)에 대한 이 정보를 사용해야 합니다. 디바이스 준수를 보고하기 위한 샘플은 이 문서의 뒷부분에 나와 있습니다.

MDM을 Microsoft Entra ID의 신뢰할 수 있는 파티로 만들기

이전 섹션에 설명된 통합 등록 흐름에 참여하려면 MDM이 Microsoft Entra ID에서 발급한 액세스 토큰을 사용해야 합니다. Microsoft Entra ID 준수를 보고하려면 MDM이 Microsoft Entra ID에 인증하고 Microsoft Graph API를 호출할 수 있는 액세스 토큰 형식으로 권한 부여를 받아야 합니다.

클라우드 기반 MDM

클라우드 기반 MDM은 클라우드에서 디바이스 관리 기능을 제공하는 SaaS 애플리케이션입니다. 다중 테넌트 애플리케이션입니다. 이 애플리케이션은 MDM 공급업체의 홈 테넌트에서 Microsoft Entra ID에 등록됩니다. IT 관리자가 이 MDM 솔루션을 사용하기로 결정하면 이 애플리케이션의 인스턴스가 고객의 테넌트에서 표시됩니다.

MDM 공급업체는 먼저 홈 테넌트에 애플리케이션을 등록하고 다중 테넌트 애플리케이션으로 표시해야 합니다. Microsoft Entra ID에 다중 테넌트 애플리케이션을 추가하는 방법에 대한 자세한 내용은 GitHub의 다중 테넌트 통합 패턴(SaaS) 코드 샘플을 사용하여 사용자를 인증하고 Microsoft Graph를 호출하는 앱 통합 을 참조하세요.

참고

MDM 공급자의 경우 관리하는 Microsoft Entra 구독이 있는 기존 Microsoft Entra 테넌트가 없는 경우 다음 단계별 가이드를 따릅니다.

MDM 애플리케이션은 키를 사용하여 Microsoft Entra ID에서 액세스 토큰을 요청합니다. 이러한 키는 MDM 공급자의 테넌트 내에서 관리되며 개별 고객에게는 표시되지 않습니다. 다중 테넌트 MDM 애플리케이션에서 관리 디바이스가 속한 고객 테넌트에서 동일한 키를 사용하여 Microsoft Entra ID로 인증합니다.

참고

통합이 작동하는지 인증하기 전에 모든 MDM 앱은 Microsoft Entra v2 토큰을 구현해야 합니다. Microsoft Entra 앱 플랫폼의 변경으로 인해 Microsoft Entra v2 토큰을 사용하는 것은 어려운 요구 사항입니다. 자세한 내용은 Microsoft ID 플랫폼 액세스 토큰을 참조하세요.

온-프레미스 MDM

온-프레미스 MDM 애플리케이션은 클라우드 MDM과 다릅니다. 고객의 테넌트 내에 고유하게 존재하는 단일 테넌트 애플리케이션입니다. 고객은 자신의 테넌트 내에서 직접 애플리케이션을 추가해야 합니다. 또한 온-프레미스 MDM 애플리케이션의 각 인스턴스는 별도로 등록해야 하며 Microsoft Entra ID를 사용한 인증을 위한 별도의 키가 있어야 합니다.

테넌트에서 온-프레미스 MDM 애플리케이션을 추가하려면 특히 모바일(MDM 및 MAM)>애플리케이션 추가사용자 고유의 애플리케이션 >만들기에서 Microsoft Entra 서비스를 사용합니다. 관리자는 등록 및 사용 약관에 필요한 URL을 구성할 수 있습니다.

온-프레미스 MDM 제품은 관리자가 해당 MDM 애플리케이션에 대해 해당 디렉터리에 구성된 클라이언트 ID, 앱 ID 및 키를 제공할 수 있는 구성 환경을 노출해야 합니다. 이 클라이언트 ID 및 키를 사용하여 디바이스 준수를 보고할 때 Microsoft Entra ID에서 토큰을 요청할 수 있습니다.

Microsoft Entra ID를 사용하여 애플리케이션을 등록하는 방법에 대한 자세한 내용은 Microsoft Entra ID에 애플리케이션 등록의 기본 사항을 참조하세요.

키 관리 및 보안 지침

MDM 서비스에서 사용하는 애플리케이션 키는 중요한 리소스입니다. 보안을 강화하기 위해 정기적으로 보호하고 롤오버해야 합니다. MICROSOFT Graph API를 호출하기 위해 MDM 서비스에서 가져온 액세스 토큰은 전달자 토큰이며 무단 공개를 방지하기 위해 보호되어야 합니다.

보안 모범 사례는 Microsoft Azure Security Essentials를 참조하세요.

클라우드 기반 MDM의 경우 고객 상호 작용 없이 애플리케이션 키를 롤오버할 수 있습니다. Microsoft Entra 테넌트의 MDM 공급업체에서 관리하는 모든 고객 테넌트에서 단일 키 집합이 있습니다.

온-프레미스 MDM의 경우 Microsoft Entra 인증 키는 고객 테넌트 내에 있으며 고객의 관리자는 키를 롤오버해야 합니다. 보안을 향상하려면 고객에게 키를 롤오버 및 보호하는 방법에 대한 지침을 제공합니다.

IT 관리자는 Microsoft Entra 앱 갤러리를 사용하여 조직에서 사용할 MDM을 추가합니다. 앱 갤러리는 Microsoft Entra ID와 통합된 2400개 이상의 SaaS 애플리케이션이 있는 풍부한 저장소입니다.

참고

MDM 애플리케이션이 클라우드 기반이고 다중 테넌트 MDM 애플리케이션으로 사용하도록 설정해야 하는 경우 Microsoft Entra 엔지니어링 팀과 협력해야 합니다.

애플리케이션을 게시하려면 Microsoft Entra 애플리케이션 갤러리에 애플리케이션을 게시하는 요청을 제출합니다.

다음 표에서는 Microsoft Entra 앱 갤러리에서 항목을 만드는 데 필요한 정보를 보여줍니다.

항목 설명
애플리케이션 ID 테넌트 내에서 구성된 MDM 앱의 클라이언트 ID입니다. 이 ID는 다중 테넌트 앱의 고유 식별자입니다.
게시자 앱의 게시자를 식별하는 문자열입니다.
애플리케이션 URL 관리자가 MDM 앱에 대한 자세한 정보를 얻을 수 있고 앱의 방문 페이지에 대한 링크를 포함하는 앱의 방문 페이지에 대한 URL입니다. 이 URL은 실제 등록에 사용되지 않습니다.
Description 255자 미만이어야 하는 MDM 앱에 대한 간략한 설명입니다.
아이콘 MDM 앱의 로고 아이콘 집합입니다. 차원: 45 X 45, 150 X 122, 214 X 215

앱 갤러리에 온-프레미스 MDM을 추가하기 위한 특별한 요구 사항은 없습니다. 관리자가 테넌트에서 앱을 추가할 수 있는 일반 항목이 있습니다.

그러나 키 관리는 온-프레미스 MDM과 다릅니다. 고객의 테넌트 내에서 MDM 앱에 할당된 클라이언트 ID(앱 ID) 및 키를 가져와야 합니다. ID 및 키는 Microsoft Graph API에 액세스하고 디바이스 준수를 보고하기 위한 권한 부여를 얻습니다.

테마

통합 등록 프로세스에서 MDM에서 렌더링하는 페이지는 Windows 템플릿을 사용해야 합니다(Windows 템플릿 및 CSS 파일 다운로드(1.1.4)). 이러한 템플릿은 모든 페이지가 에지-에지 HTML 페이지인 OOBE의 Microsoft Entra 조인 환경 중에 등록하는 데 중요합니다. 단추 배치를 올바르게 가져오기 어렵기 때문에 템플릿을 복사하지 마십시오.

다음과 같은 세 가지 시나리오가 있습니다.

  1. Windows OOBE에서 Microsoft Entra 조인의 일부로 MDM 등록
  2. 설정에서 Windows OOBE 이후 Microsoft Entra 조인의 일부로 MDM 등록
  3. 개인 디바이스(BYOD)에 Microsoft 회사 계정을 추가하는 과정의 일부로 MDM 등록.

이러한 시나리오는 Windows Pro, Enterprise 및 Education을 지원합니다.

Microsoft에서 제공하는 CSS 파일에는 버전 정보가 포함되어 있으며 최신 버전을 사용하는 것이 좋습니다. Windows 클라이언트 디바이스, OOBE 및 OOBE 이후 환경을 위한 별도의 CSS 파일이 있습니다. Windows 템플릿 및 CSS 파일(1.1.4)을 다운로드합니다.

  • Windows 10의 경우 oobe-desktop.css 사용합니다.
  • Windows 11의 경우 oobe-light.css

테마 사용

MDM 페이지는 표시되는 시나리오에 따라 미리 정의된 테마를 준수해야 합니다. 예를 들어 CXH-HOSTHTTP 헤더가 OOBE 시나리오인 FRX인 경우 페이지는 WinJS 파일 Ui-dark.css ver 4.0 및 ver 1.0.4를 사용하는 파란색 배경색 oobe-desktop.css의 어두운 테마를 지원해야 합니다.

CXH-HOST(HTTP 헤더) 시나리오 배경 테마 WinJS 시나리오 CSS
FRX OOBE 어두운 테마 + 파란색 배경색 파일 이름: Ui-dark.css 파일 이름: oobe-dekstop.css
MOSET 설정/OOBE 게시 밝은 테마 파일 이름: Ui-light.css 파일 이름: settings-desktop.css

사용 약관 프로토콜 의미 체계

MDM 서버는 사용 약관 엔드포인트를 호스트합니다. Microsoft Entra 조인 프로토콜 흐름 중에 Windows는 이 엔드포인트로 전체 페이지 리디렉션을 수행합니다. 이 리디렉션을 사용하면 MDM에서 적용되는 사용 약관을 표시할 수 있습니다. 사용자가 등록과 관련된 조건을 수락하거나 거부할 수 있습니다. 사용자가 약관에 동의하면 MDM은 등록 프로세스를 계속하기 위해 Windows로 다시 리디렉션됩니다.

사용 약관 엔드포인트로 리디렉션

이 리디렉션은 MDM에서 호스트하는 사용자 약관 엔드포인트로의 전체 페이지 리디렉션입니다. 예제 URL https://fabrikam.contosomdm.com/TermsOfUse은 다음과 같습니다.

다음 매개 변수는 쿼리 문자열에 전달됩니다.

항목 설명
redirect_uri 사용자가 사용 약관을 수락하거나 거부하면 사용자는 이 URL로 리디렉션됩니다.
client-request-id 진단 및 디버깅을 위해 로그를 상호 연결하는 데 사용되는 GUID입니다. 이 매개 변수를 사용하여 등록 요청의 상태를 기록하거나 추적하여 실패의 근본 원인을 찾을 수 있습니다.
api-version 클라이언트에서 요청한 프로토콜의 버전을 지정합니다. 이 값은 프로토콜의 버전 수정을 지원하는 메커니즘을 제공합니다.
mode mode=azureadjoin일 때 디바이스가 조직 소유임을 지정합니다. BYOD 디바이스에는 이 매개 변수가 없습니다.

액세스 토큰

Microsoft Entra ID는 전달자 액세스 토큰을 발급합니다. 토큰은 HTTP 요청의 권한 부여 헤더에 전달됩니다. 일반적인 형식은 다음과 같습니다.

권한 부여: 전달자 CI6MTQxmCF5xgu6yYcmV9ng6vhQfaJYw...

Windows에서 사용 약관 엔드포인트에 전달한 액세스 토큰에는 다음 클레임이 필요합니다.

항목 설명
개체 ID 인증된 사용자에 해당하는 사용자 개체의 식별자입니다.
UPN 인증된 사용자의 UPN(사용자 계정 이름)이 포함된 클레임입니다.
TID 테넌트 ID를 나타내는 클레임입니다. 이전 예제에서는 Fabrikam입니다.
리소스 MDM 애플리케이션을 나타내는 삭제된 URL입니다. 본보기: https://fabrikam.contosomdm.com

참고

현재 디바이스가 아직 등록되지 않았기 때문에 액세스 토큰에 디바이스 ID 클레임이 없습니다.

사용자의 그룹 멤버 자격 목록을 검색하려면 Microsoft Graph API를 사용할 수 있습니다.

예제 URL은 다음과 같습니다.

https://fabrikam.contosomdm.com/TermsOfUse?redirect_uri=ms-appx-web://ContosoMdm/ToUResponse&client-request-id=34be581c-6ebd-49d6-a4e1-150eff4b7213&api-version=1.0
Authorization: Bearer eyJ0eXAiOi

MDM은 액세스 토큰의 서명의 유효성을 검사하여 Microsoft Entra ID에서 발급되고 받는 사람이 적절한지 확인해야 합니다.

콘텐츠 사용 약관

MDM은 사용자에게 사용 약관 콘텐츠를 표시하기 전에 필요에 따라 다른 추가 리디렉션을 수행할 수 있습니다. 브라우저 컨트롤에서 최종 사용자에게 표시될 수 있도록 적절한 사용 약관 콘텐츠를 호출자(Windows)에게 반환해야 합니다.

사용 약관 콘텐츠에는 다음 단추가 포함되어야 합니다.

  • 수락 - 사용자가 사용 약관에 동의하고 등록을 진행합니다.
  • 거부 - 사용자가 등록 프로세스를 거부하고 중지합니다.

사용 약관 콘텐츠는 이 프로세스 중에 렌더링된 다른 페이지에 사용되는 테마와 일치해야 합니다.

엔드포인트 처리 논리 사용 약관

이 시점에서 사용자는 OOBE 또는 설정 환경 중에 표시된 사용 약관 페이지에 있습니다. 페이지에는 다음과 같은 옵션이 있습니다.

  • 사용자가 수락 단추를 클릭합니다 . MDM은 들어오는 요청에서 redirect_uri 매개 변수로 지정된 URI로 리디렉션해야 합니다. 다음 쿼리 문자열 매개 변수가 필요합니다.
    • IsAccepted - 이 부울 값은 필수이며 true로 설정해야 합니다.
    • OpaqueBlob - 사용자가 수락하는 경우 필수 매개 변수입니다. MDM은 이 Blob을 사용하여 등록 엔드포인트에서 일부 정보를 사용할 수 있도록 할 수 있습니다. 여기에 유지되는 값은 등록 엔드포인트에서 변경되지 않고 사용할 수 있습니다. MDM은 상관 관계 목적으로 이 매개 변수를 사용할 수 있습니다.
    • 다음은 리디렉션 예제입니다. ms-appx-web://MyApp1/ToUResponse?OpaqueBlob=value&IsAccepted=true
  • 사용자가 거부 단추를 클릭합니다 . - MDM은 들어오는 요청의 redirect_uri 지정된 URI로 리디렉션해야 합니다. 다음 쿼리 문자열 매개 변수가 필요합니다.
    • IsAccepted - 이 부울 값은 필수이며 false로 설정해야 합니다. 이 옵션은 사용자가 사용 약관을 건너뛴 경우에도 적용됩니다.
    • OpaqueBlob - 이 매개 변수는 사용되지 않을 것으로 예상됩니다. 사용자에게 표시되는 오류 메시지와 함께 등록이 중지됩니다.

사용자는 Microsoft 회사 계정을 디바이스에 추가할 때 사용 약관을 건너뜁니다. 그러나 Microsoft Entra 조인 프로세스 중에는 건너뛸 수 없습니다. Microsoft Entra 조인 프로세스에 거부 단추를 표시하지 마세요. Microsoft Entra 조인에 대한 관리자가 구성한 경우 사용자는 MDM 등록을 거부할 수 없습니다.

이 리디렉션 응답의 일부로 쿼리 문자열에 client-request-id 매개 변수를 보내는 것이 좋습니다.

사용 약관 오류 처리

사용 약관 처리 중에 오류가 발생하면 MDM은 리디렉션 요청의 및 매개 변수인 errorerror_description 매개 변수를 Windows로 다시 반환할 수 있습니다. URL을 인코딩해야 하며 의 error_description 내용은 영어 일반 텍스트여야 합니다. 이 텍스트는 최종 사용자에게 표시되지 않습니다. 따라서 텍스트의 지역화는 error_description 문제가 되지 않습니다.

URL 형식은 다음과 같습니다.

HTTP/1.1 302
Location:
<redirect_uri>?error=access_denied&error_description=Access%20is%20denied%2E

Example:
HTTP/1.1 302
Location: ms-appx-web://App1/ToUResponse?error=access_denied&error_description=Access%20is%20denied%2E

다음 표에서는 오류 코드를 보여 줍니다.

원인 HTTP 상태 오류 설명
api-version 302 invalid_request 지원되지 않는 버전
테넌트 또는 사용자 데이터가 없거나 디바이스 등록에 필요한 기타 필수 구성 요소가 충족되지 않음 302 unauthorized_client 권한이 없는 사용자 또는 테넌트
Microsoft Entra 토큰 유효성 검사 실패 302 unauthorized_client unauthorized_client
내부 서비스 오류 302 server_error 내부 서비스 오류

Microsoft Entra ID를 사용하는 등록 프로토콜

Azure 통합 MDM 등록을 사용하면 검색 단계가 없으며 검색 URL이 Azure에서 시스템으로 직접 전달됩니다. 다음 표에서는 기존 등록과 Azure 등록 간의 비교를 보여 줍니다.

세부 기존 MDM 등록 Microsoft Entra 조인(조직 소유 디바이스) Microsoft Entra ID는 회사 계정(사용자 소유 디바이스)을 추가합니다.
이메일 주소를 사용하여 MDM 검색 URL을 검색하는 MDM 자동 검색 등록 해당 없음
Azure에서 프로비전된 검색 URL
MDM 검색 URL 사용 등록
등록 갱신
ROBO
등록
등록 갱신
ROBO
등록
등록 갱신
ROBO
MDM 등록이 필요한가요? 아니오
사용자는 거절할 수 있습니다.
인증 유형 OnPremise
페더레이션
Certificate
페더레이션 페더레이션
EnrollmentPolicyServiceURL 선택 사항(모든 인증) 선택 사항(모든 인증) 선택 사항(모든 인증)
EnrollmentServiceURL 필수(모든 인증) 사용(모든 인증) 사용(모든 인증)
EnrollmentServiceURL에는 OS 버전, OS 플랫폼 및 MDM 검색 URL에서 제공하는 기타 특성이 포함됩니다. 권장되는 사항 권장되는 사항 권장되는 사항
AuthenticationServiceURL 사용 사용(페더레이션 인증) 건너뜁니다 건너뜁니다
BinarySecurityToken MDM당 사용자 지정 Microsoft Entra ID 발급 토큰 Microsoft Entra ID 발급 토큰
EnrollmentType 전체 장치 전체
등록된 인증서 유형 사용자 인증서 디바이스 인증서 사용자 인증서
등록된 인증서 저장소 내/사용자 My/System 내/사용자
CSR 주체 이름 사용자 계정 이름 디바이스 ID 사용자 계정 이름
EnrollmentData 이진 Blob을 EnrollmentServiceURL에 대한 AdditionalContext로 사용 약관 지원되지 않음 지원함 지원함
등록 중에 액세스할 수 있는 CSP Windows 10 지원:
- DMClient
- CertificateStore
- RootCATrustedCertificates
- ClientCertificateInstall
- EnterpriseModernAppManagement
- PassportForWork
-정책
- w7 APPLICATION

Microsoft Entra ID를 사용하는 관리 프로토콜

Microsoft Entra ID와 통합되고 Microsoft Entra 사용자 및 디바이스 ID를 사용하는 두 가지 MDM 등록 유형이 있습니다. 등록 유형에 따라 MDM 서비스는 단일 사용자 또는 여러 사용자를 관리해야 할 수 있습니다.

  • Microsoft Entra 조인 디바이스에 대한 여러 사용자 관리

    이 시나리오에서 MDM 등록은 Microsoft Entra 조인 디바이스에 로그인하는 모든 Microsoft Entra 사용자에게 적용됩니다. 이 등록 유형을 디바이스 등록 또는 다중 사용자 등록이라고 합니다. 관리 서버는 사용자 ID를 확인하고, 이 사용자의 대상이 되는 정책을 결정하고, 해당 정책을 디바이스에 보낼 수 있습니다. 관리 서버가 디바이스에 로그온된 현재 사용자를 식별할 수 있도록 OMA DM 클라이언트는 Microsoft Entra 사용자 토큰을 사용합니다. 각 관리 세션에는 Microsoft Entra 사용자 토큰이 포함된 추가 HTTP 헤더가 포함되어 있습니다. 이 정보는 관리 서버로 전송된 DM 패키지에 제공됩니다. 그러나 경우에 따라 Microsoft Entra 사용자 토큰이 관리 서버로 전송되지 않습니다. 이러한 시나리오 중 하나는 Microsoft Entra 조인 프로세스 중에 MDM 등록이 완료된 직후에 발생합니다. Microsoft Entra 조인 프로세스가 완료되고 Microsoft Entra 사용자가 컴퓨터에 로그인할 때까지 Microsoft Entra 사용자 토큰은 OMA-DM 프로세스에 사용할 수 없습니다. 일반적으로 MDM 등록은 Microsoft Entra 사용자가 머신에 로그인하기 전에 완료되며 초기 관리 세션에는 Microsoft Entra 사용자 토큰이 포함되지 않습니다. 관리 서버는 토큰이 누락되었는지 확인하고 이러한 경우 디바이스 정책만 보내야 합니다. OMA-DM 페이로드에서 누락된 Microsoft Entra 토큰의 또 다른 가능한 이유는 게스트가 디바이스에 로그온하는 경우입니다.

  • 디바이스에 회사 계정 및 MDM 등록 추가:

    이 시나리오에서 MDM 등록은 처음에 회사 계정을 추가하고 디바이스를 등록한 단일 사용자에게 적용됩니다. 이 등록 유형에서 관리 서버는 관리 세션 중에 전송될 수 있는 Microsoft Entra 토큰을 무시할 수 있습니다. Microsoft Entra 토큰이 있는지 여부와 관계없이 관리 서버는 사용자 및 디바이스 정책을 모두 디바이스로 보냅니다.

  • Microsoft Entra 사용자 토큰 평가:

    Microsoft Entra 토큰은 다음 형식의 HTTP 권한 부여 헤더에 있습니다.

    Authorization:Bearer <Azure AD User Token Inserted here>
    

    Microsoft Entra 토큰에는 다음과 같은 추가 클레임이 있을 수 있습니다.

    • 사용자 - 현재 로그인한 사용자
    • 디바이스 준수 - MDM 서비스를 Azure로 설정하는 값
    • 디바이스 ID - 체크 인하는 디바이스를 식별합니다.
    • 테넌트 ID

    Microsoft Entra ID에서 발급한 액세스 토큰은 JWT(JSON 웹 토큰)입니다. Windows는 등록 프로세스를 시작하기 위해 MDM 등록 엔드포인트에 유효한 JWT 토큰을 제공합니다. 토큰을 평가하는 몇 가지 옵션이 있습니다.

Microsoft Entra 사용자 토큰에 대한 디바이스 경고 1224

DM 세션이 시작되고 로그인한 Microsoft Entra 사용자가 있을 때 경고가 전송됩니다. 경고는 OMA DM 패키지 #1로 전송됩니다. 예를 들면 다음과 같습니다.

Alert Type: com.microsoft/MDM/AADUserToken

Alert sample:
<SyncBody>
 <Alert>
  <CmdID>1</CmdID>
  <Data>1224</Data>
  <Item>
   <Meta>
    <Type xmlns= "syncml:metinf ">com.microsoft/MDM/AADUserToken</Type>
   </Meta>
   <Data>UserToken inserted here</Data>
  </Item>
 </Alert>
 ... other XML tags ...
</SyncBody>

폴링을 통해 사용자가 로그인하는 시기 확인

경고는 DM 패키지 #1의 MDM 서버로 전송됩니다.

  • 경고 유형 - com.microsoft/MDM/LoginStatus
  • 경고 형식 - chr
  • 경고 데이터 - 현재 활성 로그인 사용자에 대한 로그인 상태 정보를 제공합니다.
    • Microsoft Entra 계정이 있는 로그인한 사용자 - 미리 정의된 텍스트: 사용자입니다.
    • Microsoft Entra 계정 없이 로그인한 사용자- 미리 정의된 텍스트: 기타.
    • 활성 사용자 없음 - 미리 정의된 텍스트:없음

예를 들면 다음과 같습니다.

<SyncBody>
 <Alert>
  <CmdID>1</CmdID>
  <Data>1224</Data>
  <Item>
   <Meta>
    <Type xmlns= "syncml:metinf ">com.microsoft/MDM/LoginStatus</Type>
   </Meta>
   <Data>user</Data>
  </Item>
 </Alert>
 ... other XML tags ...
</SyncBody>

Microsoft Entra ID에 디바이스 준수 보고

관리용 MDM에 디바이스가 등록되면 IT 관리자가 구성한 조직 정책이 디바이스에 적용됩니다. MDM은 구성된 정책의 디바이스 준수를 평가한 다음 Microsoft Entra ID에 보고합니다. 이 섹션에서는 디바이스 준수 상태를 Microsoft Entra ID에 보고하는 데 사용할 수 있는 Graph API 호출에 대해 설명합니다.

MDM이 OAuth 2.0 client_credentials 권한 부여 형식을 사용하여 액세스 토큰을 가져오는 방법을 보여 주는 샘플은 Daemon_CertificateCredential-DotNet을 참조하세요.

  • 클라우드 기반 MDM - 제품이 클라우드 기반 다중 테넌트 MDM 서비스인 경우 테넌트 내에서 서비스에 대해 단일 키를 구성했습니다. 권한 부여를 얻으려면 이 키를 사용하여 Microsoft Entra ID로 MDM 서비스를 인증합니다.
  • 온-프레미스 MDM - 제품이 온-프레미스 MDM인 경우 고객은 Microsoft Entra ID로 인증하는 데 사용되는 키를 사용하여 제품을 구성해야 합니다. 이 키 구성은 MDM 제품의 각 온-프레미스 인스턴스에 다른 테넌트별 키가 있기 때문입니다. 따라서 관리자가 Microsoft Entra ID로 인증하는 데 사용할 키를 지정할 수 있도록 MDM 제품에 구성 환경을 노출해야 할 수 있습니다.

Microsoft Graph API 사용

다음 샘플 REST API 호출은 MDM이 Microsoft Graph API를 사용하여 관리되는 디바이스의 준수 상태를 보고하는 방법을 보여 줍니다.

참고

이 API는 Windows 디바이스에서 승인된 MDM 앱에만 적용됩니다.

Sample Graph API Request:

PATCH https://graph.windows.net/contoso.com/devices/db7ab579-3759-4492-a03f-655ca7f52ae1?api-version=beta HTTP/1.1
Authorization: Bearer eyJ0eXAiO.........
Accept: application/json
Content-Type: application/json
{  "isManaged":true,
   "isCompliant":true
}

여기서

  • contoso.com - 이 값은 디바이스가 조인된 디렉터리에 대한 Microsoft Entra 테넌트 이름입니다.
  • db7ab579-3759-4492-a03f-655ca7f52ae1 - 이 값은 준수 정보가 Microsoft Entra ID에 보고되는 디바이스의 디바이스 식별자입니다.
  • eyJ0eXAiO......... - 이 값은 MDM에 Microsoft Graph API를 호출할 수 있는 권한을 부여하는 MDM에 Microsoft Entra ID에서 발급한 전달자 액세스 토큰입니다. 액세스 토큰은 요청의 HTTP 권한 부여 헤더에 배치됩니다.
  • isManagedisCompliant - 이러한 부울 특성은 규정 준수 상태를 나타냅니다.
  • api-version - 이 매개 변수를 사용하여 요청 중인 그래프 API 버전을 지정합니다.

응답:

  • 성공 - 콘텐츠가 없는 HTTP 204.
  • 오류/오류 - HTTP 404를 찾을 수 없습니다. 지정된 디바이스 또는 테넌트 를 찾을 수 없는 경우 이 오류가 반환될 수 있습니다.

Microsoft Entra 조인에서 등록 취소 중 데이터 손실

사용자가 Microsoft Entra 조인을 통해 MDM에 등록한 다음 등록의 연결을 끊으면 WIP(Windows Information Protection) 데이터가 손실된다는 경고는 없습니다. 연결 끊김 메시지는 WIP 데이터의 손실을 나타내지 않습니다.

aadj unenrollment.

오류 코드

코드 ID 오류 메시지
0x80180001 "idErrorServerConnectivity", // MENROLL_E_DEVICE_MESSAGE_FORMAT_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x80180002 "idErrorAuthenticationFailure", // MENROLL_E_DEVICE_AUTHENTICATION_ERROR 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180003 "idErrorAuthorizationFailure", // MENROLL_E_DEVICE_AUTHORIZATION_ERROR 이 사용자는 등록할 권한이 없습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180004 "idErrorMDMCertificateError", // MENROLL_E_DEVICE_CERTIFCATEREQUEST_ERROR 인증서 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180005 "idErrorServerConnectivity", // MENROLL_E_DEVICE_CONFIGMGRSERVER_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x80180006 "idErrorServerConnectivity", // MENROLL_E_DEVICE_CONFIGMGRSERVER_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x80180007 "idErrorAuthenticationFailure", // MENROLL_E_DEVICE_INVALIDSECURITY_ERROR 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180008 "idErrorServerConnectivity", // MENROLL_E_DEVICE_UNKNOWN_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x80180009 "idErrorAlreadyInProgress", // MENROLL_E_ENROLLMENT_IN_PROGRESS 또 다른 등록이 진행 중입니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x8018000A "idErrorMDMAlreadyEnrolled", // MENROLL_E_DEVICE_ALREADY_ENROLLED 이 디바이스가 이미 등록되어 있습니다. 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x8018000D "idErrorMDMCertificateError", // MENROLL_E_DISCOVERY_SEC_CERT_DATE_INVALID 인증서 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x8018000E "idErrorAuthenticationFailure", // MENROLL_E_PASSWORD_NEEDED 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x8018000F "idErrorAuthenticationFailure", // MENROLL_E_WAB_ERROR 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180010 "idErrorServerConnectivity", // MENROLL_E_CONNECTIVITY 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x80180012 "idErrorMDMCertificateError", // MENROLL_E_INVALIDSSLCERT 인증서 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180013 "idErrorDeviceLimit", // MENROLL_E_DEVICECAPREACHED 이 계정에 대한 디바이스 또는 사용자가 너무 많은 것 같습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x80180014 "idErrorMDMNotSupported", // MENROLL_E_DEVICENOTSUPPORTED 이 기능은 지원되지 않습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x80180015 "idErrorMDMNotSupported", // MENROLL_E_NOTSUPPORTED 이 기능은 지원되지 않습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x80180016 "idErrorMDMRenewalRejected", // MENROLL_E_NOTELIGIBLETORENEW 서버가 요청을 수락하지 않았습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180017 "idErrorMDMAccountMaintenance", // MENROLL_E_INMAINTENANCE 서비스가 유지 관리 중입니다. 나중에 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180018 "idErrorMDMLicenseError", // MENROLL_E_USERLICENSE 라이선스에 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x80180019 "idErrorInvalidServerConfig", // MENROLL_E_ENROLLMENTDATAINVALID 서버가 올바르게 구성되지 않은 것 같습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
"rejectedTermsOfUse" "idErrorRejectedTermsOfUse" 조직에서 사용 약관에 동의해야 합니다. 다시 시도하거나 지원 담당자에게 자세한 정보를 요청하세요.
0x801c0001 "idErrorServerConnectivity", // DSREG_E_DEVICE_MESSAGE_FORMAT_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x801c0002 "idErrorAuthenticationFailure", // DSREG_E_DEVICE_AUTHENTICATION_ERROR 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x801c0003 "idErrorAuthorizationFailure", // DSREG_E_DEVICE_AUTHORIZATION_ERROR 이 사용자는 등록할 권한이 없습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x801c0006 "idErrorServerConnectivity", // DSREG_E_DEVICE_INTERNALSERVICE_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x801c000B "idErrorUntrustedServer", // DSREG_E_DISCOVERY_REDIRECTION_NOT_TRUSTED 연락하는 서버는 신뢰할 수 없습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x801c000C "idErrorServerConnectivity", // DSREG_E_DISCOVERY_FAILED 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x801c000E "idErrorDeviceLimit", // DSREG_E_DEVICE_REGISTRATION_QUOTA_EXCCEEDED 이 계정에 대한 디바이스 또는 사용자가 너무 많은 것 같습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x801c000F "idErrorDeviceRequiresReboot", // DSREG_E_DEVICE_REQUIRES_REBOOT 디바이스 등록을 완료하려면 다시 부팅해야 합니다.
0x801c0010 "idErrorInvalidCertificate", // DSREG_E_DEVICE_AIK_VALIDATION_ERROR 잘못된 인증서가 있는 것 같습니다. 오류 코드를 {0}사용하여 시스템 관리자에게 문의하세요.
0x801c0011 "idErrorAuthenticationFailure", // DSREG_E_DEVICE_ATTESTATION_ERROR 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x801c0012 "idErrorServerConnectivity", // DSREG_E_DISCOVERY_BAD_MESSAGE_ERROR 서버와 통신하는 동안 오류가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드를 문의할 수 있습니다. {0}
0x801c0013 "idErrorAuthenticationFailure", // DSREG_E_TENANTID_NOT_FOUND 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.
0x801c0014 "idErrorAuthenticationFailure", // DSREG_E_USERSID_NOT_FOUND 계정 또는 디바이스를 인증하는 데 문제가 발생했습니다. 이 작업을 다시 시도하거나 시스템 관리자에게 오류 코드 {0}를 문의할 수 있습니다.