11 commandes PowerShell pour Office 365 que vous devez connaître





L'utilisation de PowerShell pour gérer Office 365 peut rendre votre travail plus rapide, plus efficace et plus facile. PowerShell vous donne accès à des informations sur votre environnement Office 365 qui ne sont pas accessibles via le centre d'administration Microsoft 365 et vous permet d'effectuer des opérations en bloc avec une seule commande. En intégrant les produits Office 365 dans une seule interface, PowerShell simplifie également le contrôle d'accès des utilisateurs et renforce la cybersécurité.



Cet article explique les commandes Office 365 PowerShell les plus utiles pour les administrateurs système. Nous avons divisé ces commandes en trois catégories: Automatisation, Création de rapports et Configuration, afin que vous puissiez trouver rapidement ce dont vous avez besoin.



Comment PowerShell peut vous aider à travailler avec Office 365







Le centre d'administration Microsoft 365 est idéal pour les utilisateurs occasionnels. À l'aide de ce système, vous pouvez gérer vos comptes d'utilisateurs et licences Office 365, ainsi que des services tels qu'Exchange Online, Teams et SharePoint Online. Vous pouvez également gérer tous ces composants à l'aide de PowerShell. Son utilisation simplifie grandement l'automatisation et rend votre travail plus efficace.



En particulier, plusieurs facteurs clés facilitent la gestion d'Office 365 à l'aide de PowerShell:



  • PowerShell pour Office 365 affiche des informations supplémentaires que vous ne pouvez pas voir dans le centre d'administration Microsoft 365.
  • PowerShell , Office 365;
  • Office 365 , PowerShell Office 365 ;
  • ;
  • PowerShell Office 365 , Office 365. ;
  • Office 365 CSV-;
  • PowerShell .


Toutes ces fonctionnalités sont extrêmement utiles pour les administrateurs système. Cependant, il convient de noter que PowerShell aide à améliorer la gestion d'Office 365 et ne remplace pas le centre d'administration Microsoft 365. Certaines tâches seront plus efficaces via le centre d'administration et, inversement, certaines procédures de configuration ne peuvent être effectuées qu'à l'aide des commandes PowerShell.



Une fois que vous maîtrisez les bases de PowerShell, le système est extensible de manière presque illimitée. Il existe des dizaines d' outils PowerShell qui peuvent simplifier et accélérer l'administration du système, et l'utilisation de la ligne de commande vous permettra d'exécuter des scripts pour automatiser les tâches fréquentes et chronophages.



Enfin, essayez l' environnement de script intégré PowerShell (ISE) pour tous vos besoins PowerShell. Cet environnement facilite non seulement la création de scripts PowerShell, mais améliore également l'interaction avec l'interface de ligne de commande.



Commandes PowerShell pour l'automatisation d'Office 365







Au lieu de traiter manuellement des dizaines de comptes d'utilisateurs, vous pouvez utiliser PowerShell pour collecter, filtrer et organiser rapidement les informations sur vos utilisateurs Office 365. Ensuite, à l'aide de la même interface de ligne de commande, vous pouvez effectuer des actions en bloc sur le compte souhaité.



Les commandes PowerShell les plus utiles pour l' automatisation d' Office 365 sont:



1. Connectez-vous à l'application Office 365 à l'aide de PowerShell



Avant de pouvoir commencer à utiliser PowerShell pour Office 365, vous devez télécharger et installer le module Office 365 pour Windows PowerShell et le connecter à votre instance Office 365.



Voici comment procéder:



  • Téléchargez et installez l' Assistant de connexion Microsoft Online Services pour les professionnels de l'informatique, RTW .
  • Importez le module des services en ligne PowerShell pour Microsoft Azure Active Directory et Office 365 à l'aide des commandes PowerShell suivantes:



    1.	Install-Module -Name AzureAD
    2.	
    3.	Install-Module -Name MSOnline
    
          
          





  • Entrez vos informations d'identification d'administrateur Office 365:



    $Cred = Get-Credential
          
          





    Vous devez maintenant créer une session PowerShell en tant qu'utilisateur distant. Cela peut être fait avec la commande suivante:



     $O365 = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic -AllowRedirection
          
          





  • Maintenant, importez les commandes de session dans votre session Windows PowerShell locale:



    Import-PSSession $O365
          
          





  • Enfin, connectez votre session à tous vos services Office 365 à l'aide de cette commande:



    Connect-MsolService –Credential $O365
          
          





    Cela connectera et gérera Office 365 PowerShell pour votre instance Office 365.



2. Connectez-vous à Exchange Online et SharePoint Online à l'aide de PowerShell



Vous pouvez vous connecter à Microsoft Exchange Online et Microsoft SharePoint Online pour gérer ces services à l'aide de PowerShell.



  • La connexion à Exchange Online est essentiellement identique à la connexion à Office 365. Voici les commandes pertinentes:



    1.	$Cred = Get-Credential
    2.	
    3.	$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic –AllowRedirection
    
          
          





  • La connexion à SharePoint Online est un peu plus complexe et vous devrez installer des logiciels supplémentaires.



    Tout d'abord, installez le composant SharePoint Online Management Shell .



    Ensuite, exécutez la commande suivante à partir de PowerShell:



    1.	$admin="Admin@enterprise.onmicrosoft.com"
    2.	
    3.	$orgname="enterprise"
    4.	
    5.	$userCred = Get-Credential -UserName $admin -Message " ."
    6.	
    7.	Connect-SPOService -Url https://$orgname-admin.sharepoint.com -Credential $userCred
    
          
          







3. Liste des applets de commande PowerShell disponibles pour Office 365



Les applets de commande sont le type principal d'applets de commande PowerShell pour Office 365, et vous les utiliserez le plus. PowerShell pour Office 365, comme la plupart des CLI, vous permet de voir une liste de toutes les applets de commande disponibles pour votre système.



  • Pour répertorier toutes les applets de commande disponibles pour MSOnline, exécutez la commande suivante:



    Get-Command -module MSOnline
          
          



  • Vous pouvez également exécuter la même commande pour afficher une liste de toutes les applets de commande disponibles pour Azure Active Directory en remplaçant simplement la variable -module:



    Get-Command -module AzureAD
          
          





4. Liste de tous les utilisateurs d'Office 365



L'une des utilisations les plus courantes de PowerShell est d'obtenir une liste de tous les utilisateurs d'Office 365. Dans PowerShell, vous pouvez le faire avec une seule applet de commande: Get-msoluser .



Cette cmdlet vous montrera tous les utilisateurs d'Office 365 avec une licence valide et obtiendra automatiquement des informations de base sur chacun d'eux: paramètres DisplayName, City, Department et ObjectID.



  • Pour ce faire, exécutez la commande:



    1.	Get-MsolUser | Select DisplayName, City, Department, ObjectID 
          
          



  • Ensuite, vous pouvez voir le nombre de comptes en exécutant une commande similaire:



    1.	Get-MsolAccountSku
          
          



  • Et pour obtenir une liste des services disponibles, exécutez cette commande:



    1.	Get-MsolAccountSku | select -ExpandProperty ServiceStatus
          
          



  • En utilisant la logique de ligne de commande standard, ces commandes peuvent être étendues pour filtrer les résultats. Par exemple, vous pouvez regrouper tous les utilisateurs en fonction de leur emplacement en exécutant:



    1.	Get-MsolUser | Select DisplayName, UsageLocation | Sort UsageLocation, DisplayName
          
          





5. Créer un nouvel utilisateur dans Office 365 à l'aide de PowerShell



PowerShell peut être utilisé pour automatiser le processus de création de nouveaux utilisateurs sur votre système. Pour ce faire, utilisez la cmdlet New-MsolUser :

pour automatiser le processus de création d'utilisateur, utilisez cette cmdlet avec les variables appropriées:



1.	New-MsolUser -UserPrincipalName JSmith@enterprise.onmicrosoft.com -DisplayName "John Smith" -FirstName “John” -LastName “Smith”

      
      





Après avoir exécuté cette commande, PowerShell affichera des informations sur l'utilisateur que vous avez créé, y compris son mot de passe temporaire et l'état de la licence.



6. Modifiez le mot de passe dans Office 365 à l'aide de PowerShell



L'une des tâches les plus courantes et les plus ennuyeuses pour les administrateurs système est de changer le mot de passe d'un utilisateur. Idéalement, utilisez un gestionnaire de mots de passe pour cela , mais PowerShell vous donne la possibilité de mettre à jour automatiquement les mots de passe des utilisateurs individuels.



Pour ce faire, exécutez la commande:



1.	Set-MsolUserPassword -UserPrincipalName JSmith@netwrixqcspa.onmicrosoft.com -NewPassword P@SSw0rd!

      
      





Vous pouvez également omettre le paramètre -NewPassword , auquel cas le système générera automatiquement un mot de passe aléatoire:



1.	Set-MsolUserPassword -UserPrincipalName JSmith@netwrixqcspa.onmicrosoft.com

      
      





Commandes Windows PowerShell pour la création de rapports







PowerShell pour Office 365 est un excellent outil de création de rapports. L'utilisation des applets de commande PowerShell permet d'accéder, de trier et de corréler rapidement et facilement les informations sur les utilisateurs d'Office 365, ainsi que les informations sur la manière dont ils utilisent le système.



Il convient de noter que la plupart des applets de commande de rapport ont été abandonnées en janvier 2018. Microsoft a remplacé ces applets de commande par la nouvelle API Microsoft Graph Reporting. Cela a réduit les capacités de création de rapports de PowerShell dans Office 365, mais toutes les anciennes fonctionnalités sont toujours disponibles via le centre de sécurité et de conformité d'Office 365.



Cependant, en ce qui concerne les rapports d'utilisateurs et de groupes, PowerShell pour Office 365 reste un outil clé. Vous trouverez ci-dessous certains des rapports les plus utiles pour lesquels vous pouvez utiliser PowerShell.



1. Plans de licence



PowerShell possède une applet de commande extrêmement utile qui vous permet de voir un résumé de vos plans de licence actuels et des licences disponibles pour chaque plan. Pour l'utiliser, procédez comme suit.



Pour ce faire, exécutez la commande:



1.	Get-MsolAccountSku

      
      





En conséquence, vous recevrez un rapport contenant plusieurs informations clés:



  • AccountSkuld - affiche les plans de licence disponibles pour votre organisation;
  • ActiveUnits Le nombre de licences que vous avez achetées pour un plan de licence spécifique.
  • WarningUnits Nombre de licences non renouvelées dans le plan de licence qui expirent à la fin de la période de grâce de 30 jours.
  • ConsumedUnits est le nombre de licences que vous avez attribuées aux utilisateurs à partir d'un plan de licence spécifique.


Vous pouvez également utiliser une syntaxe supplémentaire pour obtenir plus d'informations sur vos licences ou filtrer et trier les résultats. Pour plus d'informations sur la façon de procéder, consultez la documentation Microsoft sur l'utilisation de PowerShell pour la création de rapports .



2. Comptes d'utilisateurs



Une autre applet de commande de création de rapports utile est Get-MsolUser , qui renvoie une liste de tous les comptes d'utilisateurs Office 365. Voici comment vous pouvez utiliser cette commande.



Exécutez la commande:




1.	Get-MsolUser

      
      





Vous verrez une liste complète des comptes d'utilisateurs avec des noms correspondants. Vous pouvez également ajouter un certain nombre d'options pour filtrer les comptes affichés. Par exemple, pour obtenir une liste des utilisateurs sans licence (utilisateurs qui ont été ajoutés à Office 365 mais n'ont pas encore reçu de licence pour utiliser l'un des services), exécutez la commande suivante:



1.	Get-MsolUser -UnlicensedUsersOnly

      
      





Vous pouvez utiliser l'applet de commande where pour explorer davantage des comptes spécifiques .



Pour combiner les deux applets de commande, utilisez la barre verticale «|»: cela signifie que PowerShell pour Office 365 prendra les résultats de la première commande et les enverra à la commande suivante. Par exemple, si vous souhaitez afficher uniquement les comptes d'utilisateurs qui n'ont pas d'emplacement spécifié, vous pouvez utiliser une commande comme celle-ci:



1.	Get-MsolUser | Where {{$_.UsageLocation -eq $Null}}

      
      





En ajoutant une syntaxe supplémentaire après le tube "|", vous pouvez affiner les rapports et obtenir des listes d'utilisateurs avec n'importe quelle combinaison d'attributs.



3. Rapports par e-mail



PowerShell est également un outil puissant pour vérifier l'utilisation des e-mails et les utilisateurs. En fait, c'est l'une des principales applications système en matière de reporting. Voici quelques rapports utiles concernant le courrier électronique:



  • Vous pouvez utiliser PowerShell pour obtenir des informations sur chaque boîte aux lettres de votre système à l'aide de la commande suivante:



    1.	Get-mailbox | get-MailboxStatistics
    
          
          





  • Vous pouvez également obtenir une liste de toutes les boîtes aux lettres qui n'ont pas été connectées depuis 30 jours (ou toute autre période dont vous avez besoin, ce qui signifie que vous devez fermer ces boîtes aux lettres). Pour ce faire, exécutez la commande:



    1.	Get-Mailbox –RecipientType 'UserMailbox' | Get-MailboxStatistics | Sort-Object LastLogonTime | Where {{$_.LastLogonTime –lt ([DateTime]::Now).AddDays(-30) }} | Format-Table DisplayName, LastLogonTime
    
          
          





  • , , . . :



    1.	Get-MailTrafficTopReport
    
          
          







PowerShell Office 365







PowerShell est également extrêmement utile pour personnaliser votre environnement Office 365. Comme nous le soulignons dans notre didacticiel vidéo gratuit sur les paramètres Office 365 masqués qui peuvent être déverrouillés à l'aide de PowerShell , certaines options de configuration ne sont disponibles que via l'interface PowerShell.



Les commandes PowerShell les plus utiles et les plus couramment utilisées pour la configuration sont celles liées à la gestion des groupes d'utilisateurs et à la création de nouveaux sites SharePoint. Ces tâches compliquent souvent le travail des administrateurs système et leur automatisation peut faire gagner beaucoup de temps.



1. Configurez les paramètres «masqués» à l'aide de PowerShell pour Office 365



Comme nous l'avons mentionné précédemment, certaines des options de configuration d'Office 365 ne sont accessibles qu'à l'aide de PowerShell.



L'exemple le plus frappant est celui des options de configuration de Skype Entreprise. Le centre d'administration en ligne de ce service contient plusieurs options permettant de personnaliser son fonctionnement pour votre organisation. Cependant, avec PowerShell, vous aurez accès à plus d'options de configuration. Par exemple, les conférences Skype standard sont configurées de telle sorte que:



  • les utilisateurs anonymes peuvent se connecter automatiquement à chaque conférence;
  • les participants peuvent enregistrer la conférence;
  • tous les utilisateurs de votre organisation peuvent être désignés comme présentateurs.


Pour modifier ces paramètres par défaut, vous pouvez utiliser Powershell. Voici la commande pour désactiver les trois options ci-dessus:



1.	Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $False -AllowConferenceRecording $False -DesignateAsPresenter "None"

      
      





Si vous souhaitez réinitialiser les paramètres à leurs valeurs par défaut, utilisez la commande suivante:



1.	Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $True -AllowConferenceRecording $True -DesignateAsPresenter "Company"

      
      





Ceci n'est qu'un exemple de paramètres masqués auxquels vous pouvez accéder à l'aide de PowerShell. Visitez notre cours en ligne gratuit pour en savoir plus .



2. Gérer l'appartenance au groupe Office 365 à l'aide de PowerShell



PowerShell a plusieurs applets de commande spécifiquement pour travailler avec les groupes Office 365. Par exemple ...



Exécutez la commande pour afficher une liste de tous les groupes actifs dans Office 365.



1.	Get-MsolGroup

      
      





Cette commande vous fournira également l'ID hexadécimal de chaque groupe dont vous aurez besoin pour gérer votre adhésion.



Pour ajouter et supprimer des membres du groupe, vous aurez également besoin de l'ID hexadécimal de leurs comptes, qui peut être obtenu avec la commande:



1.	Get-MsolUser | Select ObjectID.

      
      





Ensuite, vous pouvez exécuter l'applet de commande appropriée pour ajouter ou supprimer des utilisateurs de groupes spécifiques . Pour ajouter des utilisateurs, exécutez la commande suivante, en remplaçant les ID hexadécimaux indiqués dans l'exemple par des ID liés à votre groupe et à l'utilisateur souhaité:



1.	Add-MsolGroupMember -GroupObjectId 5b61d9e1-a13f-4a2d-b5ba-773cebc08eec -GroupMemberObjectId a56cae92-a8b9-

      
      





Pour supprimer des utilisateurs des groupes, vous pouvez exécuter la même commande, mais avec la première partie modifiée:



1.	Remove-MsolGroupMember

      
      





Comment Varonis interagit avec PowerShell



Varonis complète l'utilisation de PowerShell de plusieurs manières.



surveillance



Varonis surveille et valide l'activité dans Office 365 (y compris les modifications de configuration) et les commandes PowerShell. Cela vous permet de suivre les modifications apportées par les administrateurs ou les attaquants à l'aide de PowerShell.



Les administrateurs doivent apporter des modifications à la configuration ou aux autorisations d'Office 365 avec une demande de modification valide. Ce niveau supplémentaire de vérification garantit le bon déroulement des processus et des procédures.



Les attaquants essaient d'utiliser PowerShell pour désactiver les mesures de sécurité ou élever un compte. Varonis détecte ces modifications et surveille toutes les autres actions entreprises par les attaquants dans Office 365.



Recevez des alertes et agissez



Varonis permet aux utilisateurs d'exécuter des scripts PowerShell lorsqu'ils reçoivent des alertes.

L'utilisation la plus courante de cette fonctionnalité est de répondre automatiquement aux attaques de ransomware. Le modèle de menace ransomware invoque un script qui désactive le compte utilisateur et arrête tous les ordinateurs auxquels ils se connectent pour arrêter l'attaque.



Conclusion



PowerShell est un outil efficace pour travailler avec Office 365. Il vous permet d'accéder rapidement aux informations du système, de générer des rapports détaillés et d'effectuer des actions en masse. Il vous permet également d'accéder à certaines fonctionnalités d'Office 365 qui ne sont disponibles d'aucune autre manière.



La connexion de Powershell à Office 365 est relativement simple et, par conséquent, vous aurez accès à toutes les fonctionnalités avancées répertoriées ci-dessus. Il vous permettra également d'intégrer plus facilement votre environnement Office 365 avec la plateforme de cybersécurité Varonis et de protéger les données sensibles.



All Articles