Automatisez vos connexions à Azure

Introduction

Si tout comme moi vous passez votre temps à jongler entre les tenants Azure de vos différents clients et à switcher de souscription en souscription, si comme moi vous êtes devenu allergique à la commande Add-AzureRmAccount alors cette commande va tout changer !

Il s’agit de la commande Import-AzureRmContext, celle ci charge les informations d’authentification à partir d’un fichier pour définir l’environnement et le contexte Azure via un fichier JSON que vous aurez au préalable créé via la commande Save-AzureRmContext et ainsi vous permettra d’automatiser vos connexions à Azure de manière simple !

Détails

Voyons voir comment cela fonctionne dans la pratique :

On entre nos credentials :

On vérifie le contexte via la commande Get-AzureRmContext :

Nous venons donc d’exporter nos informations d’identification relative à la souscription “GENEZIIS” sous “D:\Azure\Profiles\GENEZIIS.json”

Désormais on va pouvoir fermer la session PowerShell actuelle puis jouer la commande suivante afin de réimporter nos informations d’authentification sans avoir à ré-entrer nos credentials :

Mise en oeuvre

Maintenant comment faire encore plus rapide ?

C’est simple on va se créer une fonction que l’on va charger au sein de notre profil PowerShell afin de l’appeler via la simple commande “azure”

Pour cela j’utilise les fonctions suivantes qui me permettent de :

  • Lister l’ensemble des fichiers JSON représentants mes différents profils de connexion au sein d’un path que j’aurai spécifié
  • Charger un de ces fichiers JSON
  • Lister l’ensemble des souscriptions auxquels j’ai accès via ces credentials
  • Checker si les informations d’identification ont expirées
  • Renouveler les informations d’identification si expiré

On va vérifier où se trouve notre profil PowerShell :

On va créer un dossier “AzureProfile” qui servira à héberger nos profils Azure (fichiers JSON) à la racine de notre profil PowerShell (ici : “D:\OneDrive\Documents\WindowsPowerShell\”) :

Puis on va déposer notre fonction dans le répertoire modules :

On va ensuite modifier notre profil afin de faire appel à notre fonction via un simple alias “Azure”

Pour cela on édite notre profile.ps1 :

Conclusion

Désormais il ne nous reste plus qu’à entrer “azure” au sein d’une console PowerShell pour automatiquement appeler notre fonction de chargement automatique de notre profil !

Pin It on Pinterest