> 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/automatizacao/runbooks/runbook-references/user/mail/delegate-full-access.md).

# Delegar acesso total

Conceder ou remover acesso total à caixa de correio deste utilizador

### Descrição

Concede a uma ou mais pessoas acesso total à caixa de correio deste utilizador, ou remove novamente esse acesso. Opcionalmente, a caixa de correio abre automaticamente no Outlook dos delegados. As permissões são mostradas antes e depois da alteração, e uma falha para um delegado não interrompe os outros.

### Como funciona

Em cada execução, o runbook:

1. Liga-se ao Exchange Online com a identidade gerida da conta de Automation.
2. Verifica que o proprietário da caixa de correio selecionado (`Nome de utilizador`) realmente tem uma caixa de correio - caso contrário, a execução para antes de qualquer coisa ser alterada.
3. Resolve cada delegado selecionado para o respetivo endereço SMTP principal e elimina duplicados e o próprio proprietário da caixa de correio.
4. Lê e imprime o atual **FullAccess** delegações na caixa de correio (o *status quo*).
5. Concede ou remove FullAccess para cada delegado restante, um de cada vez.
6. Lê novamente as permissões da caixa de correio e imprime o estado resultante, além de um resumo por execução.

O runbook só afeta sempre o **FullAccess** direito na única caixa de correio selecionada. Send As, Send on Behalf e permissões ao nível de pasta não são afetados.

#### Selecionando delegados

O **Delegar acesso a** campo é um **multi-seleção** seletor de utilizadores. Selecione quantos delegados forem necessários - todos eles recebem a mesma ação (*Conceder acesso* ou *Remover acesso*) e a mesma configuração de AutoMapping do formulário numa única execução.

O seletor está limitado a contas de membros (`userType eq 'Member'`), pelo que contas de convidado não são oferecidas. Passa cada delegado selecionado como um **nome principal de utilizador**, por isso a primeira linha do registo já aparece como uma lista de UPNs em vez de IDs de objeto brutos. Cada valor é então resolvido contra o Exchange Online e, a partir da etapa de pré-verificação, todo o output mostra o endereço SMTP principal do delegado.

Duas entradas do seletor que resolvem para a mesma caixa de correio são desduplicadas, e um delegado que resolva para o proprietário da caixa de correio é removido com um aviso - uma caixa de correio não pode ser delegada a si própria.

#### O que é alterado

* **Conceder acesso (`Remover` = false):** `Add-MailboxPermission` com `-AccessRights FullAccess` para cada delegado.
* **Remover acesso (`Remover` = true):** `Remove-MailboxPermission` com `-AccessRights FullAccess -InheritanceType All` para cada delegado.

#### AutoMapping

**`AutoMapping`** é avaliado apenas ao conceder acesso; o portal oculta o campo quando *Remover acesso* está selecionado. Com o AutoMapping ativado, o Outlook adiciona a caixa de correio delegada ao perfil do delegado automaticamente - mas apenas depois de o cliente recriar o mapeamento, o que pode demorar algum tempo. As concessões existentes não são reescritas para alterar o respetivo valor de AutoMapping; remova a delegação e conceda-a novamente se o comportamento de mapeamento tiver de mudar.

#### Idempotente por conceção

Nada é feito duas vezes e nada falha apenas porque já era verdade:

* Conceder acesso a um delegado que já possui FullAccess é reportado como *inalterado*, e não como um erro.
* Remover acesso de um delegado que não tem uma entrada FullAccess é reportado como *inalterado*, e não como um erro.
* Quando a captura de estado anterior à alteração não consegue classificar uma entrada de permissão existente, o runbook não **não** toma o atalho - chama o Exchange Online e deixa a respetiva resposta decidir, pelo que uma delegação removível nunca é ignorada em silêncio.

#### Resultados parciais

Os delegados são processados independentemente:

* Um delegado **sem caixa de correio** é ignorado durante a verificação preliminar e contado como *ignorado*; os delegados restantes continuam a ser processados. Se nenhum dos delegados selecionados tiver uma caixa de correio, a execução para.
* Um delegado cuja alteração **falha** é reportado com um motivo específico (atraso de replicação de diretório, permissões insuficientes do Exchange Online na identidade gerida, uma permissão herdada de um grupo ou uma caixa de correio partilhada/sem licença) e o ciclo continua com o restante.

