@@ -15,7 +15,7 @@ ms.collection:
15
15
ms.topic : conceptual
16
16
ms.subservice : macos
17
17
search.appverid : met150
18
- ms.date : 06/12/2024
18
+ ms.date : 01/31/2025
19
19
---
20
20
21
21
# Device Control for macOS
@@ -33,17 +33,15 @@ ms.date: 06/12/2024
33
33
34
34
## Requirements
35
35
36
- Device Control for macOS has the following prerequisites:
36
+ Device control for Mac has the following prerequisites:
37
37
38
- > [ !div class="checklist"]
39
- >
40
- > - Microsoft Defender for Endpoint entitlement (can be trial)
41
- > - Minimum OS version: macOS 11 or higher
42
- > - Minimum product version: 101.34.20
38
+ - Defender for Endpoint or Defender for Business licenses (can be a trial subscription)
39
+ - Minimum OS version: macOS 11 or higher
40
+ - Minimum product version: ` 101.34.20 `
43
41
44
42
## Overview
45
43
46
- Microsoft Defender for Endpoint Device Control feature enables you to:
44
+ Device control in Defender for Endpoint on macOS enables you to:
47
45
48
46
- Audit, allow, or prevent the read, write, or execute access to removable storage; and
49
47
- Manage iOS and Portable devices, and Apple APFS encrypted devices and Bluetooth media, with or without exclusions.
@@ -72,12 +70,12 @@ Example 2: [demo.mobileconfig](https://github.com/microsoft/mdatp-devicecontrol/
72
70
<dict >
73
71
<key >features</key >
74
72
<array >
75
- <dict >
76
- <key >name</key >
77
- <string >DC_in_dlp</string >
78
- <key >state</key >
79
- <string >enabled</string >
80
- </dict >
73
+ <dict >
74
+ <key >name</key >
75
+ <string >DC_in_dlp</string >
76
+ <key >state</key >
77
+ <string >enabled</string >
78
+ </dict >
81
79
</array >
82
80
</dict >
83
81
```
@@ -284,27 +282,27 @@ In this scenario, you need to create two groups: one group for any removable med
284
282
``` json
285
283
"settings" : {
286
284
287
- "features" : {
285
+ "features" : {
288
286
289
- "removableMedia" : {
287
+ "removableMedia" : {
290
288
291
- "disable" : false
289
+ "disable" : false
292
290
293
- }
291
+ }
294
292
295
- },
293
+ },
296
294
297
- "global" : {
295
+ "global" : {
298
296
299
- "defaultEnforcement" : " allow"
297
+ "defaultEnforcement" : " allow"
300
298
301
- },
299
+ },
302
300
303
- "ux" : {
301
+ "ux" : {
304
302
305
- "navigationTarget" : " http://www.deskhelp.com"
303
+ "navigationTarget" : " http://www.deskhelp.com"
306
304
307
- }
305
+ }
308
306
309
307
}
310
308
```
@@ -384,85 +382,85 @@ Create access policy rule and put into `rules`:
384
382
``` json
385
383
"rules" : [
386
384
387
- {
385
+ {
388
386
389
- "id" : " 772cef80-229f-48b4-bd17-a69130092981" ,
387
+ "id" : " 772cef80-229f-48b4-bd17-a69130092981" ,
390
388
391
- "name" : " Deny RWX to all Removable Media Devices except Kingston" ,
389
+ "name" : " Deny RWX to all Removable Media Devices except Kingston" ,
392
390
393
- "includeGroups" : [
391
+ "includeGroups" : [
394
392
395
- " 3f082cd3-f701-4c21-9a6a-ed115c28e211"
393
+ " 3f082cd3-f701-4c21-9a6a-ed115c28e211"
396
394
397
- ],
395
+ ],
398
396
399
- "excludeGroups" : [
397
+ "excludeGroups" : [
400
398
401
- " 3f082cd3-f701-4c21-9a6a-ed115c28e212"
399
+ " 3f082cd3-f701-4c21-9a6a-ed115c28e212"
402
400
403
- ],
401
+ ],
404
402
405
- "entries" : [
403
+ "entries" : [
406
404
407
- {
405
+ {
408
406
409
- "$type" : " removableMedia" ,
407
+ "$type" : " removableMedia" ,
410
408
411
- "id" : " A7CEE2F8-CE34-4B34-9CFE-4133F0361035" ,
409
+ "id" : " A7CEE2F8-CE34-4B34-9CFE-4133F0361035" ,
412
410
413
- "enforcement" : {
411
+ "enforcement" : {
414
412
415
- "$type" : " deny"
413
+ "$type" : " deny"
416
414
417
- },
415
+ },
418
416
419
- "access" : [
417
+ "access" : [
420
418
421
- " read" ,
419
+ " read" ,
422
420
423
- " write" ,
421
+ " write" ,
424
422
425
- " execute"
423
+ " execute"
426
424
427
- ]
425
+ ]
428
426
429
- },
427
+ },
430
428
431
- {
429
+ {
432
430
433
- "$type" : " removableMedia" ,
431
+ "$type" : " removableMedia" ,
434
432
435
- "id" : " 18BA3DD5-4C9A-458B-A756-F1499FE94FB4" ,
433
+ "id" : " 18BA3DD5-4C9A-458B-A756-F1499FE94FB4" ,
436
434
437
- "enforcement" : {
435
+ "enforcement" : {
438
436
439
- "$type" : " auditDeny" ,
437
+ "$type" : " auditDeny" ,
440
438
441
- "options" : [
439
+ "options" : [
442
440
443
- " send_event" ,
441
+ " send_event" ,
444
442
445
- " show_notification"
443
+ " show_notification"
446
444
447
- ]
445
+ ]
448
446
449
- },
447
+ },
450
448
451
- "access" : [
449
+ "access" : [
452
450
453
- " read" ,
451
+ " read" ,
454
452
455
- " write" ,
453
+ " write" ,
456
454
457
- " execute"
455
+ " execute"
458
456
459
- ]
457
+ ]
460
458
461
- }
459
+ }
462
460
463
- ]
461
+ ]
464
462
465
- }
463
+ }
466
464
467
465
]
468
466
```
0 commit comments