Controle de dispositivo para macOS
Aplica-se a:
- Plano 1 do Microsoft Defender para Ponto de Extremidade
- Plano 2 do Microsoft Defender para Ponto de Extremidade
- Microsoft Defender XDR
- Microsoft Defender para Empresas
Deseja experimentar o Microsoft Defender para Ponto de Extremidade? Inscreva-se para uma avaliação gratuita.
Requisitos
O Controle de Dispositivo para macOS tem os seguintes pré-requisitos:
- Microsoft Defender para Ponto de Extremidade direito (pode ser julgado)
- Versão mínima do sistema operacional: macOS 11 ou superior
- Versão mínima do produto: 101.34.20
Visão Geral
Microsoft Defender para Ponto de Extremidade recurso controle de dispositivo permite que você:
- Auditar, permitir ou impedir a leitura, gravação ou executar o acesso ao armazenamento removível; E
- Gerencie dispositivos iOS e portáteis e dispositivos criptografados do Apple APFS e mídia Bluetooth, com ou sem exclusões.
Preparar seus pontos de extremidade
Microsoft Defender para Ponto de Extremidade direito (pode ser julgado)
Versão mínima do sistema operacional: macOS 11 ou superior
Implantar o Acesso Completo ao Disco: talvez você já tenha criado e implantado isso https://github.com/microsoft/mdatp-xplat/blob/master/macos/mobileconfig/profiles/fulldisk.mobileconfig anteriormente para outros recursos MDPE. Você precisa conceder permissão de Acesso total ao disco para um novo aplicativo:
com.microsoft.dlp.daemon
.Habilitar o Controle de Dispositivo na configuração preferência do MDPE:
Prevenção contra perda de dados (DLP)/Recursos/
Para Nome do Recurso, insira "DC_in_dlp"
Para Estado, insira "habilitado"
Exemplo 1: JAMF usando schema.json.
Exemplo 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>
Versão mínima do produto: 101.91.92 ou superior
Execute a versão mdatp por meio do Terminal para ver a versão do produto no computador cliente:
Entender políticas
As políticas determinam o comportamento do controle de dispositivo para macOS. A política é direcionada por meio de Intune ou JAMF para uma coleção de computadores ou usuários.
A política Controle de Dispositivo para macOS inclui configurações, grupos e regras:
- A configuração global chamada "configurações" permite que você defina o ambiente global.
- O grupo chamado "grupos" permite que você crie grupos de mídia. Por exemplo, grupo USB autorizado ou grupo USB criptografado.
- A regra de política de acesso chamada "regras" permite que você crie uma política para restringir cada grupo. Por exemplo, permita apenas que o usuário autorizado escreva um grupo USB autorizado pelo acesso.
Observação
É recomendável usar os exemplos no GitHub para entender as propriedades: mdatp-devicecontrol/Removable Storage Controle de Acesso Samples/macOS/policy em main - microsoft/mdatp-devicecontrol (github.com).
Você também pode usar os scripts em mdatp-devicecontrol/tree/main/python#readme em main - microsoft/mdatp-devicecontrol (github.com) para traduzir a política de Controle de Dispositivo do Windows para a política de Controle de Dispositivo macOS ou traduzir a política de Controle de Dispositivo V1 do macOS para esta política V2.
Observação
Há problemas conhecidos com o controle de dispositivo para macOS que os clientes devem considerar ao criar políticas.
Práticas recomendadas
O controle de dispositivo para macOS tem recursos semelhantes ao controle de dispositivo para Windows, mas o macOS e o Windows fornecem recursos subjacentes diferentes para gerenciar dispositivos, portanto, há algumas diferenças importantes:
- O macOS não tem um Gerenciador de Dispositivos centralizado ou uma exibição de dispositivos. O acesso é concedido/negado a aplicativos que interagem com dispositivos. É por isso que no macOS há um conjunto mais rico de tipos de acesso. Por exemplo, em um
portableDevice
controle de dispositivo para macOS pode negar ou permitirdownload_photos_from_device
. - Para se manter consistente com o Windows, há
generic_read
tipos de acesso egeneric_execute
.generic_write
As políticas com tipos de acesso genéricos não precisam ser alteradas se/quando tipos de acesso específicos adicionais forem adicionados no futuro. A melhor prática é usar tipos de acesso genéricos, a menos que haja uma necessidade específica de negar/permitir uma operação mais específica. - Criar uma
deny
política usando tipos de acesso genéricos é a melhor maneira de tentar bloquear completamente todas as operações para esse tipo de dispositivo (por exemplo, telefones Android), mas ainda pode haver lacunas se a operação for executada usando um aplicativo que não tenha suporte no controle de dispositivo macOS.
Configurações
Aqui estão as propriedades que você pode usar ao criar os grupos, regras e configurações na política de controle de dispositivo para macOS.
Nome da propriedade | Descrição | Opções |
---|---|---|
Características | Configurações específicas do recurso | Você pode definir disable como false ou true para os seguintes recursos:- removableMedia - appleDevice - portableDevice , incluindo câmera ou mídia PTP- bluetoothDevice O padrão é true , portanto, se você não configurar esse valor, ele não será aplicado mesmo se você criar uma política personalizada para removableMedia , porque ela está desabilitada por padrão. |
Global | Definir a imposição padrão | Você pode definir defaultEnforcement como- allow (padrão)- deny |
Ux | Você pode definir um hiperlink na notificação. | navigationTarget: string . Exemplo: "http://www.microsoft.com" |
Group
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
O tipo de grupo | "dispositivo" |
id |
GUID, uma ID exclusiva, representa o grupo e será usado na política. | Você pode gerar a ID por meio do New-Guid (Microsoft.PowerShell.Utility) – PowerShell ou o comando uuidgen no macOS |
name |
Nome amigável para o grupo. | string |
query |
A cobertura da mídia sob este grupo | Confira as tabelas de propriedades de consulta abaixo para obter detalhes. |
Consultar
O Controle de Dispositivo dá suporte a dois tipos de consultas:
O tipo de consulta 1 é o seguinte:
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
Identificar a operação lógica a ser executada nas cláusulas | todos: todos os atributos sob as cláusulas são uma relação E . Por exemplo, se o administrador colocar vendorId e serialNumber , para cada USB conectado, o sistema verificará se o USB atende aos dois valores.e: é equivalente a todos Qualquer: Os atributos sob as cláusulas são ou relação. Por exemplo, se o administrador colocar vendorId e serialNumber , para cada USB conectado, o sistema fará a imposição desde que o USB tenha um valor ou serialNumber idênticovendorId . ou: é equivalente a qualquer |
clauses |
Use a propriedade do dispositivo de mídia para definir a condição de grupo. | Uma matriz de objetos de cláusula que são avaliados para determinar a associação de grupo. Confira a seção Cláusula abaixo. |
O tipo de consulta 2 é o seguinte:
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
Identificar a operação lógica a ser executada na subconsulta | não: negação lógica de uma consulta |
query |
Uma subconsulta | Uma consulta que será negada. |
Cláusula
Propriedades da cláusula
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
O tipo de cláusula | Consulte a tabela a seguir para obter cláusulas com suporte. |
value |
$type valor específico a ser usado |
Cláusulas com suporte
cláusula $type | valor | Descrição |
---|---|---|
primaryId |
Uma de: - apple_devices - removable_media_devices - portable_devices - bluetooth_devices |
|
vendorId |
Cadeia de caracteres hexadecimal de 4 dígitos | Corresponde à ID do fornecedor de um dispositivo |
productId |
Cadeia de caracteres hexadecimal de 4 dígitos | Corresponde à ID do produto de um dispositivo |
serialNumber |
string | Corresponde ao número de série de um dispositivo. Não corresponderá se o dispositivo não tiver um número de série. |
encryption |
apfs | Corresponda se um dispositivo for criptografado por apfs. |
groupId |
Cadeia de caracteres UUID | Corresponda se um dispositivo for membro de outro grupo. O valor representa a UUID do grupo com o qual corresponder. O grupo deve ser definido dentro da política anterior à cláusula. |
Regra de política de acesso
Nome da propriedade | Descrição | Opções |
---|---|---|
id |
GUID, uma ID exclusiva, representa a regra e será usada na política. | New-Guid (Microsoft.PowerShell.Utility) – PowerShell uuidgen |
name |
Cadeia de caracteres, o nome da política e será exibido no brinde com base na configuração da política. | |
includeGroups |
Os grupos aos quais a política será aplicada. Se vários grupos forem especificados, a política se aplicará a qualquer mídia em todos esses grupos. Se não for especificada, a regra se aplica a todos os dispositivos. | O valor da ID dentro do grupo deve ser usado nesta instância. Se vários grupos estiverem no includeGroups , será AND. "includeGroups": ["3f082cd3-f701-4c21-9a6a-ed115c28e217"] |
excludeGroups |
Os grupos aos quais a política não se aplica. | O valor da ID dentro do grupo deve ser usado nesta instância. Se vários grupos estiverem no excludeGroups, será OR. |
entries |
Uma regra pode ter várias entradas; cada entrada com um GUID exclusivo informa ao Controle de Dispositivo uma restrição. | Consulte a tabela de propriedades de entrada mais adiante neste artigo para obter os detalhes. |
A tabela a seguir lista as propriedades que você pode usar em sua entrada:
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
Contém: - removableMedia - appleDevice - PortableDevice - bluetoothDevice - generic |
|
Execução | - $type :- allow - deny - auditAllow - auditDeny Quando $type permissão é selecionado, o valor das opções dá suporte a: - disable_audit_allow Mesmo se Permitir acontecer e a auditoriaAllow estiver configurada, o sistema não enviará evento. Quando $type negação é selecionado, o valor de opções dá suporte a: disable_audit_deny Mesmo que o Bloco aconteça e o auditDeny estiver configurado, o sistema não mostrará a notificação nem enviará o evento. Quando $type auditAllow é selecionado, o valor de opções dá suporte a: send_event Quando $type auditDeny é selecionado, o valor de opções dá suporte a: send_event show_notification |
|
access |
Especifique um ou mais direitos de acesso para essa regra. Isso pode incluir permissões granulares específicas do dispositivo ou permissões genéricas mais amplas. Confira a tabela abaixo para obter mais detalhes sobre os tipos de acesso válidos para um determinado $type de entrada. | |
id |
UUID |
A tabela a seguir lista as propriedades que você pode usar na entrada:
Imposição
Nome da propriedade Enforcement
Nome da propriedade | Descrição | Opções |
---|---|---|
$type |
O tipo de imposição | Confira a tabela abaixo para ver as imposição com suporte |
options |
$type valor específico a ser usado | Uma matriz de opções para a entrada. Pode ser omitido se não houver opções desejadas. |
Tipo de imposição
Nome da propriedade | Descrição | Opções |
---|---|---|
Enforcement $type |
options valores [cadeia de caracteres] |
Descrição |
allow |
disable_audit_allow |
Mesmo se Permitir acontecer e a auditoriaAllow estiver configurada, o sistema não enviará evento. |
deny |
disable_audit_deny |
Mesmo que o Bloco aconteça e o auditDeny estiver configurado, o sistema não mostrará a notificação nem enviará o evento. |
auditAllow |
send_event |
Enviar telemetria |
auditDeny |
- send_event - show_notification |
- Enviar telemetria – Exibir o Bloco UX para o usuário |
Tipos de acesso
$type de entrada | Valores de 'access' [cadeia de caracteres] | Acesso Genérico | Descrição |
---|---|---|---|
appleDevice | backup_device | Generic_read | |
appleDevice | update_device | Generic_write | |
appleDevice | download_photos_from_device | Generic_read | baixar foto do dispositivo iOS específico para o computador local |
appleDevice | download_files_from_device | Generic_read | baixar arquivos do dispositivo iOS específico para o computador local |
appleDevice | sync_content_to_device | Generic_write | sincronizar conteúdo do computador local para um dispositivo iOS específico |
portableDevice | download_files_from_device | Generic_read | |
portableDevice | send_files_to_device | Generic_write | |
portableDevice | download_photos_from_device | Generic_read | |
portableDevice | Depurar | generic_execute | Controle de ferramentas do ADB |
*removableMedia | leitura | Generic_read | |
removableMedia | gravação | Generic_write | |
removableMedia | Executar | generic_execute | Generic_read |
bluetoothDevice | download_files_from_device | ||
bluetoothDevice | send_files_to_device | Generic_write | |
Genérico | Generic_read | Equivalente a definir todos os valores de acesso denotados nesta tabela que mapeiam para generic_read. | |
Genérico | Generic_write | Equivalente a definir todos os valores de acesso denotados nesta tabela que mapeiam para generic_write. | |
Genérico | generic_execute | Equivalente a definir todos os valores de acesso denotados nesta tabela que mapeiam para generic_execute. |
Experiência do usuário final
Depois que Deny acontece e a notificação é habilitada na política, o usuário final verá uma caixa de diálogo:
Status
Use mdatp health --details device_control
para inspecionar o status de controle de dispositivo:
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
– versão do recurso, você deve ver ["v2"]. (O Controle de Dispositivo está habilitado, mas não está configurado.)- [] – O controle de dispositivo não está configurado neste computador.
- ["v1"] – Você está em uma versão prévia do Controle de Dispositivo. Migre para a versão 2 usando este guia. v1 é considerado obsoleto e não descrito nesta documentação.
- ["v1","v2"] – Você tem v1 e v2 habilitados. Offboard da v1.
v1_configured
– a configuração v1 é aplicadav1_enforcement_level
- quando v1 está habilitadov2_configured
- a configuração v2 é aplicadav2_state
- v2 status,enabled
se estiver funcionando totalmentev2_sensor_connection
- secreated_ok
, então o Controle de Dispositivo estabeleceu a conexão com a extensão do sistemav2_full_disk_access
- se nãoapproved
, o Controle de Dispositivo não poderá impedir algumas ou todas as operações
Reporting
Você pode ver o evento de política no relatório de caça avançada e controle de dispositivo. Para obter mais informações, consulte Proteger os dados da sua organização com o Controle de Dispositivo.
Cenários
Aqui estão alguns cenários comuns para ajudá-lo a familiarizar-se com Microsoft Defender para Ponto de Extremidade e Microsoft Defender para Ponto de Extremidade controle de dispositivo.
Cenário 1: negar qualquer mídia removível, mas permitir USBs específicos
Nesse cenário, você precisa criar dois grupos: um grupo para qualquer mídia removível e outro grupo para o grupo USBs aprovado. Você também precisa criar uma regra de política de acesso.
Etapa 1: Configurações: habilitar o controle do dispositivo e definir a imposição padrão
"settings": {
"features": {
"removableMedia": {
"disable": false
}
},
"global": {
"defaultEnforcement": "allow"
},
"ux": {
"navigationTarget": "http://www.deskhelp.com"
}
}
Etapa 2: Grupos: Create qualquer grupo de mídia removível e grupo aprovado-USBs
- Create um grupo para cobrir quaisquer dispositivos de mídia removíveis.
- Create um grupo para USBs aprovados.
- Combine esses grupos em um
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"
}
]
}
}
]
Etapa 3: Regras: Create Negar política para USBs não permitidos
Create regra de política de acesso e coloque em 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"
]
}
]
}
]
Nesse caso, só tem uma política de regra de acesso, mas se você tiver várias, adicione tudo em rules
.
Problemas Conhecidos
Aviso
O controle de dispositivo no macOS restringe dispositivos Android conectados apenas usando o modo PTP. O controle do dispositivo não restringe outros modos, como Transferência de Arquivos, Tethering USB e MIDI.
Confira também
- Implantar o Controle de Dispositivo usando Intune
- Implantar controle de dispositivo usando JAMF
- Implantar controle de dispositivo manualmente
- Perguntas frequentes sobre controle de dispositivo macOS (perguntas frequentes)
Dica
Você deseja aprender mais? Engage com a comunidade de Segurança da Microsoft em nossa Comunidade Tecnológica: Microsoft Defender para Ponto de Extremidade Tech Community.