> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/pt/automacao/runbooks/runbook-references/org/devices/cleanup-autopilot-devices_scheduled.md).

# Limpeza agendada de dispositivos Autopilot

Limpar registos de dispositivos Windows Autopilot órfãos e desatualizados

{% hint style="info" %}
Este é um Runbook agendado. Foi concebido para ser executado segundo um agendamento recorrente, em vez de ser acionado para um único objeto. Consulte [Agendamento](/pt/automacao/runbooks/scheduling.md) para detalhes sobre como configurar os agendamentos do Runbook.
{% endhint %}

### Descrição

Este runbook agendado executa a manutenção regular das registos de dispositivos Windows Autopilot, identificando e removendo dispositivos órfãos cujos números de série já não correspondem a qualquer dispositivo gerido pelo Intune, e, opcionalmente, removendo dispositivos Autopilot nunca inscritos que excedam um limiar de idade configurável. O runbook opera, por predefinição, em modo WhatIf para relatórios seguros e pode, opcionalmente, enviar um resumo por e-mail com anexos CSV e/ou Excel (xlsx) listando os dispositivos que seriam ou foram eliminados. Os ficheiros de relatório também podem ser carregados para um Azure Storage Account, devolvendo ligações de download com prazo limitado. O parâmetro ReportFileFormat controla quais formatos de ficheiro são gerados e entregues (apenas CSV, CSV e XLSX, ou apenas XLSX). Quando o anexo CSV excede o limite de tamanho do e-mail e "CSV & XLSX" está selecionado, o e-mail passa a incluir apenas o livro de trabalho do Excel.

### Configuração relativa ao envio de e-mails

O envio de um relatório por e-mail é opcional e só acontece quando um destinatário (`EmailTo`) é fornecido. O endereço do remetente é obtido da `RJReport.EmailSender` configuração do Tenant.

Este Runbook envia e-mails usando a API do Microsoft Graph. Para enviar e-mails através da API do Microsoft Graph, é necessário configurar um endereço de e-mail existente na personalização do runbook.

