macOS용 디바이스 제어
적용 대상:
- 엔드포인트용 Microsoft Defender 플랜 1
- 엔드포인트용 Microsoft Defender 플랜 2
- Microsoft Defender XDR
- 비즈니스용 Microsoft Defender
엔드포인트용 Microsoft Defender를 경험하고 싶으신가요? 무료 평가판을 신청하세요.
요구 사항
macOS용 디바이스 컨트롤에는 다음과 같은 필수 구성 요소가 있습니다.
- 엔드포인트용 Microsoft Defender 권한(평가판일 수 있음)
- 최소 OS 버전: macOS 11 이상
- 최소 제품 버전: 101.34.20
개요
엔드포인트용 Microsoft Defender 디바이스 제어 기능을 사용하면 다음을 수행할 수 있습니다.
- 이동식 스토리지에 대한 읽기, 쓰기 또는 실행 액세스를 감사, 허용 또는 차단합니다. 및
- 제외 여부에 관계없이 iOS 및 휴대용 디바이스 및 Apple APFS 암호화 디바이스 및 Bluetooth 미디어를 관리합니다.
엔드포인트 준비하기
엔드포인트용 Microsoft Defender 권한(평가판일 수 있음)
최소 OS 버전: macOS 11 이상
전체 디스크 액세스 배포: 이전에 다른 MDE 기능에 대해 이미 https://github.com/microsoft/mdatp-xplat/blob/master/macos/mobileconfig/profiles/fulldisk.mobileconfig 만들고 배포했을 수 있습니다. 새 애플리케이션
com.microsoft.dlp.daemon
에 대한 전체 디스크 액세스 권한을 부여해야 합니다.MDE 기본 설정에서 디바이스 제어를 사용하도록 설정합니다.
DLP(데이터 손실 방지)/기능/
기능 이름에 "DC_in_dlp"를 입력합니다.
상태의 경우 "enabled"를 입력합니다.
예제 1: schema.json 사용하는 JAMF
예제 2: demo.mobileconfig
<key>dlp</key>
<dict>
<key>features</key>
<array>
<dict>
<key>name</key>
<string>DC_in_dlp</string>
<key>state</key>
<string>enabled</string>
</dict>
</array>
</dict>
정책 이해
정책은 macOS에 대한 디바이스 제어의 동작을 결정합니다. 정책은 컴퓨터 또는 사용자 컬렉션에 대한 Intune 또는 JAMF를 통해 대상으로 지정됩니다.
macOS용 디바이스 제어 정책에는 설정, 그룹 및 규칙이 포함됩니다.
- '설정'이라는 전역 설정을 사용하면 전역 환경을 정의할 수 있습니다.
- 'groups'라는 그룹을 사용하면 미디어 그룹을 만들 수 있습니다. 예를 들어 권한이 부여된 USB 그룹 또는 암호화된 USB 그룹입니다.
- '규칙'이라는 액세스 정책 규칙을 사용하면 각 그룹을 제한하는 정책을 만들 수 있습니다. 예를 들어 권한 있는 사용자만 액세스 권한이 있는 USB 그룹을 작성하도록 허용합니다.
참고
gitHub의 예제를 사용하여 속성을 이해하는 것이 좋습니다. mdatp-devicecontrol/이동식 스토리지 Access Control 샘플/macOS/policy at 기본 - microsoft/mdatp-devicecontrol(github.com).
microsoft/mdatp-devicecontrol(github.com) 기본 mdatp-devicecontrol/tree/기본/python#readme의 스크립트를 사용하여 Windows 디바이스 제어 정책을 macOS 디바이스 제어 정책으로 변환하거나 macOS 디바이스 제어 V1 정책을 이 V2 정책으로 변환할 수도 있습니다.
참고
고객이 정책을 만들 때 고려해야 하는 macOS에 대한 디바이스 제어 와 관련된 알려진 문제가 있습니다.
모범 사례
macOS용 디바이스 컨트롤은 Windows용 디바이스 제어와 비슷한 기능을 가지고 있지만 macOS 및 Windows는 디바이스를 관리하는 다양한 기본 기능을 제공하므로 몇 가지 중요한 차이점이 있습니다.
- macOS에는 중앙 집중식 장치 관리자 또는 디바이스 보기가 없습니다. 디바이스와 상호 작용하는 애플리케이션에 액세스 권한이 부여되거나 거부됩니다. 이 때문에 macOS에는 다양한 액세스 유형 집합이 있습니다. 예를 들어 macOS용 디바이스 컨트롤에서 을
portableDevice
거부하거나 허용할download_photos_from_device
수 있습니다. - Windows와 일관성을 유지하기 위해 ,
generic_write
및generic_execute
액세스 유형이 있습니다generic_read
. 나중에 추가 특정 액세스 유형이 추가될 경우 일반 액세스 유형이 있는 정책을 변경할 필요가 없습니다. 더 구체적인 작업을 거부/허용해야 하는 특정한 필요가 없는 한 제네릭 액세스 유형을 사용하는 것이 가장 좋습니다. deny
일반 액세스 유형을 사용하여 정책을 만드는 것이 해당 유형의 디바이스(예: Android 휴대폰)에 대한 모든 작업을 완전히 차단하는 가장 좋은 방법이지만 macOS 디바이스 제어에서 지원되지 않는 애플리케이션을 사용하여 작업을 수행하는 경우에도 여전히 차이가 있을 수 있습니다.
Settings
macOS에 대한 디바이스 제어 정책에서 그룹, 규칙 및 설정을 만들 때 사용할 수 있는 속성은 다음과 같습니다.
속성 이름 | 설명 | 옵션 |
---|---|---|
기능 | 기능별 구성 | 다음 기능에 대해 false 또는 true로 설정할 disable 수 있습니다.- removableMedia - appleDevice - portableDevice 카메라 또는 PTP 미디어 포함- bluetoothDevice 기본값은 true 이므로 이 값을 구성하지 않으면 기본적으로 사용하지 않도록 설정되므로 에 대한 removableMedia 사용자 지정 정책을 만드는 경우에도 적용되지 않습니다. |
글로벌 | 기본 적용 설정 | 를 로 설정할 defaultEnforcement 수 있습니다.- allow (기본값)- deny |
Ux | 알림에서 하이퍼링크를 설정할 수 있습니다. | navigationTarget: string . 예: "http://www.microsoft.com" |
그룹
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
그룹의 종류 | "device" |
id |
고유 ID인 GUID는 그룹을 나타내며 정책에 사용됩니다. | New-Guid(Microsoft.PowerShell.Utility) - PowerShell 또는 macOS의 uuidgen 명령을 통해 ID를 생성할 수 있습니다. |
name |
그룹의 이름입니다. | 문자열 |
query |
이 그룹의 언론 보도 | 자세한 내용은 아래 쿼리 속성 표를 참조하세요. |
쿼리
Device Control은 두 가지 종류의 쿼리를 지원합니다.
쿼리 유형 1은 다음과 같습니다.
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
절에서 수행할 논리 작업 식별 | all: 절 아래의 모든 특성 은And 관계입니다. 예를 들어 관리자가 연결된 모든 USB에 및 serialNumber 를 배치 vendorId 하는 경우 시스템은 USB가 두 값을 모두 충족하는지 여부를 확인합니다.및: 는 모두와 동일합니다. any:절 아래의 특성은 Or 관계입니다. 예를 들어 관리자가 연결된 모든 USB에 및 를 배치 vendorId 하는 경우 USB가 동일 vendorId 하거나 serialNumber 값이 있는 한 시스템에서 적용을 수행serialNumber 합니다. 또는: 는 모든 항목과 동일합니다. |
clauses |
미디어 디바이스 속성을 사용하여 그룹 조건을 설정합니다. | 그룹 멤버 자격을 결정하기 위해 평가되는 절 개체의 배열입니다. 아래 절 섹션을 참조하세요. |
쿼리 유형 2는 다음과 같습니다.
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
하위 쿼리에서 수행할 논리 작업 식별 | not: 쿼리의 논리적 부정 |
query |
하위 쿼리 | 부정될 쿼리입니다. |
절
절 속성
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
절의 형식 | 지원되는 절은 다음 표를 참조하세요. |
value |
사용할 특정 값 $type |
지원되는 절
절 $type | 값 | 설명 |
---|---|---|
primaryId |
다음 중 하나 - apple_devices - removable_media_devices - portable_devices - bluetooth_devices |
|
vendorId |
4자리 16진수 문자열 | 디바이스의 공급업체 ID와 일치 |
productId |
4자리 16진수 문자열 | 디바이스의 제품 ID와 일치 |
serialNumber |
문자열 | 디바이스의 일련 번호와 일치합니다. 디바이스에 일련 번호가 없는 경우 일치하지 않습니다. |
encryption |
apfs | 디바이스가 apfs로 암호화된 경우 일치합니다. |
groupId |
UUID 문자열 | 디바이스가 다른 그룹의 구성원인 경우 일치합니다. 값은 일치시킬 그룹의 UUID를 나타냅니다. 절 전에 정책 내에서 그룹을 정의해야 합니다. |
액세스 정책 규칙
속성 이름 | 설명 | 옵션 |
---|---|---|
id |
고유 ID인 GUID는 규칙을 나타내며 정책에 사용됩니다. | New-Guid(Microsoft.PowerShell.Utility) - PowerShell uuidgen |
name |
문자열, 정책의 이름 및 는 정책 설정에 따라 알림에 표시됩니다. | |
includeGroups |
정책이 적용될 그룹입니다. 여러 그룹을 지정하는 경우 정책은 모든 그룹의 모든 미디어에 적용됩니다. 지정하지 않으면 규칙이 모든 디바이스에 적용됩니다. | 그룹 내의 ID 값은 이 instance 사용해야 합니다. 여러 그룹이 에 있는 includeGroups 경우 AND입니다. "includeGroups": ["3f082cd3-f701-4c21-9a6a-ed115c28e217"] |
excludeGroups |
정책이 적용되지 않는 그룹입니다. | 그룹 내의 ID 값은 이 instance 사용해야 합니다. 여러 그룹이 excludeGroups에 있는 경우 OR입니다. |
entries |
하나의 규칙에는 여러 항목이 있을 수 있습니다. 고유한 GUID가 있는 각 항목은 디바이스 제어에 하나의 제한을 알려줍니다. | 자세한 내용은 이 문서의 뒷부분에 있는 항목 속성 표를 참조하세요. |
다음 표에서는 항목에 사용할 수 있는 속성을 나열합니다.
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
포함 항목: - removableMedia - appleDevice - PortableDevice - bluetoothDevice - generic |
|
집행 | - $type :- allow - deny - auditAllow - auditDeny $type 허용을 선택하면 옵션 값이 다음을 지원합니다. - disable_audit_allow 허용이 발생하고 auditAllow가 구성된 경우에도 시스템은 이벤트를 보내지 않습니다. $type 거부를 선택하면 옵션 값이 다음을 지원합니다. disable_audit_deny 차단이 발생하고 auditDeny가 구성된 경우에도 시스템에서 알림을 표시하거나 이벤트를 보내지 않습니다. $type auditAllow를 선택하면 옵션 값이 다음을 지원합니다. send_event $type auditDeny를 선택하면 옵션 값이 다음을 지원합니다. send_event show_notification |
|
access |
이 규칙에 대해 하나 이상의 액세스 권한을 지정합니다. 여기에는 디바이스별 세분화된 권한 또는 더 광범위한 일반 권한이 포함될 수 있습니다. 지정된 항목 $type 대한 유효한 액세스 유형에 대한 자세한 내용은 아래 표를 참조하세요. | |
id |
Uuid |
다음 표에서는 항목에 사용할 수 있는 속성을 나열합니다.
집행
적용 속성 이름
속성 이름 | 설명 | 옵션 |
---|---|---|
$type |
적용 유형 | 지원되는 적용은 아래 표를 참조하세요. |
options |
사용할 특정 값 $type | 항목에 대한 옵션 배열입니다. 옵션이 없으면 생략할 수 있습니다. |
적용 유형
속성 이름 | 설명 | 옵션 |
---|---|---|
Enforcement $type |
options 값 [string] |
설명 |
allow |
disable_audit_allow |
허용이 발생하고 auditAllow가 구성된 경우에도 시스템은 이벤트를 보내지 않습니다. |
deny |
disable_audit_deny |
차단이 발생하고 auditDeny가 구성된 경우에도 시스템에서 알림을 표시하거나 이벤트를 보내지 않습니다. |
auditAllow |
send_event |
원격 분석 보내기 |
auditDeny |
- send_event - show_notification |
- 원격 분석 보내기 - 사용자에게 블록 UX 표시 |
액세스 유형
항목 $type | 'access' 값 [string] | 일반 액세스 | 설명 |
---|---|---|---|
appleDevice | backup_device | generic_read | |
appleDevice | update_device | generic_write | |
appleDevice | download_photos_from_device | generic_read | 특정 iOS 디바이스에서 로컬 컴퓨터로 사진 다운로드 |
appleDevice | download_files_from_device | generic_read | 특정 iOS 디바이스에서 로컬 컴퓨터로 파일 다운로드 |
appleDevice | sync_content_to_device | generic_write | 로컬 컴퓨터의 콘텐츠를 특정 iOS 디바이스로 동기화 |
portableDevice | download_files_from_device | generic_read | |
portableDevice | send_files_to_device | generic_write | |
portableDevice | download_photos_from_device | generic_read | |
portableDevice | 디버그 | generic_execute | ADB 도구 컨트롤 |
*removableMedia | 읽기 | generic_read | |
removableMedia | 쓰기 | generic_write | |
removableMedia | 실행 | generic_execute | generic_read |
bluetoothDevice | download_files_from_device | ||
bluetoothDevice | send_files_to_device | generic_write | |
일반 | generic_read | generic_read 매핑되는 이 테이블에 표시된 모든 액세스 값을 설정하는 것과 같습니다. | |
일반 | generic_write | generic_write 매핑되는 이 테이블에 표시된 모든 액세스 값을 설정하는 것과 같습니다. | |
일반 | generic_execute | generic_execute 매핑되는 이 테이블에 표시된 모든 액세스 값을 설정하는 것과 같습니다. |
최종 사용자 환경
거부가 발생하고 정책에서 알림을 사용하도록 설정하면 최종 사용자에게 대화 상자가 표시됩니다.
상태
디바이스 제어 상태 검사하는 데 사용합니다mdatp health --details device_control
.
active : ["v2"]
v1_configured : false
v1_enforcement_level : unavailable
v2_configured : true
v2_state : "enabled"
v2_sensor_connection : "created_ok"
v2_full_disk_access : "approved"
active
- 기능 버전에 ["v2"]가 표시됩니다. (디바이스 컨트롤은 사용하도록 설정되었지만 구성되지 않았습니다.)- [] - 디바이스 컨트롤이 이 컴퓨터에 구성되지 않았습니다.
- ["v1"] - 디바이스 컨트롤의 미리 보기 버전에 있습니다. 이 가이드를 사용하여 버전 2로 마이그레이션합니다. v1은 사용되지 않는 것으로 간주되며 이 설명서에 설명되어 있지 않습니다.
- ["v1","v2"] - v1과 v2를 모두 사용하도록 설정했습니다. v1에서 오프보딩합니다.
v1_configured
- v1 구성이 적용됨v1_enforcement_level
- v1을 사용하는 경우v2_configured
- v2 구성이 적용됨v2_state
- v2 상태(완전히 작동하는 경우)enabled
v2_sensor_connection
- 이면created_ok
디바이스 제어가 시스템 확장에 대한 연결을 설정했습니다.v2_full_disk_access
- 그렇지 않은approved
경우 디바이스 제어는 일부 또는 모든 작업을 방지할 수 없습니다.
보고
고급 헌팅 및 디바이스 제어 보고서에서 정책 이벤트를 볼 수 있습니다. 자세한 내용은 디바이스 제어를 사용하여 organization 데이터 보호를 참조하세요.
시나리오
다음은 엔드포인트용 Microsoft Defender 익숙해지고 디바이스 제어를 엔드포인트용 Microsoft Defender 데 도움이 되는 몇 가지 일반적인 시나리오입니다.
시나리오 1: 이동식 미디어를 거부하지만 특정 USB 허용
이 시나리오에서는 이동식 미디어에 대한 그룹 하나와 승인된 USB 그룹에 대한 다른 그룹이라는 두 개의 그룹을 만들어야 합니다. 또한 액세스 정책 규칙을 만들어야 합니다.
1단계: 설정: 디바이스 제어 사용 및 기본 적용 설정
"settings": {
"features": {
"removableMedia": {
"disable": false
}
},
"global": {
"defaultEnforcement": "allow"
},
"ux": {
"navigationTarget": "http://www.deskhelp.com"
}
}
2단계: 그룹: 이동식 미디어 그룹 및 승인된 USB 그룹 Create
- 이동식 미디어 디바이스를 포함하도록 그룹을 Create.
- 승인된 USB에 대한 그룹을 Create.
- 이러한 그룹을 하나의
groups
로 결합합니다.
"groups": [
{
"type": "device",
"id": "3f082cd3-f701-4c21-9a6a-ed115c28e211",
"name": "All Removable Media Devices",
"query": {
"$type": "all",
"clauses": [
{
"$type": "primaryId",
"value": "removable_media_devices"
}
]
}
},
{
"type": "device",
"id": "3f082cd3-f701-4c21-9a6a-ed115c28e212",
"name": "Kingston Devices",
"query": {
"$type": "all",
"clauses": [
{
"$type": "vendorId",
"value": "0951"
}
]
}
}
]
3단계: 규칙: 허용되지 않는 USB에 대한 Create 거부 정책
액세스 정책 규칙을 Create 에 넣습니다.rules
"rules": [
{
"id": "772cef80-229f-48b4-bd17-a69130092981",
"name": "Deny RWX to all Removable Media Devices except Kingston",
"includeGroups": [
"3f082cd3-f701-4c21-9a6a-ed115c28e211"
],
"excludeGroups": [
"3f082cd3-f701-4c21-9a6a-ed115c28e212"
],
"entries": [
{
"$type": "removableMedia",
"id": "A7CEE2F8-CE34-4B34-9CFE-4133F0361035",
"enforcement": {
"$type": "deny"
},
"access": [
"read",
"write",
"execute"
]
},
{
"$type": "removableMedia",
"id": "18BA3DD5-4C9A-458B-A756-F1499FE94FB4",
"enforcement": {
"$type": "auditDeny",
"options": [
"send_event",
"show_notification"
]
},
"access": [
"read",
"write",
"execute"
]
}
]
}
]
이 경우 하나의 액세스 규칙 정책만 있지만 여러 개의 액세스 규칙 정책이 있는 경우 모두 에 rules
추가해야 합니다.
알려진 문제
경고
macOS의 디바이스 제어는 PTP 모드 만 사용하여 연결된 Android 디바이스를 제한합니다. 디바이스 컨트롤은 파일 전송, USB 테더링 및 MIDI와 같은 다른 모드를 제한하지 않습니다.
참고 항목
팁
더 자세히 알아보고 싶으신가요? 기술 커뮤니티: 엔드포인트용 Microsoft Defender Tech Community의 Microsoft 보안 커뮤니티와 Engage.