Contrôle d’appareil pour macOS
S’applique à :
- Microsoft Defender pour point de terminaison Plan 1
- Microsoft Defender pour point de terminaison Plan 2
- Microsoft Defender XDR
- Microsoft Defender pour les PME
Vous voulez découvrir Microsoft Defender pour point de terminaison ? Inscrivez-vous pour bénéficier d’un essai gratuit.
Configuration requise
Device Control pour macOS a les prérequis suivants :
- Microsoft Defender pour point de terminaison droit (peut être une version d’évaluation)
- Version minimale du système d’exploitation : macOS 11 ou version ultérieure
- Version minimale du produit : 101.34.20
Vue d’ensemble
Microsoft Defender pour point de terminaison fonctionnalité De contrôle d’appareil vous permet d’effectuer les fonctionnalités suivantes :
- Auditer, autoriser ou empêcher l’accès en lecture, écriture ou exécution au stockage amovible ; et
- Gérez les appareils iOS et portables, ainsi que les appareils chiffrés Apple APFS et les médias Bluetooth, avec ou sans exclusions.
Préparer vos points de terminaison
Microsoft Defender pour point de terminaison droit (peut être une version d’évaluation)
Version minimale du système d’exploitation : macOS 11 ou version ultérieure
Déployer l’accès au disque complet : vous l’avez peut-être déjà créé et déployé https://github.com/microsoft/mdatp-xplat/blob/master/macos/mobileconfig/profiles/fulldisk.mobileconfig pour d’autres fonctionnalités MDE. Vous devez accorder l’autorisation d’accès au disque complet pour une nouvelle application :
com.microsoft.dlp.daemon
.Activez le contrôle d’appareil sur le paramètre de préférence MDE :
Protection contre la perte de données (DLP)/Fonctionnalités/
Pour Nom de la fonctionnalité, entrez « DC_in_dlp ».
Pour État, entrez « enabled »
Exemple 1 : JAMF à l’aide de schema.json.
Exemple 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>
Version minimale du produit : 101.91.92 ou version ultérieure
Exécutez la version mdatp via terminal pour voir la version du produit sur votre ordinateur client :
Présentation des stratégies
Les stratégies déterminent le comportement du contrôle d’appareil pour macOS. La stratégie est ciblée via Intune ou JAMF à une collection de machines ou d’utilisateurs.
La stratégie Contrôle d’appareil pour macOS comprend des paramètres, des groupes et des règles :
- Le paramètre global appelé « settings » vous permet de définir l’environnement global.
- Le groupe appelé « groupes » vous permet de créer des groupes de médias. Par exemple, groupe USB autorisé ou groupe USB chiffré.
- La règle de stratégie d’accès appelée « règles » vous permet de créer une stratégie pour restreindre chaque groupe. Par exemple, autorisez uniquement l’utilisateur autorisé à écrire un groupe USB autorisé avec accès en écriture.
Remarque
Nous vous recommandons d’utiliser les exemples sur GitHub pour comprendre les propriétés : mdatp-devicecontrol/Amovible Storage Access Control Samples/macOS/policy at main - microsoft/mdatp-devicecontrol (github.com).
Vous pouvez également utiliser les scripts dans mdatp-devicecontrol/tree/main/python#readme à l’adresse main - microsoft/mdatp-devicecontrol (github.com) pour traduire la stratégie de contrôle d’appareil Windows en stratégie de contrôle d’appareil macOS ou traduire la stratégie contrôle d’appareil macOS V1 en cette stratégie V2.
Remarque
Il existe des problèmes connus avec le contrôle d’appareil pour macOS que les clients doivent prendre en compte lors de la création de stratégies.
Meilleures pratiques
Le contrôle d’appareil pour macOS offre des fonctionnalités similaires à celles du contrôle d’appareil pour Windows, mais macOS et Windows fournissent différentes fonctionnalités sous-jacentes pour gérer les appareils. Il existe donc des différences importantes :
- macOS n’a pas de Gestionnaire de périphériques ou de vue centralisée des appareils. L’accès est accordé/refusé aux applications qui interagissent avec les appareils. C’est pourquoi sur macOS, il existe un ensemble plus riche de types d’accès. Par exemple, sur un contrôle d’appareil
portableDevice
pour macOS peut refuser ou autoriserdownload_photos_from_device
. - Pour rester cohérent avec Windows, il existe
generic_read
des types d’accès etgeneric_write
generic_execute
. Les stratégies avec des types d’accès génériques n’ont pas besoin d’être modifiées si/quand des types d’accès spécifiques supplémentaires sont ajoutés à l’avenir. La meilleure pratique consiste à utiliser des types d’accès génériques, sauf s’il est nécessaire de refuser/autoriser une opération plus spécifique. - La création d’une
deny
stratégie à l’aide de types d’accès génériques est la meilleure façon de tenter de bloquer complètement toutes les opérations pour ce type d’appareil (par exemple, les téléphones Android), mais il peut toujours y avoir des lacunes si l’opération est effectuée à l’aide d’une application qui n’est pas prise en charge par le contrôle d’appareil macOS.
Paramètres
Voici les propriétés que vous pouvez utiliser lorsque vous créez les groupes, les règles et les paramètres dans la stratégie de contrôle d’appareil pour macOS.
Nom de la propriété | Description | Options |
---|---|---|
fonctionnalités | Configurations spécifiques aux fonctionnalités | Vous pouvez définir sur disable false ou true pour les fonctionnalités suivantes :- removableMedia - appleDevice - portableDevice , y compris l’appareil photo ou le support PTP- bluetoothDevice La valeur par défaut est true , donc si vous ne configurez pas cette valeur, elle ne s’applique pas même si vous créez une stratégie personnalisée pour removableMedia , car elle est désactivée par défaut. |
global | Définir l’application par défaut | Vous pouvez définir sur defaultEnforcement - allow (par défaut)- deny |
Ux | Vous pouvez définir un lien hypertexte sur la notification. |
navigationTarget: string . Exemple : "http://www.microsoft.com" |
Groupe
Nom de la propriété | Description | Options |
---|---|---|
$type |
Le type de groupe | « device » |
id |
GUID, un ID unique, représente le groupe et sera utilisé dans la stratégie. | Vous pouvez générer l’ID via New-Guid (Microsoft.PowerShell.Utility) - PowerShell ou la commande uuidgen sur macOS |
name |
Nom convivial du groupe. | string |
query |
La couverture médiatique sous ce groupe | Pour plus d’informations, consultez les tableaux de propriétés de requête ci-dessous. |
Requête
Device Control prend en charge deux types de requêtes :
Le type de requête 1 est le suivant :
Nom de la propriété | Description | Options |
---|---|---|
$type |
Identifier l’opération logique à effectuer sur les clauses |
all : tous les attributs sous les clauses sont une relation And . Par exemple, si l’administrateur place vendorId et serialNumber , pour chaque usb connecté, le système vérifie si l’USB répond aux deux valeurs.et : équivaut à tous les quelconque: Les attributs sous les clauses sont une relation Or . Par exemple, si l’administrateur place vendorId et serialNumber , pour chaque usb connecté, le système effectue la mise en œuvre tant que l’USB a une valeur ou serialNumber identiquevendorId . ou : équivaut à n’importe quel |
clauses |
Utilisez la propriété de périphérique multimédia pour définir la condition de groupe. | Tableau d’objets de clause évalués pour déterminer l’appartenance au groupe. Consultez la section Clause ci-dessous. |
Le type de requête 2 est le suivant :
Nom de la propriété | Description | Options |
---|---|---|
$type |
Identifier l’opération logique à effectuer sur la sous-requête | not : négation logique d’une requête |
query |
Une sous-requête | Requête qui sera annulée. |
Clause
Propriétés de clause
Nom de la propriété | Description | Options |
---|---|---|
$type |
Type de clause | Consultez le tableau suivant pour connaître les clauses prises en charge. |
value |
$type valeur spécifique à utiliser |
Clauses prises en charge
clause $type | valeur | Description |
---|---|---|
primaryId |
Au choix : - apple_devices - removable_media_devices - portable_devices - bluetooth_devices |
|
vendorId |
Chaîne hexadécimale à 4 chiffres | Correspond à l’ID de fournisseur d’un appareil |
productId |
Chaîne hexadécimale à 4 chiffres | Correspond à l’ID de produit d’un appareil |
serialNumber |
string | Correspond au numéro de série d’un appareil. Ne correspond pas si l’appareil n’a pas de numéro de série. |
encryption |
apfs | Correspond si un appareil est chiffré par apfs. |
groupId |
Chaîne UUID | Correspond si un appareil est membre d’un autre groupe. La valeur représente l’UUID du groupe à mettre en correspondance. Le groupe doit être défini dans la stratégie avant la clause . |
Règle de stratégie d’accès
Nom de la propriété | Description | Options |
---|---|---|
id |
GUID, un ID unique, représente la règle et sera utilisé dans la stratégie. | New-Guid (Microsoft.PowerShell.Utility) - PowerShell uuidgen |
name |
String, le nom de la stratégie et s’affichent sur le toast en fonction du paramètre de stratégie. | |
includeGroups |
Groupe(s) auquel la stratégie sera appliquée. Si plusieurs groupes sont spécifiés, la stratégie s’applique à n’importe quel média dans tous ces groupes. Si elle n’est pas spécifiée, la règle s’applique à tous les appareils. | La valeur id à l’intérieur du groupe doit être utilisée dans cette instance. Si plusieurs groupes se trouvent dans , includeGroups il s’agit de AND. "includeGroups": ["3f082cd3-f701-4c21-9a6a-ed115c28e217"] |
excludeGroups |
Groupe(s) auquel la stratégie ne s’applique pas. | La valeur id à l’intérieur du groupe doit être utilisée dans cette instance. Si plusieurs groupes se trouvent dans les excludeGroups, il s’agit de OR. |
entries |
Une règle peut avoir plusieurs entrées ; chaque entrée avec un GUID unique indique une restriction à Contrôle d’appareil. | Consultez le tableau des propriétés d’entrée plus loin dans cet article pour obtenir les détails. |
Le tableau suivant répertorie les propriétés que vous pouvez utiliser dans votre entrée :
Nom de la propriété | Description | Options |
---|---|---|
$type |
Inclus : - removableMedia - appleDevice - PortableDevice - bluetoothDevice - generic |
|
application |
-
$type :- allow - deny - auditAllow - auditDeny Lorsque $type autoriser est sélectionné, la valeur des options prend en charge : - disable_audit_allow Même si Autoriser se produit et que le paramètre auditAllow est configuré, le système n’envoie pas d’événement. Lorsque $type refuser est sélectionné, la valeur des options prend en charge : disable_audit_deny Même si Bloquer se produit et que le paramètre auditDeny est configuré, le système n’affiche pas l’événement de notification ou d’envoi. Lorsque $type auditAllow est sélectionné, la valeur des options prend en charge : send_event Lorsque $type auditDeny est sélectionné, la valeur des options prend en charge : send_event show_notification |
|
access |
Spécifiez un ou plusieurs droits d’accès pour cette règle. Il peut s’agir d’autorisations granulaires spécifiques à l’appareil ou d’autorisations génériques plus larges. Pour plus d’informations sur les types d’accès valides pour une entrée donnée $type, consultez le tableau ci-dessous. | |
id |
UUID |
Le tableau suivant répertorie les propriétés que vous pouvez utiliser dans l’entrée :
Application
Nom de la propriété d’application
Nom de la propriété | Description | Options |
---|---|---|
$type |
Type de mise en œuvre | Consultez le tableau ci-dessous pour connaître les applications prises en charge |
options |
$type valeur spécifique à utiliser | Tableau d’options pour l’entrée. Peut être omis si aucune option n’est souhaitée. |
Type d’application
Nom de la propriété | Description | Options |
---|---|---|
Enforcement $type |
options valeurs [string] |
Description |
allow |
disable_audit_allow |
Même si Autoriser se produit et que le paramètre auditAllow est configuré, le système n’envoie pas d’événement. |
deny |
disable_audit_deny |
Même si Bloquer se produit et que le paramètre auditDeny est configuré, le système n’affiche pas l’événement de notification ou d’envoi. |
auditAllow |
send_event |
Envoyer des données de télémétrie |
auditDeny |
- send_event - show_notification |
- Envoyer des données de télémétrie - Afficher l’expérience utilisateur de bloc à l’utilisateur |
Types d’accès
$type d’entrée | Valeurs 'access' [string] | Accès générique | Description |
---|---|---|---|
appleDevice | backup_device | generic_read | |
appleDevice | update_device | generic_write | |
appleDevice | download_photos_from_device | generic_read | télécharger la photo de l’appareil iOS spécifique sur l’ordinateur local |
appleDevice | download_files_from_device | generic_read | télécharger des fichiers à partir de l’appareil iOS spécifique vers l’ordinateur local |
appleDevice | sync_content_to_device | generic_write | synchroniser le contenu d’un ordinateur local vers un appareil iOS spécifique |
portableDevice | download_files_from_device | generic_read | |
portableDevice | send_files_to_device | generic_write | |
portableDevice | download_photos_from_device | generic_read | |
portableDevice | déboguer | generic_execute | Contrôle de l’outil ADB |
* removableMedia | read | generic_read | |
removableMedia | write | generic_write | |
removableMedia | exécuter | generic_execute | generic_read |
bluetoothDevice | download_files_from_device | ||
bluetoothDevice | send_files_to_device | generic_write | |
générique | generic_read | Équivaut à définir toutes les valeurs d’accès indiquées dans cette table qui correspondent à generic_read. | |
générique | generic_write | Équivaut à définir toutes les valeurs d’accès indiquées dans cette table qui correspondent à generic_write. | |
générique | generic_execute | Équivaut à définir toutes les valeurs d’accès indiquées dans cette table qui correspondent à generic_execute. |
Expérience de l’utilisateur final
Une fois que Refuser se produit et que la notification est activée dans la stratégie, l’utilisateur final voit une boîte de dialogue :
Statut
Utilisez mdatp health --details device_control
pour inspecter le status De contrôle d’appareil :
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
- version de fonctionnalité, vous devez voir ["v2"]. (Le contrôle d’appareil est activé, mais pas configuré.)- [] - Le contrôle d’appareil n’est pas configuré sur cet ordinateur.
- ["v1"] : vous utilisez une préversion de Device Control. Migrez vers la version 2 à l’aide de ce guide. La version v1 est considérée comme obsolète et n’est pas décrite dans cette documentation.
- ["v1 »,"v2"] : v1 et v2 sont activés. Désintégrer de la version 1.
-
v1_configured
- La configuration v1 est appliquée -
v1_enforcement_level
- quand v1 est activé -
v2_configured
- La configuration v2 est appliquée -
v2_state
- status v2,enabled
si elle fonctionne entièrement -
v2_sensor_connection
- sicreated_ok
, le contrôle d’appareil a établi la connexion à l’extension système -
v2_full_disk_access
- Si ce n’est pasapproved
le cas, le contrôle d’appareil ne peut pas empêcher une partie ou la totalité des opérations
Reporting
Vous pouvez voir l’événement de stratégie dans le rapport Repérage avancé et contrôle d’appareil. Pour plus d’informations, consultez Protéger les données de votre organization avec Device Control.
Scénarios
Voici quelques scénarios courants pour vous aider à vous familiariser avec Microsoft Defender pour point de terminaison et Microsoft Defender pour point de terminaison Contrôle d’appareil.
Scénario 1 : Refuser tout support amovible, mais autoriser des UBS spécifiques
Dans ce scénario, vous devez créer deux groupes : un groupe pour tout média amovible et un autre groupe pour un groupe de bases de données us approuvées. Vous devez également créer une règle de stratégie d’accès.
Étape 1 : Paramètres : activer le contrôle d’appareil et définir l’application par défaut
"settings": {
"features": {
"removableMedia": {
"disable": false
}
},
"global": {
"defaultEnforcement": "allow"
},
"ux": {
"navigationTarget": "http://www.deskhelp.com"
}
}
Étape 2 : Groupes : Créer n’importe quel groupe de supports amovibles et groupe approuvé-USBs
- Créez un groupe pour couvrir tous les périphériques multimédias amovibles.
- Créez un groupe pour les bases de données USB approuvées.
- Combinez ces groupes en un seul
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"
}
]
}
}
]
Étape 3 : Règles : Créer une stratégie de refus pour les bases de données usb non autorisées
Créez une règle de stratégie d’accès et placez dans 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"
]
}
]
}
]
Dans ce cas, ne disposez que d’une seule stratégie de règle d’accès, mais si vous en avez plusieurs, veillez à ajouter toutes les informations dans rules
.
Problèmes connus
Avertissement
Le contrôle d’appareil sur macOS limite les appareils Android connectés à l’aide du mode PTP uniquement. Le contrôle d’appareil ne restreint pas d’autres modes tels que le transfert de fichiers, la connexion USB et LE MIDI.
Avertissement
Le contrôle d’appareil sur macOS n’empêche pas le transfert des logiciels développés sur XCode vers un appareil externe.
Voir aussi
- Déployer device Control à l’aide de Intune
- Déployer le contrôle d’appareil à l’aide de JAMF
- Déployer le contrôle d’appareil manuellement
- Forum aux questions (FAQ) sur macOS Device Control
Conseil
Voulez-vous en savoir plus ? Engage avec la communauté Microsoft Security dans notre communauté technique : Microsoft Defender pour point de terminaison Tech Community.