> 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/fr/automatisation/connecting-azure-automation.md).

# Connexion à Azure Automation

## Aperçu

{% embed url="<https://www.youtube.com/watch?v=Ijp9XnE8UuA>" %}

Pour permettre à RealmJoin Portal de fournir [runbooks ](/fr/automatisation/runbooks.md)pour automatiser les tâches quotidiennes, vous devez connecter un [Azure Automation](https://learn.microsoft.com/en-us/azure/automation/overview) compte. Ce compte Automation servira d’hôte pour vos runbooks et fournira les [autorisations](/fr/automatisation/connecting-azure-automation/azure-ad-roles-and-permissions.md) requises pour que les runbooks fonctionnent dans votre environnement.

## Considérations

Du compte Automation [Managed Identity](https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview) nécessite des autorisations étendues [autorisations ](/fr/automatisation/connecting-azure-automation/azure-ad-roles-and-permissions.md)dans votre environnement, comme la possibilité de modifier des objets de groupe ou d’utilisateur dans Entra ID ou de gérer des boîtes aux lettres dans Exchange Online. Limitez l’accès administratif à ce compte afin d’éviter toute utilisation abusive de ces privilèges.

Lorsque vous utilisez un compte Automation existant, notez que RealmJoin Portal crée, met à jour et supprime automatiquement les runbooks provenant du [référentiel en ligne partagé de runbooks](https://github.com/realmjoin/realmjoin-runbooks). Cette fonctionnalité peut ne pas être prise en charge dans un compte Automation existant. En cas de doute, nous recommandons de créer un compte Azure Automation dédié pour RealmJoin Runbooks.

## Prérequis

* privilèges d’administrateur global
* L’accès à PowerShell avec le [Az](https://learn.microsoft.com/en-us/powershell/azure/?view=azps-15.3.0) module ou [AZ CLI](https://learn.microsoft.com/en-us/cli/azure/?view=azure-cli-latest)
* autorisations de contributeur sur un abonnement Azure
* [Exigences relatives aux runbooks](/fr/automatisation/connecting-azure-automation/azure-ad-roles-and-permissions.md)

## Instructions

{% stepper %}
{% step %}

#### Créer un compte Azure Automation

1. Accédez à votre [Azure Portal > Automation Accounts](https://portal.azure.com/#create/Microsoft.AutomationAccount)
2. Créer un nouveau compte Automation
3. Dans l’onglet De base, choisissez l’abonnement, le groupe de ressources, le nom du compte Automation et la région souhaités<br>

   <figure><img src="/files/db9ed3e1cc0814e9deb4928afc5fb5da8044ff9f" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Un groupe de ressources distinct pour votre compte Automation est recommandé
{% endhint %}

4. Dans l’onglet Avancé, assurez-vous que l’identité managée attribuée par le système est activée

   <figure><img src="/files/1cafc831258876e2adda3ba55891315f6b8b9232" alt=""><figcaption></figcaption></figure>
5. Sélectionnez Vérifier + créer puis créez votre compte Automation
6. Accédez au groupe de ressources contenant votre compte Azure Automation
7. Dans l’onglet IAM, attribuez le rôle de contributeur à votre compte Azure Automation
   {% endstep %}

{% step %}

#### Attribuer des autorisations à Azure Automation Account

Les runbooks partagés de RealmJoin utilisent l’identité managée attribuée par le système d’Azure Automation pour interagir avec Entra ID, l’API Microsoft Graph, etc.

Les autorisations Managed Identity ne peuvent actuellement pas être accordées via Azure Portal. Utilisez Microsoft Graph ou PowerShell pour attribuer ces autorisations.

1. Téléchargez les scripts PowerShell et les fichiers JSON suivants dans le même dossier.\
   Le script attribuera l’ensemble complet d’autorisations requis par RealmJoin. Les rôles et autorisations peuvent être consultés dans le [Prérequis](/fr/automatisation/connecting-azure-automation/azure-ad-roles-and-permissions.md) section et ajustés si nécessaire dans les fichiers JSON.

{% tabs %}
{% tab title="GrantAppPermToEntApp.ps1" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/GrantAppPermToEntApp.ps1>" %}
{% endtab %}

{% tab title="AssignAzureADRoleToEntApp.ps1" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/AssignAzureADRoleToEntApp.ps1>" %}
{% endtab %}

{% tab title="RJvNextPermissions.json" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/RealmJoinVnext/RJvNextPermissions.json>" %}
{% endtab %}

{% tab title="RJvNextRoles.json" %}
{% @github-files/github-code-block url="<https://github.com/Workplace-Foundation/approle-and-directoryrole-granter/blob/main/RealmJoinVnext/RJvNextRoles.json>" %}
{% endtab %}
{% endtabs %}

2. Notez l’ID d’objet de la Managed Identity du compte Azure Automation dans Paramètres du compte > Identité

   <figure><img src="/files/c299911d7bcf1e444b7dce5164d403431f1c45ff" alt=""><figcaption></figcaption></figure>
3. Ouvrez une fenêtre PowerShell.
4. Accédez au dossier contenant les fichiers téléchargés

```
cd c:\temp\myfolder
```

5. Débloquez les scripts si nécessaire\
   ![](/files/5ea129a61c5f098f0212d06f68416516fae5c1ca)
6. Attribuez les autorisations Microsoft Graph à votre compte Azure Automation à l’aide de GrantAppPermToEntApp.ps1, en remplaçant xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx par l’ID d’objet de votre compte Automation

```
. .\GrantAppPermToEntApp.ps1 -enterpriseAppObjId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -permissionsTemplate .\RJvNextPermissions.json
```

7. Attribuez des rôles d’administrateur Entra ID à votre compte Azure Automation à l’aide de AssignAzureADRoleToEntApp.ps1 en remplaçant xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx par l’ID d’objet de votre compte Automation

```
. .\AssignAzureADRoleToEntApp.ps1 -objectId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -rolesTemplate .\RJvNextRoles.json
```

8. Le compte Azure Automation devrait désormais disposer des autorisations correctes pour exécuter les runbooks<br>
   {% endstep %}

{% step %}

#### Configuration des runbooks RealmJoin - Partie 1

1. Dans RealmJoin Portal, allez à '[Paramètres -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'.<br>

   <figure><img src="/files/105709dc3c962f0f3a52f551d21c27cc03eb01ef" alt=""><figcaption></figcaption></figure>
2. Renseignez l’ID du Tenant, l’ID de l’abonnement et le nom du groupe de ressources appartenant au compte Azure Automation\
   L’ID du Tenant dans la [page Vue d’ensemble d’Entra ID](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview)

   <figure><img src="/files/454f0d79bb0350c0570cd9cbfd2d56d24a0faffe" alt=""><figcaption></figcaption></figure>
3. Copiez le script en rouge ci-dessous *ResourceGroup.*\
   Ce script crée un Service Principal dans Entra ID avec accès à votre compte Automation, permettant à RealmJoin de gérer, d’exécuter et de surveiller les runbooks.\
   Le script est mis à jour en fonction des entrées pour l’ID du Tenant, l’ID de l’abonnement et le groupe de ressources.<br>

   <figure><img src="/files/460b73177ff79617acafb4acab8d1b2d1d96c35e" alt=""><figcaption></figcaption></figure>
4. Laissez l’assistant ouvert pour le moment. Nous y reviendrons sous peu dans la partie 2.
   {% endstep %}

{% step %}

#### Accorder l’accès de RealmJoin à Azure Automation

{% hint style="info" %}
Vous pouvez utiliser [Azure CloudShell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview), vous n’avez donc pas besoin d’installer ni d’authentifier une copie locale de AZ CLI.
{% endhint %}

1. Exécutez dans PowerShell le script copié précédemment.

   <figure><img src="/files/1e32cc4ae2e27c7cb809f5d43d0e5aac382cd9b3" alt=""><figcaption></figcaption></figure>
2. Notez les valeurs de `appId` et `mot de passe`.\
   L’inscription d’application « RealmJoin Runbook Management » sera créée.<br>

   ![Inscriptions d’applications dans Azure Portal](/files/9ecbff2338e5647d6274cbf150a1944c755ccf70)
   {% endstep %}

{% step %}

#### Configuration des runbooks RealmJoin - Partie 2

1. Dans RealmJoin Portal, revenez à la fenêtre/l’assistant ouvert pour '[Paramètres -> Runbooks](https://portal.realmjoin.com/settings/runbooks-configuration)'
2. Renseignez les valeurs manquantes pour `appId` et `mot de passe` créé à l’étape précédente
3. Renseignez le nom du compte Automation créé [précédemment](#create-an-azure-automation-account)
4. Choisissez la branche du référentiel partagé de runbooks que vous souhaitez suivre.\
   En cas de doute, veuillez choisir `production`\
   Toutes les branches de runbooks peuvent être consultées ici : <https://github.com/realmjoin/realmjoin-runbooks>
5. Choisissez le même emplacement que votre compte Azure Automation pour vous assurer que vos runbooks sont exécutés dans la bonne [région Azure](https://docs.microsoft.com/en-us/azure/availability-zones/az-overview)

![Connexion du compte Automation dans RealmJoin Portal](/files/1f58d93cd40d98c0ac7412072ab17fe27e694797)

6. Appuyez sur « Save » pour lancer l’import initial des runbooks. Veuillez laisser cette fenêtre ouverte jusqu’à ce que vous voyiez le message « Sync completed ».

![](/files/88cba0d56359c0c66f8f789dc436d21b1dec7126)
{% endstep %}
{% endstepper %}


---

# 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/fr/automatisation/connecting-azure-automation.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.
