> 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/connecting-azure-automation/azure-ad-roles-and-permissions.md).

# Requisitos de execução de Runbooks

## Módulos PowerShell

{% hint style="info" %}
A secção de Módulos PowerShell é atualizada automaticamente com base no [repositório público](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Os runbooks partilhados disponíveis em [GitHub](https://github.com/realmjoin/realmjoin-runbooks) esperam/usam os seguintes módulos Windows PowerShell:

| Módulo                           | Versão mínima nos runbooks |
| -------------------------------- | -------------------------- |
| `Az.Accounts`                    | 5.5.0                      |
| `Az.Compute`                     | 5.1.1                      |
| `Az.DesktopVirtualization`       | 5.4.1                      |
| `Az.ManagementPartner`           | 0.7.5                      |
| `Az.Resources`                   | 9.0.1                      |
| `Az.Storage`                     | 9.6.0                      |
| `ExchangeOnlineManagement`       | 3.9.2                      |
| `Microsoft.Graph.Authentication` | 2.37.0                     |
| `MicrosoftTeams`                 | 7.6.0                      |
| `RealmJoin.RunbookHelper`        | 0.8.6                      |

O RealmJoin Portal irá importar e instalar automaticamente estes módulos se forem referenciados dentro de um runbook. Esta importação também respeitará as versões mínimas especificadas para os módulos.

## Permissões

{% hint style="info" %}
A secção de Permissões é atualizada automaticamente com base no [repositório público](https://github.com/realmjoin/realmjoin-runbooks).
{% endhint %}

Os runbooks partilhados do RealmJoin usam a [identidade gerida atribuída pelo sistema](https://learn.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) para interagir com Entra ID, API do MS Graph, etc.

A seguinte lista de funções e permissões permitir-lhe-á usar todos os runbooks atualmente disponíveis no nosso repositório partilhado.

Não é recomendado reduzir estas funções/permissões, uma vez que os runbooks são testados apenas com este conjunto de permissões. Se reduzir o conjunto de funções/permissões, alguns runbooks deixarão de funcionar.

### Funções do Entra ID

Atribua as seguintes funções do Entra ID à identidade gerida

* Programador de Aplicações
* Administrador de Dispositivos na Cloud
* Administrador do Exchange
* Administrador do Teams
* Administrador de Usuário

### Permissões da API Graph

Conceda as seguintes Permissões da API Graph à identidade gerida

* `Application.Read.All`
* `Application.ReadWrite.OwnedBy`
* `AuditLog.Read.All`
* `BitlockerKey.Read.All`
* `Channel.ReadBasic.All`
* `ChannelMember.ReadWrite.All`
* `CloudPC.ReadWrite.All`
* `Device.ReadWrite.All`
* `DeviceLocalCredential.Read.All`
* `DeviceManagementApps.ReadWrite.All`
* `DeviceManagementConfiguration.ReadWrite.All`
* `DeviceManagementManagedDevices.PrivilegedOperations.All`
* `DeviceManagementManagedDevices.ReadWrite.All`
* `DeviceManagementServiceConfig.ReadWrite.All`
* `Directory.Read.All`
* `Group.Create`
* `Group.ReadWrite.All`
* `GroupMember.ReadWrite.All`
* `IdentityRiskyUser.ReadWrite.All`
* `InformationProtectionPolicy.Read.All`
* `Mail.Send`
* `Organization.Read.All`
* `Place.Read.All`
* `Policy.Read.All`
* `Reports.Read.All`
* `ReportSettings.ReadWrite.All`
* `RoleAssignmentSchedule.Read.Directory`
* `RoleManagement.Read.All`
* `RoleManagement.Read.Directory`
* `Team.Create`
* `TeamSettings.ReadWrite.All`
* `User.ReadWrite.All`
* `UserAuthenticationMethod.ReadWrite.All`
* `WindowsUpdates.ReadWrite.All`

### Outras Permissões da API da Aplicação

Conceda as seguintes Permissões da API do Office 365 Exchange Online à identidade gerida

* `Exchange.ManageAsApp`

Conceda as seguintes Permissões da API WindowsDefenderATP à identidade gerida

* `Machine.Read.All`
* `Machine.Isolate`
* `Machine.RestrictExecution`
* `Ti.ReadWrite.All`

Conceda as seguintes Permissões da API do SharePoint à identidade gerida

* `User.Read.All`
* `Sites.Read.All`
* `Sites.FullControl.All`

### Concessão de Funções e Permissões

Atualmente, não é possível conceder permissões a Identidades Geridas usando o Azure Portal. Recomendamos usar scripts de MS Graph / PowerShell para isso.

Pode encontrar um exemplo deste processo [aqui](https://github.com/Workplace-Foundation/approle-and-directoryrole-granter).

### Permissões de Recursos Azure

Conceda pelo menos acesso de "Contribuidor" à subscrição ou ao grupo de recursos que aloja a Azure Automation Account para os runbooks

Alguns runbooks usarão uma Azure Storage Account para armazenar relatórios ou cópias de segurança. Conceda pelo menos acesso de "Contribuidor" à subscrição ou ao grupo de recursos correspondente. A maioria dos runbooks pode então criar os recursos no grupo de recursos por si própria.

## Métodos de Autenticação

### Identidades Geridas

O Azure Automation suporta [Identidades Geridas](https://docs.microsoft.com/en-us/azure/automation/enable-managed-identity-for-automation) (atribuída pelo sistema) como a principal forma de autenticação. Isto substitui as obsoletas RunAs Accounts.

Os RealmJoin Runbooks atualmente suportam RunAs Accounts se não estiver configurada nenhuma identidade gerida.

{% hint style="warning" %}
Se uma Managed Identity e uma RunAs Account estiverem configuradas ao mesmo tempo, os runbooks do repositório partilhado do RealmJoin irão automaticamente dar preferência ao uso da Managed Identity ao usar versões mais recentes do nosso módulo de suporte `RealmJoin.RunbookHelper` Módulo a partir da v0.8.0.

Versões anteriores do módulo não conseguiam utilizar totalmente as Managed Identities e preferiam a RunAs Account.

Certifique-se de que concede as permissões necessárias à Managed Identity ou de que a desativa completamente para usar apenas a RunAs Account.
{% endhint %}

### Segredo do Cliente

Alguns runbooks privados podem precisar de autenticação do tipo ClientID/Secret. Atualmente não existem runbooks partilhados que exijam ClientID e Secret.

Se necessário, um ClientID e Secret podem ser armazenados nas credenciais geridas chamadas "realmjoin-automation-cred" na Azure Automation Account.

Atualmente, a "realmjoin-automation-cred" na conta de automação é criada por predefinição pelo RJ-Wizard, mas preenchida com valores aleatórios - teria de ser preenchida com valores corretos.


---

# 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:

```
GET https://docs.realmjoin.com/pt/automacao/connecting-azure-automation/azure-ad-roles-and-permissions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
