Enhetskontroll för macOS

Gäller för:

Vill du uppleva Microsoft Defender för Endpoint? Registrera dig för en kostnadsfri utvärderingsversion.

Krav

Enhetskontrollen för macOS har följande krav:

  • Microsoft Defender för Endpoint berättigande (kan vara utvärderingsversion)
  • Lägsta operativsystemversion: macOS 11 eller senare
  • Lägsta produktversion: 101.34.20

Översikt

med funktionen Microsoft Defender för Endpoint enhetskontroll kan du:

  • Granska, tillåta eller förhindra läs-, skriv- eller körningsåtkomst till flyttbar lagring. Och
  • Hantera iOS- och bärbara enheter samt Apple APFS-krypterade enheter och Bluetooth-media, med eller utan undantag.

Förbered dina slutpunkter

  • Microsoft Defender för Endpoint berättigande (kan vara utvärderingsversion)

  • Lägsta operativsystemversion: macOS 11 eller senare

  • Distribuera fullständig diskåtkomst: du kanske redan har skapat och distribuerat den tidigare https://github.com/microsoft/mdatp-xplat/blob/master/macos/mobileconfig/profiles/fulldisk.mobileconfig för andra MDE funktioner. Du måste bevilja fullständig diskåtkomstbehörighet för ett nytt program: com.microsoft.dlp.daemon.

  • Aktivera enhetskontroll i inställningen MDE inställning:

    • Dataförlustskydd (DLP)/funktioner/

    • För Funktionsnamn anger du "DC_in_dlp"

    • För Tillstånd anger du "aktiverad"

Exempel 1: JAMF med schema.json.

Skärmbild som visar hur du aktiverar enhetskontroll i Microsoft Defender för Endpoint dataförlustskydd/funktioner.

