> 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/general/add-primary-users-of-devices-to-group_scheduled.md).

# Adicionar utilizadores principais dos dispositivos a um grupo agendado

Sincronizar utilizadores principais de dispositivos geridos pelo Intune por plataforma para um grupo do Entra ID

{% 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 recolhe os utilizadores primários de todos os dispositivos geridos pelo Intune que correspondem à(s) plataforma(s) selecionada(s) e sincroniza-os para um grupo Entra ID de destino. Os utilizadores que já não estão atribuídos como utilizador primário em qualquer dispositivo correspondente são removidos do grupo. Um grupo de inclusão opcional restringe quais utilizadores são elegíveis, e um grupo de exclusão opcional impede que utilizadores específicos sejam adicionados ou mantém-nos removidos. Um modo apenas de relatório permite pré-visualizar as alterações propostas por e-mail (o corpo do e-mail mostra, no máximo, 10 utilizadores por lista, com as listas completas anexadas como ficheiro CSV e/ou XLSX) sem efetuar quaisquer modificações.

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

O envio de um relatório por email é opcional e só acontece quando a `Apenas relatório` opção está ativada; um destinatário (`EmailTo`) é então obrigatório. O endereço do remetente é obtido a partir de `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 → Geral → Adicionar utilizadores primários de dispositivos ao grupo (Agendado)

**Nome completo do Runbook**

rjgit-org\_general\_add-primary-users-of-devices-to-group\_scheduled

### Detalhes

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

### Notas

Tipo de runbook: Agendado (recomendado: diariamente)

Casos de uso comuns:

* Manter um grupo de destino de distribuição ou de Conditional Access alinhado com "quem atualmente tem um dispositivo gerido", filtrado por plataforma, um filtro OData avançado ou um âmbito de grupo de inclusão/exclusão.
* Validar um filtro/âmbito novo ou alterado antes de poder escrever num grupo de produção.

Opções de piloto e teste:

* Ative ReportOnly para calcular a mesma diferença de adição/remoção que uma execução real produziria, sem aplicar qualquer alteração ao grupo. Em vez disso, é enviado a EmailTo um e-mail de pré-visualização em Markdown que lista os utilizadores afetados (por UPN); cada lista (seria adicionada / seria removida) mostra no máximo 10 utilizadores no corpo do e-mail, com um indicador "... e N mais" quando uma lista é mais longa, e as listas completas são anexadas como ficheiro(s) de relatório no formato escolhido por ReportFileFormat. Execute uma vez neste modo após alterar a seleção da plataforma, AdvancedFilter ou os grupos de inclusão/exclusão, reveja a pré-visualização e depois desative ReportOnly para permitir que a sincronização seja aplicada.

Interações dos parâmetros:

* AdvancedFilter, quando definido, substitui inteiramente a seleção de plataforma Windows/MacOS/iOS/Android em vez de se combinar com ela.
* RemoveUsersWhenNoDeviceMatch controla tanto a execução real como a pré-visualização do ReportOnly: quando desativado, não são removidos utilizadores em nenhum dos casos, pelo que a pré-visualização reflete sempre o que uma execução real faria.

Pré-requisitos:

* EmailFrom requer que a definição do Tenant RJReport.EmailSender esteja configurada; isto só é necessário quando ReportOnly é usado para enviar o e-mail de pré-visualização.

### Permissões

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

* **Tipo**: Microsoft Graph
  * DeviceManagementManagedDevices.Read.All
    * *Lê os dispositivos geridos pelo Intune filtrados por SO para recolher o utilizador primário de cada dispositivo*
  * Group.Read.All
    * *Valida os grupos de destino/inclusão/exclusão e lê as respetivas listas de membros*
  * GroupMember.ReadWrite.All
    * *Adiciona e remove utilizadores no grupo de destino através de chamadas em lote /groups/{id}/members/$ref*
  * User.Read.All
    * *Lê o ID do membro e o UPN para identificar membros do tipo utilizador e registar remoções*

### Parâmetros

#### TargetGroupId

O grupo Entra ID para onde os utilizadores primários serão sincronizados. Os membros deste grupo serão geridos exclusivamente por este runbook.

| Propriedade                | Valor                                                                 |
| -------------------------- | --------------------------------------------------------------------- |
| Obrigatório                | verdadeiro                                                            |
| Valor predefinido          |                                                                       |
| Tipo                       | Texto                                                                 |
| Nome de exibição no portal | Grupo de destino (sincronizar utilizadores primários para este grupo) |

#### Windows

Incluir utilizadores primários de dispositivos Windows. (Filtro OData usado "operatingSystem eq 'Windows'")

| Propriedade                | Valor                        |
| -------------------------- | ---------------------------- |
| Obrigatório                | falso                        |
| Valor predefinido          | Falso                        |
| Tipo                       | Booleano                     |
| Nome de exibição no portal | Incluir dispositivos Windows |

#### macOS

Incluir utilizadores primários de dispositivos macOS. (Filtro OData usado "operatingSystem eq 'macOS'")

| Propriedade                | Valor                      |
| -------------------------- | -------------------------- |
| Obrigatório                | falso                      |
| Valor predefinido          | Falso                      |
| Tipo                       | Booleano                   |
| Nome de exibição no portal | Incluir dispositivos macOS |

#### iOS

Incluir utilizadores primários de dispositivos iOS e iPadOS. (Filtro OData usado "operatingSystem eq 'iOS'")

| Propriedade                | Valor                    |
| -------------------------- | ------------------------ |
| Obrigatório                | falso                    |
| Valor predefinido          | Falso                    |
| Tipo                       | Booleano                 |
| Nome de exibição no portal | Incluir Dispositivos iOS |

#### Android

Incluir utilizadores primários de dispositivos Android. (Filtro OData usado "operatingSystem eq 'Android'")

| Propriedade                | Valor                        |
| -------------------------- | ---------------------------- |
| Obrigatório                | falso                        |
| Valor predefinido          | Falso                        |
| Tipo                       | Booleano                     |
| Nome de exibição no portal | Incluir Dispositivos Android |

#### Filtro avançado

Opcional. Filtro OData personalizado a aplicar ao obter dispositivos. Substitui os filtros baseados na plataforma, se for fornecido. Exemplo: startsWith(deviceName,'FWP-') and operatingSystem eq 'Windows' .

| Propriedade                | Valor                                            |
| -------------------------- | ------------------------------------------------ |
| Obrigatório                | falso                                            |
| Valor predefinido          |                                                  |
| Tipo                       | Texto                                            |
| Nome de exibição no portal | Filtro personalizado (substitui a seleção de SO) |

#### RemoveUsersWhenNoDeviceMatch

Quando ativado (predefinição), os utilizadores que já não têm um dispositivo primário correspondente à(s) plataforma(s) selecionada(s) são removidos do grupo de destino. Desative para o modo apenas de adição — os membros existentes nunca são removidos.

| Propriedade                | Valor                                               |
| -------------------------- | --------------------------------------------------- |
| Obrigatório                | falso                                               |
| Valor predefinido          | Verdadeiro                                          |
| Tipo                       | Booleano                                            |
| Nome de exibição no portal | Remover utilizadores sem dispositivo correspondente |

#### ID do grupo de inclusão

Opcional. Só os utilizadores que sejam membros deste grupo são elegíveis para serem adicionados ao grupo de destino. Deixe em branco para considerar todos os utilizadores primários.

| Propriedade                | Valor                                                  |
| -------------------------- | ------------------------------------------------------ |
| Obrigatório                | falso                                                  |
| Valor predefinido          |                                                        |
| Tipo                       | Texto                                                  |
| Nome de exibição no portal | Incluir utilizadores do grupo (opcional)               |
| Oculto no portal           | sim (predefinido através da personalização do runbook) |

#### ExcludeGroupId

Opcional. Os utilizadores que sejam membros deste grupo não serão adicionados e serão removidos do grupo de destino, se já estiverem presentes.

| Propriedade                | Valor                                                  |
| -------------------------- | ------------------------------------------------------ |
| Obrigatório                | falso                                                  |
| Valor predefinido          |                                                        |
| Tipo                       | Texto                                                  |
| Nome de exibição no portal | Excluir utilizadores do grupo (opcional)               |
| Oculto no portal           | sim (predefinido através da personalização do runbook) |

#### Apenas relatório

Se definido como true, o script calcula o que mudaria mas não aplica modificações. As alterações propostas são enviadas ao destinatário EmailTo num e-mail de pré-visualização que mostra no máximo 10 utilizadores por lista no corpo, com as listas completas anexadas como ficheiro(s) CSV e/ou XLSX no formato definido por ReportFileFormat. Se false, o runbook aplica todas as alterações imediatamente.

| Propriedade                | Valor                                                          |
| -------------------------- | -------------------------------------------------------------- |
| Obrigatório                | falso                                                          |
| Valor predefinido          | Falso                                                          |
| Tipo                       | Booleano                                                       |
| Nome de exibição no portal | Apenas relatório (pré-visualizar alterações, não aplicar nada) |

#### EmailFrom

O endereço de e-mail do remetente para e-mails de pré-visualização no modo apenas relatório. Isto precisa de ser configurado na personalização do runbook.

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

#### BrandingHeaderImageUrl

URL de uma imagem de cabeçalho personalizada para e-mails de relatório. Configurada como uma definição do Tenant; deixe em branco para usar a identidade visual 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 de uma imagem de rodapé personalizada para e-mails de relatório. Configurada como uma definição do Tenant; deixe em branco para usar a identidade visual 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

Destino da ligação aplicado à imagem de rodapé nos e-mails de relatório, por exemplo o sítio Web da empresa. Configurado como uma definição do Tenant; deixe em branco para usar a identidade visual 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) |

#### BrandingAccentColor

Cor de destaque usada em títulos e realces nos e-mails de relatório. Configurada como uma definição do Tenant; deixe em branco para usar a identidade visual 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) |

#### BrandingTextColor

Cor do texto do corpo usada nos e-mails de relatório. Configurada como uma definição do Tenant; deixe em branco para usar a identidade visual 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) |

#### EmailTo

Endereço de e-mail do destinatário para o e-mail de pré-visualização no modo apenas relatório. O e-mail mostra no máximo 10 utilizadores por lista no corpo, com as listas completas anexadas como ficheiro(s) CSV e/ou XLSX no formato definido por ReportFileFormat. Só é usado quando ReportOnly está definido como true.

| Propriedade                | Valor                                                                                             |
| -------------------------- | ------------------------------------------------------------------------------------------------- |
| Obrigatório                | falso                                                                                             |
| Valor predefinido          |                                                                                                   |
| Tipo                       | Texto                                                                                             |
| Nome de exibição no portal | Enviar relatório de pré-visualização para (só usado quando a opção Apenas relatório está ativada) |

#### ReportFileFormat

Formato do ficheiro do relatório anexado ao e-mail de pré-visualização no modo apenas relatório. Os anexos contêm as listas completas de utilizadores que seriam adicionados ou removidos, enquanto o corpo do e-mail mostra no máximo 10 utilizadores por lista. Só é usado quando ReportOnly está ativado e EmailTo está definido.

| Propriedade                | Valor                                                                                                        |
| -------------------------- | ------------------------------------------------------------------------------------------------------------ |
| Obrigatório                | falso                                                                                                        |
| Valor predefinido          | CSV e XLSX                                                                                                   |
| Tipo                       | Texto                                                                                                        |
| Nome de exibição no portal | Formato do ficheiro do relatório de pré-visualização (só usado quando a opção Apenas relatório está ativada) |

**Opções do portal**

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

[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/general/add-primary-users-of-devices-to-group_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.