Consulte a [documentação de Configurações de Relatório do RealmJoin](https://docs.realmjoin.com/automation/runbooks/runbook-report-settings) para detalhes sobre todas as definições disponíveis.

#### Branding do e-mail

O e-mail do relatório respeita a configuração opcional `RJReport.Branding.*` do Tenant:

* **Imagem de cabeçalho e rodapé** – URLs públicas HTTPS, PNG/JPEG/GIF, máx. 200 KB cada
* **Ligação do rodapé** – destino da imagem de rodapé
* **Cor de acento e texto** – valores hexadecimais de 6 dígitos, por exemplo `#0052cc`

Quando estas definições não estão configuradas, são usados os gráficos e cores padrão do RealmJoin. Uma imagem que não possa ser descarregada ou validada, ou um valor de cor inválido, nunca impede o e-mail do relatório – em vez disso, é usado o padrão correspondente.

Instruções de configuração e requisitos de imagem: [Branding do e-mail](https://docs.realmjoin.com/automation/runbooks/runbook-report-settings#email-branding-optional).

### Localização

Organização → Dispositivos → Limpar dispositivos Autopilot (Agendado)

**Nome completo do Runbook**

rjgit-org\_devices\_cleanup-autopilot-devices\_scheduled

### Detalhes

| Propriedade         | Valor                                                                                                             |
| ------------------- | ----------------------------------------------------------------------------------------------------------------- |
| Versão              | 1.3.0                                                                                                             |
| Módulos necessários | <p>RealmJoin.RunbookHelper (>= 0.8.9)<br>Microsoft.Graph.Authentication (>= 2.39.0)<br>Az.Accounts (>= 5.5.2)</p> |
| Agendável           | sim                                                                                                               |

### Notas

Pré-requisitos:

* A identidade gerida do Azure Automation deve ter estas permissões de aplicação do Microsoft Graph: DeviceManagementManagedDevices.Read.All, DeviceManagementServiceConfig.ReadWrite.All, Organization.Read.All, Device.ReadWrite.All (Device.ReadWrite.All apenas quando o modo "Delete Autopilot and Entra device" é usado) e Mail.Send (Mail.Send apenas quando o relatório por e-mail está ativado).
* Conceda as permissões antes da primeira execução agendada.

Aviso - a eliminação é irreversível:

* Remover uma identidade de dispositivo Autopilot elimina-a permanentemente do Windows Autopilot.
* O dispositivo físico não pode voltar a entrar no Autopilot até que o seu hash de hardware seja novamente carregado.
* Não existe eliminação suave nem reciclagem para registos do Autopilot.
* Eliminar o objeto de dispositivo do Entra (Azure AD) é igualmente permanente; faça-o apenas para registos que estejam realmente mortos (o dispositivo nunca voltará a inscrever-se).

Procedimento recomendado na primeira execução:

* Execute com o modo de eliminação = "WhatIf (somente relatório)" (a predefinição) e reveja a saída ou o CSV enviado por e-mail.
* Confirme que os dispositivos identificados são realmente órfãos ou nunca foram inscritos.
* Mude para um modo de eliminação apenas depois de a lista de candidatos ter sido revista.

Interações entre parâmetros:

* DeleteMode tem como predefinição "WhatIf (somente relatório)"; nesse modo não ocorre qualquer eliminação.
* "Delete Autopilot device" remove apenas a identidade Autopilot. "Delete Autopilot and Entra device" remove adicionalmente o objeto de dispositivo correspondente do Entra (Azure AD), que de outra forma ficaria como um registo obsoleto/inativo quando a identidade Autopilot desaparecesse.
* CleanupOrphanedDevices e CleanupNeverEnrolledDevices são independentes; qualquer um ou ambos podem ser ativados. NeverEnrolledAgeDays aplica-se apenas à verificação de nunca inscritos.
* GroupTagFilter, ManufacturerFilter e ModelFilter são todos opcionais; deixe um filtro vazio para avaliar todos os valores dessa dimensão. Quando mais do que um filtro é definido, são combinados com AND - um dispositivo tem de corresponder a todos os filtros preenchidos para permanecer no âmbito. GroupTagFilter corresponde exatamente à etiqueta de grupo (sem distinção entre maiúsculas e minúsculas); ManufacturerFilter e ModelFilter correspondem como subcadeias sem distinção entre maiúsculas e minúsculas, pelo que "Dell" corresponde a "Dell Inc." e "Surface" corresponde a "Surface Laptop 3".
* ExcludeSerialNumbers é aplicado após os filtros AND como exclusão: qualquer dispositivo cujo número de série esteja na lista (correspondência exata, sem distinção entre maiúsculas e minúsculas) é removido do âmbito, independentemente dos outros filtros. Deixe vazio para não excluir nada.

### Permissões

#### Permissões da aplicação

* **Tipo**: Microsoft Graph
  * Device.ReadWrite.All
    * *Procura dispositivos do Entra por deviceId e elimina-os no modo "Delete Autopilot and Entra device"*
  * DeviceManagementManagedDevices.Read.All
    * *Lê dispositivos Windows geridos pelo Intune para encontrar números de série do Autopilot que já não estão presentes no Intune*
  * DeviceManagementServiceConfig.ReadWrite.All
    * *Lista windowsAutopilotDeviceIdentities e elimina identidades Autopilot obsoletas*
  * Mail.Send *(opcional — funcionalidade: relatório por e-mail)*
    * *Envia o e-mail do relatório de limpeza através de Send-RjReportEmail quando EmailTo está configurado*
  * Organization.Read.All
    * *Lê /organization para mostrar o nome de apresentação do tenant na saída do relatório e no e-mail*

### Parâmetros

#### DeleteMode

Controla o que o runbook faz com os candidatos identificados para limpeza. "WhatIf (somente relatório)" não efetua qualquer eliminação e apenas apresenta os candidatos (predefinição, seguro). "Delete Autopilot device" remove as identidades de dispositivo Autopilot. "Delete Autopilot and Entra device" remove as identidades Autopilot e os objetos de dispositivo correspondentes do Entra (Azure AD), que de outra forma permaneceriam como registos obsoletos.

| Propriedade                | Valor                      |
| -------------------------- | -------------------------- |
| Obrigatório                | falso                      |
| Valor predefinido          | WhatIf (somente relatório) |
| Tipo                       | Texto                      |
| Nome de exibição no portal | Modo de eliminação         |

#### GroupTagFilter

Etiquetas de grupo Autopilot separadas por vírgulas para limitar o âmbito da limpeza. Correspondência exata (sem distinção entre maiúsculas e minúsculas). Deixe vazio para processar todos os dispositivos Autopilot, independentemente da etiqueta de grupo.

| Propriedade                | Valor                                                                                                       |
| -------------------------- | ----------------------------------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                                                       |
| Valor predefinido          |                                                                                                             |
| Tipo                       | Texto                                                                                                       |
| Nome de exibição no portal | Filtro de etiqueta de grupo Autopilot (correspondência exata separada por vírgulas, deixe vazio para todos) |

#### ManufacturerFilter

Fabricantes de dispositivos separados por vírgulas para limitar o âmbito da limpeza. Correspondência como subcadeias sem distinção entre maiúsculas e minúsculas, pelo que "Dell" corresponde a "Dell Inc.". Combinado com os outros filtros usando AND. Deixe vazio para processar todos os fabricantes.

| Propriedade                | Valor                                                                                                   |
| -------------------------- | ------------------------------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                                                   |
| Valor predefinido          |                                                                                                         |
| Tipo                       | Texto                                                                                                   |
| Nome de exibição no portal | Filtro de fabricante (separado por vírgulas, correspondência por substring, deixe em branco para todos) |

#### ModelFilter

Modelos de dispositivos separados por vírgulas para limitar o âmbito da limpeza. Correspondência como subcadeias sem distinção entre maiúsculas e minúsculas, pelo que "Surface" corresponde a "Surface Laptop 3". Combinado com os outros filtros usando AND. Deixe vazio para processar todos os modelos.

| Propriedade                | Valor                                                                                               |
| -------------------------- | --------------------------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                                               |
| Valor predefinido          |                                                                                                     |
| Tipo                       | Texto                                                                                               |
| Nome de exibição no portal | Filtro de modelo (separado por vírgulas, correspondência por substring, deixe em branco para todos) |

#### ExcludeSerialNumbers

Números de série separados por vírgulas para excluir da limpeza. Correspondência exata (sem distinção entre maiúsculas e minúsculas). Qualquer dispositivo cujo número de série esteja nesta lista é removido do âmbito, independentemente dos outros filtros. Deixe vazio para não excluir nada.

| Propriedade                | Valor                                                                                           |
| -------------------------- | ----------------------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                                           |
| Valor predefinido          |                                                                                                 |
| Tipo                       | Texto                                                                                           |
| Nome de exibição no portal | Excluir números de série (correspondência exata separada por vírgulas, deixe vazio para nenhum) |

#### CleanupOrphanedDevices

Quando ativado, remove dispositivos Autopilot que já contactaram o Intune no passado, mas cujo número de série já não é encontrado entre os dispositivos geridos pelo Intune (o registo do dispositivo gerido foi eliminado).

| Propriedade                | Valor                                |
| -------------------------- | ------------------------------------ |
| Obrigatório                | falso                                |
| Valor predefinido          | Verdadeiro                           |
| Tipo                       | Booleano                             |
| Nome de exibição no portal | Limpar dispositivos Autopilot órfãos |

#### OrphanedLastContactedDays

Limiar de idade em dias para dispositivos órfãos. Um dispositivo Autopilot só é tratado como órfão quando o seu último contacto com o Intune foi há mais dias do que este número e o respetivo número de série já não está presente no Intune. Isto evita remover dispositivos que contactaram o Intune recentemente.

| Propriedade                | Valor                                                    |
| -------------------------- | -------------------------------------------------------- |
| Obrigatório                | falso                                                    |
| Valor predefinido          | 90                                                       |
| Tipo                       | Int32                                                    |
| Nome de exibição no portal | Limiar da última comunicação do dispositivo órfão (dias) |

#### CleanupNeverEnrolledDevices

Quando ativado, remove dispositivos Autopilot nunca inscritos (dispositivos que nunca contactaram o Intune).

| Propriedade                | Valor                                         |
| -------------------------- | --------------------------------------------- |
| Obrigatório                | falso                                         |
| Valor predefinido          | Falso                                         |
| Tipo                       | Booleano                                      |
| Nome de exibição no portal | Limpar dispositivos Autopilot nunca inscritos |

**Opções do portal**

| Opção do portal                                            | Valor |
| ---------------------------------------------------------- | ----- |
| Sim - remover dispositivos nunca inscritos com antiguidade |       |
| Não                                                        |       |

#### NeverEnrolledAgeDays

Limiar de idade em dias para dispositivos nunca inscritos. Medido na data de criação do dispositivo.

| Propriedade                | Valor                                                  |
| -------------------------- | ------------------------------------------------------ |
| Obrigatório                | falso                                                  |
| Valor predefinido          | 90                                                     |
| Tipo                       | Int32                                                  |
| Nome de exibição no portal | Limiar de idade do dispositivo nunca inscrito (dias)   |
| Oculto no portal           | sim (predefinido através da personalização do runbook) |

#### EmailTo

Endereço de e-mail opcional do destinatário do relatório de resumo da limpeza. Deixe vazio para escrever os resultados apenas no registo do runbook.

| Propriedade                | Valor                                                   |
| -------------------------- | ------------------------------------------------------- |
| Obrigatório                | falso                                                   |
| Valor predefinido          |                                                         |
| Tipo                       | Texto                                                   |
| Nome de exibição no portal | Destinatário do resumo de limpeza por e-mail (opcional) |

#### EmailFrom

O endereço de e-mail do remetente do relatório de resumo. Isto é configurado através de Runbook Customizations.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### BrandingHeaderImageUrl

URL HTTPS pública opcional de uma imagem de cabeçalho personalizada (PNG/JPEG/GIF, máx. 200 KB) para o e-mail do relatório. Obtida da configuração do Tenant RJReport.Branding.HeaderImageUrl. Quando vazio, é usada a imagem de cabeçalho padrão do RealmJoin.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### BrandingFooterImageUrl

URL HTTPS pública opcional de uma imagem de rodapé personalizada (PNG/JPEG/GIF, máx. 200 KB) para o e-mail do relatório. Obtida da configuração do Tenant RJReport.Branding.FooterImageUrl. Quando vazio, é usada a imagem de rodapé padrão do RealmJoin.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### BrandingFooterLink

URL opcional para a qual a imagem de rodapé aponta. Obtida da configuração do Tenant RJReport.Branding.FooterLink. Quando vazio, é usada a ligação padrão (<https://www.realmjoin.com>).

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### BrandingAccentColor

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### BrandingTextColor

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### ReportFileFormat

Controla quais formatos de ficheiro do relatório são gerados e entregues: "Apenas CSV", "CSV e XLSX" (predefinição) ou "Apenas XLSX".

| Propriedade                | Valor                           |
| -------------------------- | ------------------------------- |
| Obrigatório                | falso                           |
| Valor predefinido          | CSV e XLSX                      |
| Tipo                       | Texto                           |
| Nome de exibição no portal | Formato do arquivo do relatório |

**Opções do portal**

| Opção do portal | Valor |
| --------------- | ----- |
| CSV e XLSX      |       |
| Somente CSV     |       |
| Somente XLSX    |       |

#### CreateDownloadLink

Se ativado, os ficheiros do relatório são carregados para uma Storage Account do Azure e são devolvidos links de download com validade limitada. Desativado por predefinição.

| Propriedade                | Valor                                                                            |
| -------------------------- | -------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                            |
| Valor predefinido          | Falso                                                                            |
| Tipo                       | Booleano                                                                         |
| Nome de exibição no portal | Criar um link de download do ficheiro (carregar relatório para o armazenamento)? |

**Opções do portal**

| Opção do portal                                           | Valor      |
| --------------------------------------------------------- | ---------- |
| Sim - carregar o relatório e devolver um link de download | verdadeiro |
| Não - não criar um link de download                       | falso      |

#### ContainerName

Nome do contentor de armazenamento usado para o carregamento. Configurado por runbook (não uma definição global do RJReport).

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido | cleanup-autopilot-devices                              |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### ResourceGroupName

Grupo de recursos que contém a Storage Account. Obtido das definições do Tenant RJReport.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### StorageAccountName

Nome da Storage Account usado para o carregamento. Obtido das definições do Tenant RJReport.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido |                                                        |
| Tipo              | Texto                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

#### LinkExpiryDays

Número de dias até o link de download gerado expirar. Obtido das definições do Tenant RJReport.

| Propriedade       | Valor                                                  |
| ----------------- | ------------------------------------------------------ |
| Obrigatório       | falso                                                  |
| Valor predefinido | 6                                                      |
| Tipo              | Int32                                                  |
| Oculto no portal  | sim (predefinido através da personalização do runbook) |

[Voltar à visão geral da referência do Runbook](/pt/automacao/runbooks/runbook-references.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.realmjoin.com/pt/automacao/runbooks/runbook-references/org/devices/cleanup-autopilot-devices_scheduled.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