Exempel 2: [demo.mobileconfig](https://github.com/microsoft/mdatp-devicecontrol/blob/main/Removable%20Storage%20Access%20Control%20Samples/macOS/mobileconfig/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>
  • Lägsta produktversion: 101.91.92 eller senare

  • Kör mdatp-versionen via Terminal för att se produktversionen på klientdatorn:

    Skärmbild som visar resultatet när du kör mdatp-versionen i Terminal för att se produktversionen på en klientdator.

Förstå principer

Principer bestämmer beteendet för enhetskontroll för macOS. Principen riktas via Intune eller JAMF till en samling datorer eller användare.

Enhetskontrollen för macOS-principen innehåller inställningar, grupper och regler:

  • Med den globala inställningen "inställningar" kan du definiera den globala miljön.
  • Med gruppen "grupper" kan du skapa mediegrupper. Till exempel auktoriserad USB-grupp eller krypterad USB-grupp.
  • Med åtkomstprincipregeln "regler" kan du skapa en princip för att begränsa varje grupp. Tillåt till exempel endast behörig användare att skriva åtkomstauktoriserat USB-grupp.

Obs!

Vi rekommenderar att du använder exemplen på GitHub för att förstå egenskaperna: mdatp-devicecontrol/Removable Storage Access Control Samples/macOS/policy at main – microsoft/mdatp-devicecontrol (github.com).

Du kan också använda skripten på mdatp-devicecontrol/tree/main/python#readme på main – microsoft/mdatp-devicecontrol (github.com) för att översätta Principen för Windows-enhetskontroll till macOS Device Control-principen eller översätta macOS Device Control V1-principen till den här V2-principen.

Obs!

Det finns kända problem med enhetskontroll för macOS som kunderna bör överväga när de skapar principer.

Metodtips

Enhetskontrollen för macOS har liknande funktioner som enhetskontrollen för Windows, men macOS och Windows har olika underliggande funktioner för att hantera enheter, så det finns några viktiga skillnader:

  • macOS har ingen centraliserad Enhetshanteraren eller vy över enheter. Åtkomst beviljas/nekas till program som interagerar med enheter. Det är därför det finns en mer omfattande uppsättning åtkomsttyper på macOS. Till exempel kan en portableDevice enhetskontroll för macOS neka eller tillåta download_photos_from_device.
  • Det finns generic_readåtkomsttypergeneric_write och generic_execute för att hålla dig konsekvent med Windows. Principer med allmänna åtkomsttyper behöver inte ändras om/när ytterligare specifika åtkomsttyper läggs till i framtiden. Bästa praxis är att använda allmänna åtkomsttyper om det inte finns ett specifikt behov av att neka/tillåta en mer specifik åtgärd.
  • Att skapa en deny princip med hjälp av allmänna åtkomsttyper är det bästa sättet att försöka blockera alla åtgärder för den typen av enhet (t.ex. Android-telefoner), men det kan fortfarande finnas luckor om åtgärden utförs med hjälp av ett program som inte stöds av macOS-enhetskontroll.

Inställningar

Här är de egenskaper som du kan använda när du skapar grupper, regler och inställningar i enhetskontrollprincipen för macOS.

Egenskapsnamn Beskrivning Alternativ
Funktioner Funktionsspecifika konfigurationer Du kan ange disable falskt eller sant för följande funktioner:
- removableMedia
- appleDevice
- portableDevice, inklusive kamera- eller PTP-media
- bluetoothDevice

Standardvärdet är true, så om du inte konfigurerar det här värdet gäller det inte även om du skapar en anpassad princip för removableMedia, eftersom det är inaktiverat som standard.
Globala Ange standardtillämpning Du kan ange defaultEnforcement till
- allow (standard)
- deny
Ux Du kan ange en hyperlänk vid meddelande. navigationTarget: string. Exempel: "http://www.microsoft.com"

Grupp

Egenskapsnamn Beskrivning Alternativ
$type Typen av grupp "enhet"
id GUID, ett unikt ID, representerar gruppen och kommer att användas i principen. Du kan generera ID:t via New-Guid (Microsoft.PowerShell.Utility) – PowerShell eller uuidgen-kommandot på macOS
name Eget namn för gruppen. sträng
query Mediebevakningen under denna grupp Mer information finns i tabellerna för frågeegenskaper nedan.

Fråga

Device Control stöder två typer av frågor:

Frågetyp 1 är följande:

Egenskapsnamn Beskrivning Alternativ
$type Identifiera den logiska åtgärd som ska utföras på satserna alla: Alla attribut under satserna är en And-relation . Om administratören till exempel placerar vendorId och serialNumber, för varje ansluten USB, kontrollerar systemet om USB uppfyller båda värdena.
och: motsvarar alla
Någon: Attributen under satserna är Eller-relation . Om administratören till exempel placerar vendorId och serialNumber, för varje ansluten USB, gör systemet tvingande så länge USB har antingen ett identiskt vendorId eller serialNumber värde.
eller: motsvarar alla
clauses Använd medieenhetsegenskap för att ange gruppvillkor. En matris med satsobjekt som utvärderas för att fastställa gruppmedlemskap. Se avsnittet Clause (Sats ) nedan.

Frågetyp 2 är följande:

Egenskapsnamn Beskrivning Alternativ
$type Identifiera den logiska åtgärd som ska utföras i underfrågan inte: logisk negation av en fråga
query En underfråga En fråga som kommer att negeras.

Klausul

Satsegenskaper

Egenskapsnamn Beskrivning Alternativ
$type Typ av sats Se följande tabell för satser som stöds.
value $type specifikt värde som ska användas

Satser som stöds

-sats $type värde Beskrivning
primaryId Något av:
- apple_devices
- removable_media_devices
- portable_devices
- bluetooth_devices
vendorId 4-siffrig hexadecimal sträng Matchar en enhets leverantörs-ID
productId 4-siffrig hexadecimal sträng Matchar en enhets produkt-ID
serialNumber sträng Matchar en enhets serienummer. Matchar inte om enheten inte har ett serienummer.
encryption apfs Matcha om en enhet är apfs-krypterad.
groupId UUID-sträng Matcha om en enhet är medlem i en annan grupp. Värdet representerar UUID för gruppen som ska matchas mot.
Gruppen måste definieras i principen före -satsen.

Regel för åtkomstprincip

Egenskapsnamn Beskrivning Alternativ
id GUID, ett unikt ID, representerar regeln och kommer att användas i principen. New-Guid (Microsoft.PowerShell.Utility) – PowerShell
uuidgen
name Sträng, namnet på principen och visas i popup-fönstret baserat på principinställningen.
includeGroups De grupper som principen ska tillämpas på. Om flera grupper anges gäller principen för alla medier i alla dessa grupper. Om den inte anges gäller regeln för alla enheter. ID-värdet i gruppen måste användas i den här instansen. Om flera grupper finns i includeGroupsär det AND.
"includeGroups": ["3f082cd3-f701-4c21-9a6a-ed115c28e217"]
excludeGroups De grupper som principen inte gäller för. ID-värdet i gruppen måste användas i den här instansen. Om flera grupper finns i excludeGroups är det OR.
entries En regel kan ha flera poster. varje post med ett unikt GUID anger en begränsning för enhetskontroll. Mer information finns i tabellen med postegenskaper längre fram i den här artikeln.

I följande tabell visas de egenskaper som du kan använda i posten:

Egenskapsnamn Beskrivning Alternativ
$type Innehåller:
- removableMedia
- appleDevice
- PortableDevice
- bluetoothDevice
- generic
Verkställighet - $type:
- allow
- deny
- auditAllow
- auditDeny

När $type tillåt har valts stöder alternativvärdet:
- disable_audit_allow
Även om Tillåt inträffar och auditAllow har konfigurerats skickar systemet inte händelsen.

När $type neka har valts stöder alternativvärdet:
disable_audit_deny
Även om Blockera inträffar och inställningen auditDeny är konfigurerad visas inte aviserings- eller sändningshändelsen i systemet.

När $type auditAllow har valts stöder alternativvärdet:
send_event

När $type auditDeny har valts stöder alternativvärdet:
send_event
show_notification
access Ange en eller flera åtkomsträttigheter för den här regeln. Dessa kan omfatta antingen enhetsspecifika detaljerade behörigheter eller bredare allmänna behörigheter. Se tabellen nedan för mer information om giltiga åtkomsttyper för en viss post $type.
id UUID

I följande tabell visas de egenskaper som du kan använda i posten:

Verkställighet

Namn på tvingande egenskap

Egenskapsnamn Beskrivning Alternativ
$type Typ av tillämpning Se tabellen nedan för tvingande åtgärder som stöds
options $type specifikt värde som ska användas En matris med alternativ för posten. Kan utelämnas om inte alternativ önskas.

Tillämpningstyp

Egenskapsnamn Beskrivning Alternativ
Enforcement $type options värden [sträng] Beskrivning
allow disable_audit_allow Även om Tillåt inträffar och auditAllow har konfigurerats skickar systemet inte händelsen.
deny disable_audit_deny Även om Blockera inträffar och inställningen auditDeny är konfigurerad visas inte aviserings- eller sändningshändelsen i systemet.
auditAllow send_event Skicka telemetri
auditDeny - send_event
- show_notification
– Skicka telemetri
– Visa block-UX för användare

Åtkomsttyper

post $type "access"-värden [sträng] Allmän åtkomst Beskrivning
appleDevice backup_device generic_read
appleDevice update_device generic_write
appleDevice download_photos_from_device generic_read ladda ned foto från den specifika iOS-enheten till den lokala datorn
appleDevice download_files_from_device generic_read ladda ned filer från den specifika iOS-enheten till den lokala datorn
appleDevice sync_content_to_device generic_write synkronisera innehåll från en lokal dator till en specifik iOS-enhet
portableDevice download_files_from_device generic_read
portableDevice send_files_to_device generic_write
portableDevice download_photos_from_device generic_read
portableDevice Debug generic_execute ADB-verktygskontroll
*removableMedia Läsa generic_read
removableMedia Skriva generic_write
removableMedia Utföra generic_execute generic_read
bluetoothEnhet download_files_from_device
bluetoothEnhet send_files_to_device generic_write
Generiska generic_read Motsvarar att ange alla åtkomstvärden som anges i den här tabellen som mappas till generic_read.
Generiska generic_write Motsvarar att ange alla åtkomstvärden som anges i den här tabellen som mappas till generic_write.
Generiska generic_execute Motsvarar att ange alla åtkomstvärden som anges i den här tabellen som mappas till generic_execute.

Slutanvändarupplevelse

När Neka inträffar och meddelandet har aktiverats i principen ser slutanvändaren en dialogruta:

Skärmbild som visar en dialogruta för enhetskontroll som anger att USB-enheten är begränsad

Status

Använd mdatp health --details device_control för att kontrollera enhetens kontrollstatus:

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 - funktionsversion bör du se ["v2"]. (Enhetskontroll är aktiverat men inte konfigurerat.)
    • [] – Enhetskontrollen har inte konfigurerats på den här datorn.
    • ["v1"] – Du har en förhandsversion av Enhetskontroll. Migrera till version 2 med hjälp av den här guiden. v1 anses vara föråldrad och beskrivs inte i den här dokumentationen.
    • ["v1","v2"] – Du har både v1 och v2 aktiverat. Avregistrera från v1.
  • v1_configured – v1-konfigurationen tillämpas
  • v1_enforcement_level – när v1 är aktiverat
  • v2_configured – v2-konfigurationen tillämpas
  • v2_state - v2-status, enabled om den fungerar fullt ut
  • v2_sensor_connection – om created_ok, upprättade enhetskontrollen anslutningen till systemtillägget
  • v2_full_disk_access – om inte approvedkan enhetskontrollen inte förhindra vissa eller alla åtgärder

Rapportering

Du kan se principhändelsen i rapporten Avancerad jakt och Enhetskontroll. Mer information finns i Skydda organisationens data med enhetskontroll.

Scenarier

Här följer några vanliga scenarier som hjälper dig att bekanta dig med Microsoft Defender för Endpoint och Microsoft Defender för Endpoint Device Control.

Scenario 1: Neka flyttbara medier men tillåt specifika USB:er

I det här scenariot måste du skapa två grupper: en grupp för flyttbara medier och en annan grupp för godkända USBs-grupper. Du måste också skapa en regel för åtkomstprincip.

Steg 1: Inställningar: Aktivera enhetskontroll och ange standardtillämpning

"settings": { 

	"features": { 

		"removableMedia": { 

			"disable": false 

		} 

	}, 

	"global": { 

		"defaultEnforcement": "allow" 

	}, 

	"ux": { 

		"navigationTarget": "http://www.deskhelp.com" 

	} 

} 

Steg 2: Grupper: Skapa alla flyttbara mediegrupper och godkända USBs-grupper

  1. Skapa en grupp för att täcka flyttbara medieenheter.
  2. Skapa en grupp för godkända USB:er.
  3. Kombinera dessa grupper till en 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" 

                    } 

                ] 

            } 

        } 

    ] 

Steg 3: Regler: Skapa Neka policy för otillåtna USB:er

Skapa åtkomstprincipregel och placeras i 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" 

				] 

			} 

		] 

	} 

] 

I det här fallet har du bara en princip för åtkomstregler, men om du har flera måste du lägga till alla i rules.

Kända problem

Varning

I macOS Sonoma 14.3.1 gjorde Apple en ändring i hanteringen av Bluetooth-enheter som påverkar Defender för Endpoint-enhetskontrollers förmåga att fånga upp och blockera åtkomst till Bluetooth-enheter. För närvarande är den rekommenderade lösningen att använda en version av macOS som är mindre än 14.3.1.

Varning

Enhetskontroll på macOS begränsar endast Android-enheter som är anslutna med PTP-läge. Enhetskontrollen begränsar inte andra lägen som filöverföring, USB-tjudning och MIDI.

Se även

Tips

Vill du veta mer? Engage med Microsofts säkerhetscommunity i vår Tech Community: Microsoft Defender för Endpoint Tech Community.