Cada execução termina com uma linha de resumo no formato `Resumo: <alterados>, <inalterados>, <falhados>, <ignorados (sem caixa de correio)>`, seguido das delegações FullAccess resultantes na caixa de correio.

Se **algum** delegado falhar, o próprio runbook reporta uma falha. Isto é deliberado: com um seletor de multi-seleção, um sucesso parcial reportado como uma execução bem-sucedida ocultaria delegados que nunca receberam acesso.

#### Limitações

* **As permissões herdadas não podem ser removidas.** Um direito FullAccess que provém de um grupo de funções ou de pertença a um Security Group é apresentado como *herdado* mas não pode ser revogado aqui - ajuste a pertença ao grupo ou a atribuição de função em vez disso.
* **Apenas concessões Allow explícitas são geridas.** Uma entrada **Deny** explícita na caixa de correio é apresentada por transparência, mas o runbook nunca adiciona ou remove uma.

#### Pré-requisitos

A identidade gerida da conta de Automation liga-se ao Exchange Online através de `Connect-RjRbExchangeOnline` e necessita de:

* da `Exchange.ManageAsApp` permissão de aplicação em *Office 365 Exchange Online*, e
* da **Administrador do Exchange** função (ou uma função equivalente de Exchange Online RBAC que inclua `Add-MailboxPermission` e `Remove-MailboxPermission`).

O runbook não faz chamadas ao Microsoft Graph - o seletor de utilizadores é apenas uma anotação do lado do portal, pelo que não são necessárias permissões de aplicação do Graph.

### Localização

Utilizador → Correio → Delegar Full Access

**Nome completo do Runbook**

rjgit-user\_mail\_delegate-full-access

### Detalhes

| Propriedade         | Valor                                                                             |
| ------------------- | --------------------------------------------------------------------------------- |
| Versão              | 1.1.3                                                                             |
| Módulos necessários | <p>RealmJoin.RunbookHelper (>= 0.8.10)<br>ExchangeOnlineManagement (>= 3.9.2)</p> |
| Agendável           | não                                                                               |

### Permissões

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

* **Tipo**: Office 365 Exchange Online
  * Exchange.ManageAsApp
    * *Gere delegações FullAccess de caixas de correio na sessão do Exchange Online apenas com aplicação*

#### funções RBAC

* Administrador do Exchange
  * *Necessário para a sessão do Exchange Online apenas com aplicação que gere permissões FullAccess*

### Parâmetros

#### Nome de utilizador

Nome principal do utilizador sobre o qual o runbook atua. Definido pelo portal a partir do utilizador selecionado.

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

#### delegateTo

Pessoas que recebem ou perdem acesso total. Pode selecionar várias de uma vez.

| Propriedade                | Valor            |
| -------------------------- | ---------------- |
| Obrigatório                | verdadeiro       |
| Valor predefinido          |                  |
| Tipo                       | String\[]        |
| Nome de exibição do portal | Delegar acesso a |

#### Remover

Conceder dá acesso total às pessoas selecionadas, Remover retira-o.

| Propriedade                | Valor    |
| -------------------------- | -------- |
| Obrigatório                | falso    |
| Valor predefinido          | Falso    |
| Tipo                       | Booleano |
| Nome de exibição do portal | Ação     |

**Opções do portal**

| Opção do portal | Valor      |
| --------------- | ---------- |
| Conceder acesso | falso      |
| Remover acesso  | verdadeiro |

#### AutoMapping

Faz com que a caixa de correio apareça automaticamente no Outlook dos delegados. Não tem efeito quando o acesso é removido.

| Propriedade                | Valor                                                 |
| -------------------------- | ----------------------------------------------------- |
| Obrigatório                | falso                                                 |
| Valor predefinido          | Falso                                                 |
| Tipo                       | Booleano                                              |
| Nome de exibição do portal | Mapear automaticamente a caixa de correio no Outlook? |

[Voltar à visão geral da referência do Runbook](/pt/automatizacao/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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.realmjoin.com/pt/automatizacao/runbooks/runbook-references/user/mail/delegate-full-access.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
