Kontrola urządzenia dla systemu macOS
Dotyczy:
- Ochrona punktu końcowego w usłudze Microsoft Defender (plan 1)
- Ochrona punktu końcowego w usłudze Microsoft Defender (plan 2)
- Microsoft Defender XDR
- Microsoft Defender dla Firm
Chcesz poznać usługę ochrony punktu końcowego w usłudze Microsoft Defender? Utwórz konto, aby skorzystać z bezpłatnej wersji próbnej.
Wymagania
Kontrola urządzenia dla systemu macOS ma następujące wymagania wstępne:
- Ochrona punktu końcowego w usłudze Microsoft Defender uprawnienie (może być próbne)
- Minimalna wersja systemu operacyjnego: macOS 11 lub nowszy
- Minimalna wersja produktu: 101.34.20
Omówienie
funkcja Ochrona punktu końcowego w usłudze Microsoft Defender Device Control umożliwia:
- Inspekcja, zezwalanie na odczyt, zapis lub wykonywanie dostępu do magazynu wymiennego lub uniemożliwianie go; i
- Zarządzanie urządzeniami z systemem iOS i przenośnymi oraz urządzeniami zaszyfrowanymi za pomocą systemu Apple APFS i nośnikami Bluetooth z wykluczeniami lub bez nich.
Przygotowywanie punktów końcowych
Ochrona punktu końcowego w usłudze Microsoft Defender uprawnienie (może być próbne)
Minimalna wersja systemu operacyjnego: macOS 11 lub nowszy
Wdróż dostęp do pełnego dysku: być może wcześniej utworzono i wdrożono tę https://github.com/microsoft/mdatp-xplat/blob/master/macos/mobileconfig/profiles/fulldisk.mobileconfig funkcję dla innych funkcji MDE. Musisz przyznać uprawnienie pełnego dostępu do dysku dla nowej aplikacji:
com.microsoft.dlp.daemon
.Włącz kontrolę urządzenia w ustawieniu preferencji MDE:
Ochrona przed utratą danych (DLP)/Funkcje/
W polu Nazwa funkcji wprowadź "DC_in_dlp"
W polu State (Stan) wprowadź wartość "enabled" (Włączone)
Przykład 1: JAMF przy użyciu schema.json.
Przykład 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>
Minimalna wersja produktu: 101.91.92 lub nowsza
Uruchom wersję mdatp za pośrednictwem terminalu, aby wyświetlić wersję produktu na komputerze klienckim:
Omówienie zasad
Zasady określają zachowanie kontrolki urządzenia dla systemu macOS. Zasady są kierowane za pośrednictwem Intune lub JAMF do kolekcji maszyn lub użytkowników.
Zasady Device Control dla systemu macOS obejmują ustawienia, grupy i reguły:
- Ustawienie globalne o nazwie "settings" umożliwia zdefiniowanie środowiska globalnego.
- Grupa o nazwie "grupy" umożliwia tworzenie grup multimediów. Na przykład autoryzowana grupa USB lub zaszyfrowana grupa USB.
- Reguła zasad dostępu o nazwie "rules" umożliwia tworzenie zasad ograniczających każdą grupę. Na przykład zezwalaj tylko autoryzowanemu użytkownikowi na zapisywanie autoryzowanej grupy USB.
Uwaga
Zalecamy użycie przykładów w witrynie GitHub, aby poznać właściwości: mdatp-devicecontrol/Removable Storage Access Control Samples/macOS/policy at main — microsoft/mdatp-devicecontrol (github.com).
Możesz również użyć skryptów w witrynie mdatp-devicecontrol/tree/main/python#readme w katalogu głównym — microsoft/mdatp-devicecontrol (github.com), aby przetłumaczyć zasady kontroli urządzeń z systemem Windows na zasady kontroli urządzeń z systemem macOS lub przetłumaczyć zasady kontroli urządzeń z systemem macOS w wersji 1 na te zasady w wersji 2.
Uwaga
Istnieją znane problemy z kontrolą urządzenia dla systemu macOS, które klienci powinni wziąć pod uwagę podczas tworzenia zasad.
Najważniejsze wskazówki
Kontrola urządzenia dla systemu macOS ma podobne możliwości jak kontrola urządzenia dla systemu Windows, ale systemy macOS i Windows zapewniają różne podstawowe możliwości zarządzania urządzeniami, więc istnieją pewne istotne różnice:
- System macOS nie ma scentralizowanego Menedżer urządzeń ani widoku urządzeń. Dostęp jest udzielany/odmawiany aplikacjom, które wchodzą w interakcje z urządzeniami. Dlatego w systemie macOS istnieje bogatszy zestaw typów dostępu. Na przykład w kontrolce
portableDevice
urządzenia dla systemu macOS można odmówić lub zezwolić nadownload_photos_from_device
. - Aby zachować spójność z systemem Windows, istnieją
generic_read
typy dostępu igeneric_write
.generic_execute
Zasady z ogólnymi typami dostępu nie muszą być zmieniane, jeśli/gdy w przyszłości zostaną dodane dodatkowe określone typy dostępu. Najlepszym rozwiązaniem jest użycie ogólnych typów dostępu, chyba że istnieje określona potrzeba odmowy/zezwolenia na bardziej szczegółową operację. -
deny
Tworzenie zasad przy użyciu ogólnych typów dostępu jest najlepszym sposobem próby całkowitego zablokowania wszystkich operacji dla tego typu urządzenia (np. telefonów z systemem Android), ale nadal mogą występować luki, jeśli operacja jest wykonywana przy użyciu aplikacji, która nie jest obsługiwana przez kontrolę urządzenia z systemem macOS.
Ustawienia
Poniżej przedstawiono właściwości, których można użyć podczas tworzenia grup, reguł i ustawień w zasadach kontroli urządzeń dla systemu macOS.
Nazwa właściwości | Opis | Opcje |
---|---|---|
Funkcje | Konfiguracje specyficzne dla funkcji | Dla następujących funkcji można ustawić wartość disable false lub true:- removableMedia - appleDevice - portableDevice , w tym nośniki kamery lub ptp- bluetoothDevice Wartość domyślna to true , więc jeśli nie skonfigurujesz tej wartości, nie będzie ona stosowana nawet w przypadku utworzenia zasad niestandardowych dla removableMedia programu , ponieważ jest domyślnie wyłączona. |
globalny | Ustawianie domyślnego wymuszania | Możesz ustawić wartość defaultEnforcement na- allow (wartość domyślna)- deny |
Ux | Możesz ustawić hiperłącze w powiadomieniu. |
navigationTarget: string . Przykład: "http://www.microsoft.com" |
Grupa
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Rodzaj grupy | "urządzenie" |
id |
Identyfikator GUID, unikatowy identyfikator, reprezentuje grupę i będzie używany w zasadach. | Identyfikator można wygenerować za pomocą polecenia New-Guid (Microsoft.PowerShell.Utility) — PowerShell lub uuidgen w systemie macOS |
name |
Przyjazna nazwa grupy. | ciąg |
query |
Relacje medialne w ramach tej grupy | Aby uzyskać szczegółowe informacje, zobacz poniższe tabele właściwości zapytania . |
Zapytanie
Usługa Device Control obsługuje dwa rodzaje zapytań:
Typ zapytania 1 jest następujący:
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Identyfikowanie operacji logicznej do wykonania na klauzulach |
wszystkie: wszystkie atrybuty w ramach klauzul są relacją And . Na przykład, jeśli administrator umieszcza vendorId i serialNumber , dla każdego podłączonego USB, system sprawdza, czy usb spełnia obie wartości.i: jest równoważne wszystkim jakikolwiek: Atrybuty w ramach klauzul są lub relacji. Na przykład jeśli administrator umieszcza vendorId i serialNumber , dla każdego podłączonego USB, system wykonuje wymuszanie, o ile usb ma identyczną vendorId lub serialNumber wartość. lub: jest odpowiednikiem dowolnej |
clauses |
Użyj właściwości urządzenia multimedialnego, aby ustawić warunek grupy. | Tablica obiektów klauzuli, które są oceniane w celu określenia członkostwa w grupie. Zobacz sekcję Klauzula poniżej. |
Typ zapytania 2 jest następujący:
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Zidentyfikuj operację logiczną do wykonania w podpytaniu | not: negacja logiczna zapytania |
query |
Podpowiadanie | Zapytanie, które zostanie zanegowane. |
Klauzula
Właściwości klauzuli
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Typ klauzuli | Zapoznaj się z poniższą tabelą, aby uzyskać obsługiwane klauzule. |
value |
$type określoną wartość do użycia |
Obsługiwane klauzule
klauzula $type | wartość | Opis |
---|---|---|
primaryId |
Jeden z następujących elementów: - apple_devices - removable_media_devices - portable_devices - bluetooth_devices |
|
vendorId |
4-cyfrowy ciąg szesnastkowy | Dopasowuje identyfikator dostawcy urządzenia |
productId |
4-cyfrowy ciąg szesnastkowy | Dopasowuje identyfikator produktu urządzenia |
serialNumber |
ciąg | Dopasowuje numer seryjny urządzenia. Nie jest zgodne, jeśli urządzenie nie ma numeru seryjnego. |
encryption |
apfs | Dopasuj, jeśli urządzenie jest zaszyfrowane za pomocą apfs. |
groupId |
Ciąg UUID | Dopasuj, jeśli urządzenie jest członkiem innej grupy. Wartość reprezentuje identyfikator UUID grupy do dopasowania. Grupa musi być zdefiniowana w ramach zasad przed klauzulą. |
Reguła zasad dostępu
Nazwa właściwości | Opis | Opcje |
---|---|---|
id |
Identyfikator GUID, unikatowy identyfikator, reprezentuje regułę i będzie używany w zasadach. | New-Guid (Microsoft.PowerShell.Utility) — PowerShell uuidgen |
name |
Ciąg, nazwa zasad i będzie wyświetlana na wyskakujących elementach na podstawie ustawienia zasad. | |
includeGroups |
Grupy, do których zostaną zastosowane zasady. Jeśli określono wiele grup, zasady mają zastosowanie do dowolnego nośnika we wszystkich tych grupach. Jeśli nie zostanie określony, reguła ma zastosowanie do wszystkich urządzeń. | Wartość identyfikatora w grupie musi być używana w tym wystąpieniu. Jeśli w programie znajduje się includeGroups wiele grup, jest to wartość AND. "includeGroups": ["3f082cd3-f701-4c21-9a6a-ed115c28e217"] |
excludeGroups |
Grupy, do których zasady nie mają zastosowania. | Wartość identyfikatora w grupie musi być używana w tym wystąpieniu. Jeśli wiele grup znajduje się w grupie excludeGroups, jest to OR. |
entries |
Jedna reguła może zawierać wiele wpisów; Każdy wpis z unikatowym identyfikatorem GUID informuje kontrolkę urządzenia o jednym ograniczeniu. | Zobacz tabelę właściwości wpisu w dalszej części tego artykułu, aby uzyskać szczegółowe informacje. |
W poniższej tabeli wymieniono właściwości, których można użyć we wpisie:
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Uwzględnione funkcje: - removableMedia - appleDevice - PortableDevice - bluetoothDevice - generic |
|
egzekwowanie |
-
$type :- allow - deny - auditAllow - auditDeny Po wybraniu opcji zezwalaj $type wartość opcji obsługuje: - disable_audit_allow Nawet jeśli ustawienie Zezwalaj zostanie skonfigurowane, a ustawienie auditAllow zostanie skonfigurowane, system nie wyśle zdarzenia. Po wybraniu $type odmowy wartość opcji obsługuje: disable_audit_deny Nawet jeśli ustawienie Blokuj nastąpi i skonfigurowano ustawienie auditDeny , system nie wyświetli powiadomienia ani nie wyśle zdarzenia. Po wybraniu $type auditAllow wartość opcji obsługuje: send_event Po wybraniu $type auditDeny wartość opcji obsługuje: send_event show_notification |
|
access |
Określ co najmniej jedno prawo dostępu dla tej reguły. Mogą one obejmować szczegółowe uprawnienia specyficzne dla urządzenia lub szersze uprawnienia ogólne. Zobacz poniższą tabelę, aby uzyskać więcej szczegółów na temat prawidłowych typów dostępu dla danego wpisu $type. | |
id |
Identyfikator UUID |
W poniższej tabeli wymieniono właściwości, których można użyć we wpisie:
Egzekwowanie
Nazwa właściwości wymuszania
Nazwa właściwości | Opis | Opcje |
---|---|---|
$type |
Typ wymuszania | Zobacz poniższą tabelę, aby uzyskać obsługiwane wymuszania |
options |
$type określoną wartość do użycia | Tablica opcji dla wpisu. Można pominąć, jeśli nie są wymagane opcje. |
Typ wymuszania
Nazwa właściwości | Opis | Opcje |
---|---|---|
Enforcement $type |
options values [string] |
Opis |
allow |
disable_audit_allow |
Nawet jeśli ustawienie Zezwalaj zostanie skonfigurowane, a ustawienie auditAllow zostanie skonfigurowane, system nie wyśle zdarzenia. |
deny |
disable_audit_deny |
Nawet jeśli ustawienie Blokuj nastąpi i skonfigurowano ustawienie auditDeny, system nie wyświetli powiadomienia ani nie wyśle zdarzenia. |
auditAllow |
send_event |
Wysyłanie danych telemetrycznych |
auditDeny |
- send_event - show_notification |
— Wysyłanie danych telemetrycznych — Wyświetlanie użytkownika środowiska użytkownika bloku |
Typy dostępu
$type wpisu | Wartości "access" [string] | Dostęp ogólny | Opis |
---|---|---|---|
appleDevice | backup_device | generic_read | |
appleDevice | update_device | generic_write | |
appleDevice | download_photos_from_device | generic_read | pobieranie zdjęcia z określonego urządzenia z systemem iOS na komputer lokalny |
appleDevice | download_files_from_device | generic_read | pobieranie plików z określonego urządzenia z systemem iOS na komputer lokalny |
appleDevice | sync_content_to_device | generic_write | synchronizowanie zawartości z komputera lokalnego do określonego urządzenia z systemem iOS |
portableDevice | download_files_from_device | generic_read | |
portableDevice | send_files_to_device | generic_write | |
portableDevice | download_photos_from_device | generic_read | |
portableDevice | debugować | generic_execute | Kontrolka narzędzia usługi ADB |
* removableMedia | czytać | generic_read | |
removableMedia | pisać | generic_write | |
removableMedia | wykonać | generic_execute | generic_read |
bluetoothUrządzenia | download_files_from_device | ||
bluetoothUrządzenia | send_files_to_device | generic_write | |
rodzajowy | generic_read | Równoważne ustawieniu wszystkich wartości dostępu w tej tabeli, które mapują na generic_read. | |
rodzajowy | generic_write | Równoważne ustawieniu wszystkich wartości dostępu w tej tabeli, które mapują na generic_write. | |
rodzajowy | generic_execute | Równoważne ustawieniu wszystkich wartości dostępu w tej tabeli, które mapują na generic_execute. |
Środowisko użytkownika końcowego
Gdy nastąpi odmowa i powiadomienie zostanie włączone w zasadach, użytkownik końcowy zobaczy okno dialogowe:
Stan
Służy mdatp health --details device_control
do sprawdzania stanu kontroli urządzenia:
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
- wersja funkcji, powinna zostać wyświetlona wartość ["v2"]. (Kontrolka urządzenia jest włączona, ale nie skonfigurowana).- [] — kontrola urządzenia nie jest skonfigurowana na tym komputerze.
- ["v1"] — korzystasz z wersji zapoznawczej kontrolki urządzenia. Migracja do wersji 2 przy użyciu tego przewodnika. Wersja 1 jest uważana za przestarzałą i nie jest opisana w tej dokumentacji.
- ["v1","v2"] — masz włączone zarówno wersja 1, jak i wersja 2. Odłączanie od wersji 1.
-
v1_configured
— Zastosowano konfigurację w wersji 1 -
v1_enforcement_level
— po włączeniu wersji 1 -
v2_configured
— Zastosowano konfigurację w wersji 2 -
v2_state
— stan wersji 2,enabled
jeśli w pełni działa -
v2_sensor_connection
- jeślicreated_ok
, a następnie kontrola urządzenia nawiązane połączenie z rozszerzeniem systemu -
v2_full_disk_access
— jeśli nieapproved
, kontrola urządzenia nie może zapobiec niektórym lub wszystkim operacjom
Raportowanie
Zdarzenie zasad można wyświetlić w raporcie Zaawansowane wyszukiwanie zagrożeń i kontrola urządzeń. Aby uzyskać więcej informacji, zobacz Ochrona danych organizacji za pomocą funkcji Device Control.
Scenariuszy
Poniżej przedstawiono kilka typowych scenariuszy ułatwiających zapoznanie się z Ochrona punktu końcowego w usłudze Microsoft Defender i kontrolką urządzenia Ochrona punktu końcowego w usłudze Microsoft Defender.
Scenariusz 1. Odmów wszelkich nośników wymiennych, ale zezwalaj na określone bazy danych USB
W tym scenariuszu należy utworzyć dwie grupy: jedną dla dowolnego nośnika wymiennego, a drugą dla zatwierdzonej grupy USB. Musisz również utworzyć regułę zasad dostępu.
Krok 1. Ustawienia: włączanie kontroli urządzenia i ustawianie domyślnego wymuszania
"settings": {
"features": {
"removableMedia": {
"disable": false
}
},
"global": {
"defaultEnforcement": "allow"
},
"ux": {
"navigationTarget": "http://www.deskhelp.com"
}
}
Krok 2. Grupy: Utwórz dowolną grupę nośników wymiennych i grupę zatwierdzonych baz danych USB
- Utwórz grupę obejmującą wszystkie wymienne urządzenia multimedialne.
- Utwórz grupę dla zatwierdzonych obiektów USB.
- Połącz te grupy w jedną
groups
grupę .
"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"
}
]
}
}
]
Krok 3. Reguły: Tworzenie zasad odmowy dla niedozwolonych obiektów USB
Utwórz regułę zasad dostępu i umieść w :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"
]
}
]
}
]
W takim przypadku masz tylko jedną zasadę reguły dostępu, ale jeśli masz wiele, pamiętaj, aby dodać wszystko do rules
elementu .
Znane problemy
Ostrzeżenie
Kontrola urządzenia w systemie macOS ogranicza urządzenia z systemem Android połączone tylko w trybie PTP. Sterowanie urządzeniem nie ogranicza innych trybów, takich jak transfer plików, tethering USB i MIDI.
Ostrzeżenie
Kontrola urządzenia w systemie macOS nie uniemożliwia przenoszenia oprogramowania opracowanego na platformie XCode na urządzenie zewnętrzne.
Zobacz też
- Wdrażanie kontrolki urządzenia przy użyciu Intune
- Wdrażanie kontrolki urządzenia przy użyciu narzędzia JAMF
- Ręczne wdrażanie kontrolki urządzenia
- Często zadawane pytania dotyczące kontroli urządzeń z systemem macOS
Porada
Chcesz dowiedzieć się więcej? Engage ze społecznością microsoft security w naszej społeczności technicznej: Ochrona punktu końcowego w usłudze Microsoft Defender Tech Community.