Office 365 : Récupérer le nom des licences en PowerShell

I. Présentation

Lors de la réalisation de différents scripts PowerShell en rapport avec Office 365, vous serez surement amené à manipuler les licences puisqu'elles doivent être associées à vos utilisateurs afin qu'ils puissent accéder aux différents services et applications. Les licences que vous avez en votre possession dépendent des offres auxquels vous avez souscrit.

Le problème c'est que si vous avez une licence, par exemple pour Exchange Online, quelle est la codification de cette licence pour l'intégrer dans un script ? Nous allons voir dans ce tutoriel comment récupérer la liste de ses licences rapidement, afin de faire le lien entre le nom affiché sur l'interface web d'administration Office 365 et le nom que l'on peut utiliser dans le script.

Comme d'habitude, il faudra initier en PowerShell une connexion auprès des services en ligne Microsoft : Comment se connecter à Office 365 en PowerShell ?

II. Lister les licences

Une fois authentifié auprès des services Office 365, vous pouvez lister vos licences avec la commande "Get-MsolAccountSku" qui même sans paramètre retournera ces infos là au minimum :

AccountSkuId                          ActiveUnits WarningUnits ConsumedUnits
------------                          ----------- ------------ -------------
<nom-entité>:OFFICESUBSCRIPTION_FACULTY   100         0            10            
<nom-entité>:PROJECTONLINE_PLAN_1_STUDENT 300         0            30

La colonne "AccountSkuId" correspond au nom de la licence et on peut identifier facilement avec ce nom de quel type de licence il s'agit et pour quel(s) produit(s). C'est ce nom qu'il faudra utiliser dans vos scripts notamment pour associer une licence à un utilisateur. Il faudra utiliser le nom complet de la licence c'est à dire "<nom-entité>:<nom-licence>", par exemple : itconnect:OFFICESUBSCRIPTION_FACULTY 

Note : Cette commande peut-être utilisée également pour voir le taux d'utilisation des licences

Passons à la suite.

III. Retrouver la licence associée à un utilisateur

Pour savoir quelle est la licence ou quelles sont les licences associées à un utilisateur spécifique, on s'appuiera sur le commandlet "Get-MsolUser" qui dispose d'une propriété "Licenses". Par exemple, pour visualiser les licences associées à l'utilisateur "florian@it-connect.fr", voici la commande :

Get-MsolUser -UserPrincipalName florian@it-connect.fr | Format-List DisplayName,Licenses

Ce qui retournera :

DisplayName : Florian Burnel
Licenses    : {itconnect:EXCHANGEENTERPRISE_FACULTY, itconnect:OFFICESUBSCRIPTION_FACULTY}

Voilà, vous n'avez plus d'excuse désormais si vous n'utilisez pas les bons noms de licences dans vos scripts ! Maintenant, c'est à vous de jouer 😉

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian Burnel

Co-Fondateur d'IT-Connect, je souhaite partager mes connaissances et expériences avec vous, et comme la veille techno' est importante je partage aussi des actus.

florian a publié 1601 articles sur IT-Connect.See all posts by florian

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *