Scénarios de gestion des utilisateurs de PowerShell Office 365

Important :  Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Utilisez ces scénarios PowerShell pour rapidement ajouter des comptes d’utilisateurs à partir d’un fichier, attribuer des licences, gérer l’appartenance aux groupes de distribution, et définir les mots de passe.

Automatiser l’importation de plusieurs utilisateurs

Pour gagner du temps, vous pouvez automatiser l’importation de plusieurs utilisateurs dans Office 365. Pour importer un grand nombre d’utilisateurs, vous devez commencer par préparer un fichier de valeurs séparées par des virgules (CSV) avec des informations utilisateur pertinentes. Les informations minimales requises pour créer un compte d’utilisateur sont un Nom d’affichage et un Nom d’utilisateur principal (UPN).

Un nom d’utilisateur principal est le nom d’un utilisateur au format d’adresse e-mail. Le nom d’utilisateur (ou « nomutilisateur ») est suivi du signe arobase, puis du nom du domaine Internet de votre abonnement Office 365. Un exemple de nom d’utilisateur principal est nicolettaG@contoso.com. Vous pouvez également fournir des données pour toute propriété de compte d’utilisateur accessible en écriture, telle que l’emplacement, le numéro de contact et l’emplacement.

Pour les propriétés de compte utilisateur de base, telles que le nom d’utilisateur principal et le nom d’affichage, préparez un fichier CSV avec les deux en-têtes de colonne suivants :

  • UserPrincipalName, DisplayName

Ensuite, ajoutez un nouveau compte d’utilisateur sur chaque ligne du fichier CSV en entrant le nom d’utilisateur principal et le nom complet, séparés par une virgule.

Remarque : Étant donné que vous ne spécifiez pas de mot de passe pour chaque nouveau compte, Office 365 les génère.

Stockez le fichier CSV dans un emplacement auquel vous pouvez accéder, par exemple, C:\O365Admin\NewUsers.CSV. Vous êtes à présent prêt à créer des comptes d’utilisateurs.

Pour commencer, vous devez vous connecter à Office 365 avec le Module Windows Azure Active Directory pour Windows PowerShell. Pour obtenir des instructions, voir Se connecter à PowerShell Office 365.

Ensuite, spécifiez le chemin d’accès et le nom de fichier entre guillemets, en supprimant le texte d’instruction et les caractères < et >.

$fileName="<path and file name of the CSV file, example C:\O365Admin\NewUsers.CSV>"
Import-Csv $fileName | ForEach { New-MsolUser -UserPrincipalName  $_.UserPrincipalName -DisplayName $_.DisplayName }

Exécutez les commandes ainsi obtenues à partir de la fenêtre du Module Microsoft Azure Active Directory pour Windows PowerShell.

Pour plus d’informations sur le compte d’utilisateur, préparez un fichier CSV avec les en-têtes de colonne suivants, et remplissez autant de lignes utilisateur que nécessaire :

  • UserPrincipalName,DisplayName,FirstName,LastName,Title,Password,UsageLocation,Office,Department,MobilePhone,StreetAddress,City,State,PostalCode,Country

Remarque : Les en-têtes de colonnes ne doivent comporter d’espace, car chacun doit être référencé par l’élément _ $. de la commande Import-Csv. Seuls les champs UserPrincipalName et DisplayName sont obligatoires, et les valeurs vides sont ignorées. Le code UsageLocation est le code ISO de deux caractères correspondant à la région de l’utilisateur.

Stockez le fichier CSV dans un emplacement auquel vous pouvez accéder, par exemple, C:\O365Admin\NewUsers.CSV. Vous êtes à présent prêt à importer les lignes en tant que comptes d'utilisateurs.

Spécifiez le nom du fichier CSV, puis exécutez les commandes obtenues.

$fileName="<path and file name of the CSV file, example C:\O365Admin\NewUsers.CSV>"
Import-Csv $fileName | ForEach { New-MsolUser -UserPrincipalName   $_.UserPrincipalName -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -Title $_.Title -Department $_.Department -Office $_.Office -MobilePhone $_.MobilePhone -StreetAddress $_.StreetAddress -City $_.City -State $_.State -PostalCode $_.PostalCode -Country $_.Country -Password $_.Password }

Attribuer des licences dans Office 365

Pour disposer d’un accès total à Office 365, les utilisateurs doivent disposer d’une licence Office 365. Dans ce scénario, vous attribuez des licences à des comptes d’utilisateurs.

Pour commencer, vous devez vous connecter à Office 365 avec le Module Windows Azure Active Directory pour Windows PowerShell. Pour obtenir des instructions, voir Se connecter à PowerShell Office 365.

Avant d’attribuer une licence à un utilisateur, vous devez définir l’Emplacement d'utilisation de ce compte d’utilisateur en fonction du code ISO de deux caractères de sa région. L’Emplacement d'utilisation spécifie le pays dans lequel le service doit être utilisé, et détermine les fonctionnalités sous licence disponibles pour cette région. Par exemple, US indique les États-Unis d’Amérique. Voici un exemple de définition de l’Emplacement d'utilisation en fonction du Nom d’utilisateur principal d’un compte d’utilisateur :

Set-MsolUser -UserPrincipalName user@contoso.com -UsageLocation US

Pour afficher la liste des licences disponibles, leurs références (SKU) de compte et la quantité restante à attribuer, exécutez la commande suivante :

Get-MsolAccountSku

Ensuite, entrez la licence et le Nom d’utilisateur principal du compte d’utilisateur, puis exécutez les commandes ainsi obtenues à partir de la fenêtre du Module Microsoft Azure Active Directory pour Windows PowerShell.

$license="<the appropriate value of AccountSkuId from the Get-MsolAccountSku command>"
$userUPN="<the UPN of the user account>"
UserLicense -UserPrincipalName $userUPN -AddLicenses $license

Attribuer des licences à plusieurs utilisateurs

Dans l’exemple précédent, vous attribué une licence à un seul compte d’utilisateur. L’attribution de licences à plusieurs utilisateurs nécessite quelques étapes supplémentaires, mais cela vaut la peine d’y consacrer un peu de temps si le nombre de comptes d’utilisateurs est important.

Pour commencer, vous devez vous connecter à Office 365 avec le Module Windows Azure Active Directory pour Windows PowerShell. Pour obtenir des instructions, voir Se connecter à PowerShell Office 365.

Commencez par afficher la liste des licences disponibles, leurs références (SKU) de compte et la quantité restante à attribuer à l’aide de la commande suivante :

Get-MsolAccountSku

Pour afficher la liste des utilisateurs sans licence, utilisez la commande suivante :

Get-MsolUser -UnlicensedUsersOnly

Pour enregistrer la liste des utilisateurs sans licence dans un fichier CSV dans lequel vous pouvez choisir des comptes d’utilisateurs auxquels attribuer des licences, spécifiez le chemin d’accès et le nom de fichier, puis exécutez les commandes obtenues.

$fileName="<path and file name of the CSV file, example: c:\reports\Unlicensed_Users.CSV>"
Get-MsolUser -UnlicensedUsersOnly | Export-Csv $fileName

Vous pouvez également utiliser la commande Where pour afficher la liste des comptes d’utilisateurs sans licence selon un critère plus spécifique, par exemple, celui des utilisateurs situés aux États-Unis. Voici un exemple :

Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.Country -eq "United States"}

Utilisez ces commandes pour spécifier une propriété de compte d’utilisateur et sa valeur requise ainsi qu’afficher un ensemble spécifique d’utilisateurs sans licence, puis exécutez les commandes obtenues :

$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}

Pour obtenir la liste des propriétés de compte d’utilisateur, entrez le compte d’utilisateur principal d’un utilisateur quelconque, puis exécutez les commandes obtenues.

$userUPN="<the UPN of any user account>"
Get-MsolUser -UserPrincipalName $userUPN | Select * | More

L’exemple suivant affiche tous les utilisateurs sans licence dans la ville de Londres :

$userPropertyName="City"
$userPropertyValue="London"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}

Après avoir identifié le jeu de comptes d’utilisateurs, vous combinez celui-ci avec l’applet de commande Set-MsolUserLicense pour attribuer des licences à chacun d’eux. Indiquez la licence, le nom de la propriété et sa valeur, puis exécutez les commandes obtenues.

$license="<the appropriate value of AccountSkuId from the Get-MsolAccountSku command>"
$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}  | Set-MsolUserLicense -AddLicenses $license

Voici un exemple qui attribue la licence Office 365 E5 de Contoso à tous les comptes d’utilisateurs sans licence dans la ville de Londres :

$license="contoso:ENTERPRISEPACK"
$userPropertyName="City"
$userPropertyValue="London"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}  | Set-MsolUserLicense -AddLicenses $license

Gérer les destinataires de groupe de distribution

Vous pouvez utiliser des groupes de distribution pour créer des listes de distribution de courrier. Vous pouvez utiliser des groupes de distribution uniquement avec des applications de courrier telles que Microsoft Outlook pour envoyer des e-mails à des ensembles d’utilisateurs. Dans ce scénario, vous utilisez PowerShell pour gérer les destinataires d’un groupe de distribution.

