section Exigences
Cette page wiki explique quelles exigences et quelles autorisations (au niveau système) doivent être accordées pour que les runbooks puissent être exécutés.
Modules PowerShell
Les runbooks partagés disponibles sur GitHub s'attendent/utilisent les modules Windows PowerShell 5.1 suivants :
RealmJoin.RunbookHelperAz.AccountsAz.StorageAzureADExchangeOnlineManagement
Le portail RealmJoin importera et installera automatiquement ces modules s'ils sont référencés depuis un runbook. Cet import respectera également les versions minimales spécifiées pour les modules.
Autorisations
Les runbooks partagés de RealmJoin utilisent l' identité gérée attribuée par le système pour interagir avec Entra ID, l'API Microsoft Graph, etc.
La liste suivante de rôles et d'autorisations vous permettra d'utiliser tous les runbooks actuellement disponibles dans notre dépôt partagé.
Il n'est pas recommandé de réduire ces rôles/autorisations car les runbooks sont testés uniquement avec cet ensemble d'autorisations. Si vous réduisez l'ensemble des rôles/autorisations, certains runbooks cesseront de fonctionner.
Rôles Entra ID
Veuillez attribuer les rôles Entra ID suivants à l'identité gérée
Administrateur des utilisateurs
Administrateur des appareils cloud
Administrateur Exchange
Administrateur Teams
Autorisations de l'API Graph
Veuillez accorder les autorisations Graph API suivantes à l'identité gérée
AppCatalog.ReadWrite.AllApplication.ReadWrite.AllAuditLog.Read.AllBitlockerKey.Read.AllChannel.Delete.AllChannelMember.ReadWrite.AllChannelSettings.ReadWrite.AllCloudPC.ReadWrite.AllDevice.Read.AllDeviceLocalCredential.Read.AllDeviceManagementApps.ReadWrite.AllDeviceManagementConfiguration.ReadWrite.AllDeviceManagementManagedDevices.PrivilegedOperations.AllDeviceManagementManagedDevices.ReadWrite.AllDeviceManagementServiceConfig.ReadWrite.AllDirectory.ReadWrite.AllGroup.ReadWrite.AllIdentityRiskyUser.ReadWrite.AllInformationProtectionPolicy.Read.AllMail.SendOrganization.Read.AllPlace.Read.AllPolicy.Read.AllReports.Read.AllRoleManagement.Read.AllTeam.CreateTeamSettings.ReadWrite.AllUser.ReadWrite.AllUserAuthenticationMethod.ReadWrite.AllWindowsUpdates.ReadWrite.All
Autres autorisations d'API d'applications
Veuillez accorder les autorisations d'API Office 365 Exchange Online suivantes à l'identité gérée
Exchange.ManageAsApp
Veuillez accorder les autorisations d'API WindowsDefenderATP suivantes à l'identité gérée
Machine.Read.AllMachine.IsolateMachine.RestrictExecutionTi.ReadWrite.All
Veuillez accorder les autorisations d'API SharePoint suivantes à l'identité gérée
User.Read.AllSites.Read.AllSites.FullControl.All
Attribution des rôles et autorisations
L'attribution des autorisations aux identités gérées ne peut actuellement pas se faire via le portail Azure. Nous recommandons d'utiliser Microsoft Graph / des scripts PowerShell pour cela.
Vous pouvez trouver un exemple de ce processus ici.
Autorisations des ressources Azure
Veuillez donner au minimum un accès « Contributeur » à l'abonnement ou au groupe de ressources hébergeant le compte Azure Automation pour les runbooks
Certains runbooks utiliseront un compte de stockage Azure pour stocker des rapports ou des sauvegardes. Veuillez donner au minimum un accès « Contributeur » à l'abonnement ou au groupe de ressources correspondant. La plupart des runbooks pourront alors créer les ressources à l'intérieur du groupe de ressources par eux-mêmes.
Méthodes d'authentification
Identités gérées
Azure Automation prend en charge Identités gérées (attribuée par le système) comme principale méthode d'authentification. Cela remplace les comptes RunAs obsolètes.
Les runbooks RealmJoin prennent actuellement en charge les comptes RunAs si aucune identité gérée n'est configurée.
Si une identité gérée et un compte RunAs sont configurés en même temps, les runbooks du dépôt partagé de RealmJoin préféreront automatiquement l'utilisation de l'identité gérée lorsqu'ils utilisent des versions plus récentes de notre RealmJoin.RunbookHelper module à partir de la v0.8.0.
Les versions plus anciennes du module ne pouvaient pas pleinement exploiter les identités gérées et privilégiaient le compte RunAs.
Veuillez vous assurer que vous accordez les autorisations nécessaires à l'identité gérée ou désactivez-la complètement pour n'utiliser que le compte RunAs.
Secret client
Certains runbooks privés peuvent nécessiter une authentification de type ClientID/Secret. Actuellement, aucun runbook partagé ne requiert ClientID et Secret.
Si nécessaire, un ClientID et un Secret peuvent être stockés dans les informations d'identification gérées nommées « realmjoin-automation-cred » dans le compte Azure Automation.
Actuellement, le « realmjoin-automation-cred » dans le compte d'automatisation est créé par défaut par l'assistant RJ, mais rempli de valeurs aléatoires ; elles devront être remplacées par des valeurs correctes.
Compte utilisateur (problématique)
Les anciens modules peuvent nécessiter un véritable objet utilisateur pour fonctionner.
Microsoft Teams est désormais capable de fonctionner via une identité gérée. Tous les runbooks Voice/Phone ont été adaptés pour utiliser l'identité gérée.
Si vous souhaitez utiliser un utilisateur factice, vous devrez
Créer un objet utilisateur (ADM), par ex.
ADM-ServiceUser.TeamsAutomationAttribuer un mot de passe à l'utilisateur
Définir le mot de passe pour qu'il n'expire jamais (ou suivre les modifications du mot de passe en conséquence)
Désactiver l'authentification multifacteur pour cet utilisateur / s'assurer que l'accès conditionnel ne bloque pas l'utilisateur
Créer un objet d'identifiants dans le compte Azure Automation que vous utilisez pour les runbooks RealmJoin, nommer les identifiants par ex.
fakeuseret stocker les identifiants.
Il ne s'agit pas d'une approche recommandée et elle doit être évitée. Aucun runbook par défaut n'utilise plus ce scénario.
Mis à jour
Ce contenu vous a-t-il été utile ?