Pour commencer, vous devez vous connecter à Exchange Online. Pour découvrir comment se connecter à Exchange Online avec un nom d’utilisateur et un mot de passe de compte, voir Connexion à Exchange Online PowerShell. Pour savoir comment installer le module Remote PowerShell Microsoft Exchange Online et se connecter avec l’authentification multifacteur, voir Connexion à Exchange Online PowerShell avec l’authentification multifacteur.

Pour ajouter un destinataire à un groupe de distribution, entrez le nom du groupe de distribution et le nom d’utilisateur principal du compte d’utilisateur, puis exécutez les commandes obtenues.

$distName="<name of the distribution group>"
$userUPN="<the UPN of the user account>"
Add-DistributionGroupMember -Identity $distName -Member $userUPN

Pour supprimer un destinataire d’un groupe de distribution, entrez le nom du groupe de distribution et le nom d’utilisateur principal du compte d’utilisateur, puis exécutez les commandes obtenues.

$distName="<name of the distribution group>"
$userUPN="<the UPN of the user account>"
Remove-DistributionGroupMember -Identity $distName -Member $userUPN

Définir les mots de passe de plusieurs comptes d'utilisateurs

Suivez ce scénario pour définir le mot de passe d’un groupe de comptes d’utilisateurs. Par exemple, vous disposez d’un nouveau groupe de bénévoles qui se présentent une fois par semaine pour aider, ou vous fournissez stations de travail de démonstration à utiliser dans le cadre d’une conférence.

Un changement de mot de passe en bloc peut être utile pour réinitialiser les mots de passe des comptes réutilisables à intervalles réguliers. En désignant un groupe d’utilisateurs correspondant à un service ou à d’autres critères, vous pouvez réinitialiser en bloc les mots de passe de ces comptes. La première étape consiste à exporter les noms de ces comptes d’utilisateurs Office 365 dans un fichier CSV.

Pour exporter dans un fichier CSV une liste basée sur une propriété de compte d’utilisateur et une valeur spécifique, indiquez le nom de la propriété, sa valeur et le nom du fichier CSV, et puis exécutez les commandes obtenues.

$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
$fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
Get-MsolUser | Where {$_.$userPropertyName -eq $userPropertyValue} | select UserPrincipalName | Export-Csv $fileName -NoTypeInformation

Voici un exemple qui exporte tous les membres du service Bénévoles vers le fichier nommé c:\O365admin\volunteerslist.csv :

$userPropertyName="Department"
$userPropertyValue="Volunteers"
$fileName="c:\O365admin\volunteerslist.csv"
Get-MsolUser | Where {$_.$userPropertyName -eq $userPropertyValue} | Select UserPrincipalName | Export-Csv $fileName -NoTypeInformation

Avant de réinitialiser les mots de passe, passez en revue les noms figurant dans le fichier CSV pour vous assurer que vous avez bien identifié les utilisateurs appropriés. Lorsque vous disposez d’une liste validée d’utilisateurs au format CSV, trois méthodes simples permettent de créer et d’affecter un mot de passe à chaque utilisateur.

  1. Spécifier un nouveau mot de passe et l’attribuer à tous les utilisateurs dans le fichier CSV.

    Entrez le nouveau mot de passe et le nom du fichier CSV, puis exécutez les commandes obtenues.

    $pass="<the new password>"
    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $pass -ForceChangePassword $True}
  2. Définir manuellement un nouveau mot de passe pour chaque utilisateur dans le fichier CSV.

    Pour cette option, vous devez modifier le fichier CSV. Ajoutez après UserPrincipalName une colonne libellée Password, puis affectez un mot de passe à tous les utilisateurs dans la liste. Entrez le nom du fichier CSV, puis exécutez les commandes obtenues.

    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.Password -ForceChangePassword $True}
  3. Laisser Office 365 générer automatiquement un mot de passe pour chaque compte d’utilisateur dans le fichier CSV.

    Entrez le nom du fichier CSV, puis exécutez les commandes obtenues.

    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {[string[]]$a+= $_.UserPrincipalName + "  " + (Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -ForceChangePassword $True)} ;$a

Remarque : Ces trois options appliquent un changement de mot de passe la première fois que l’utilisateur se connecte avec le compte d’utilisateur. Pour éviter cela, supprimez - ForceChangePassword $True de la commande Set-MSolUserPassword.

Remarque : Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Voir aussi

Administrateurs PowerShell pour Office 365

Scénarios incluant PowerShell Office 365

Scénarios d’installation de PowerShell Office 365

Scénarios de création de rapports PowerShell Office 365

Scénarios de fonctionnalités supplémentaires pour PowerShell Office 365

Ressources de la communauté PowerShell Office 365

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×