background preloader

Powershell

Facebook Twitter

Remonter des informations Azure dans Microsoft Teams avec les Webhooks. Microsoft Teams est un nouvel espace de travail collaboratif 100% Chat dans Office 365.

Remonter des informations Azure dans Microsoft Teams avec les Webhooks

Pour faire un pendant avec des produits plus connus, disons que cela s’apparente à un Slack d’entreprise, un RocketChat… Il y a plein d’usages intéressants de Microsoft Teams pour du travail collaboratif (cf. le site produit) mais comme j’ai plutôt une “casquette Ops” et Cloud Azure, j’ai regardé comment je pouvais utiliser Teams comme réceptacle d’informations pour mes déploiements dans Azure. Pour cela, j’ai utilisé les connecteurs Teams et un en particulier : le Webhook. Microsoft Teams : Publier un message via PowerShell et Webhook. I.

Microsoft Teams : Publier un message via PowerShell et Webhook

Présentation Réservé aux clients Office 365, Microsoft Teams est d'après la firme de Redmond "un espace d'équipe pour l'échange instantané et la collaboration dans Office 365". En effet, l'intégration de Teams au sein du package Office 365 est forte puisqu'il est directement en relation avec SharePoint/OneDrive, OneNote et même Skype (à qui d'ailleurs il reprend quelques fonctions). Ces derniers temps et pour notre bonheur, les développeurs s'activent sur Microsoft Teams pour proposer des connecteurs, c'est-à-dire l'intégration et la connexion de Teams avec d'autres applications et services. Et non pas forcément des outils Microsoft, mais des outils tiers.

Comment changer le répertoire par défaut de la console PowerShell ? I.

Comment changer le répertoire par défaut de la console PowerShell ?

Présentation Lorsque l'on ouvre une console PowerShell sous Windows, par défaut elle se positionne à la racine du répertoire de l'utilisateur qui lance la console. Cependant, il y a peu de chance pour que vous stockiez vos scripts à cet endroit qui n'est pas forcément adapté... Comment intégrer de l'aide à ses scripts PowerShell ? I.

Comment intégrer de l'aide à ses scripts PowerShell ?

Présentation Lorsque l'on scripte avec PowerShell, il n'est pas rare de faire appel au commandlet "Get-Help" ou son alias "Help" pour obtenir l'aide sur l'utilisation d'un commandlet justement. Lorsque l'on envisage de diffuser un script, sur GitHub par exemple comme je peux le faire ces derniers temps, il est intéressant d'une part de le coder proprement, mais aussi d'inclure de l'aide au sein de son script.

Comment allez-vous me dire ? C'est ce que nous allons voir dans ce tutoriel et ça se trouve sans le savoir, vous produisez déjà cette aide. L'ensemble de mes scripts publiés sur GitHub intègre une aide accessible directement depuis la console PowerShell, voici au passage l'accès à mes scripts : GitHub II. En fait, il y a deux méthodes pour fournir de l'aide avec ses scripts, soit directement au sein du fichier .PS1 de votre script, soit au sein d'un fichier XML externe qui respecte la syntaxe MAML (Microsoft Assistance Markup Language). III. PowerShell : Intégrer un timeout à la boucle While. I.

PowerShell : Intégrer un timeout à la boucle While

Présentation On se retrouve dans ce tutoriel pour parler PowerShell et timeout afin de pouvoir optimiser vos scripts notamment dans une boucle While. Certaines fois, nous avons besoin d'attendre qu'une action se termine avant d'en commencer une autre, par exemple attendre le changement d'état d'un service, d'un processus ou encore la fin de l'exécution d'une tâche planifiée. Je vais vous présenter la classe .NET "Stopwatch" puisqu'elle permet de répondre à ce besoin de timeout grâce à sa fonction de timer. Comment télécharger des fichiers web avec PowerShell ? I.

Comment télécharger des fichiers web avec PowerShell ?

Présentation Le langage PowerShell inclut les commandlets nécessaires au téléchargement de fichiers hébergés sur Internet, que ce soit sur un hébergement HTTP, HTTPS ou FTP, on pourra télécharger des fichiers directement en ligne de commande. Il est également possible de spécifier des credentials, si le serveur qui héberge le fichier requiert une authentification. Office 365 : Créer des utilisateurs avec PowerShell. I.

Office 365 : Créer des utilisateurs avec PowerShell

Présentation Bien que l’interface d’administration d’Office 365 permet d’importer un CSV pour automatiser la création d’un lot d’utilisateurs, il reste intéressant de le réaliser par un script pour avoir plus d’options sur le paramétrage des utilisateurs, ainsi que la possibilité d’automatiser la création des utilisateurs dans Office 365. Imaginons un fichier CSV qui vient s’alimenter automatiquement et un script qui s’exécute à intervalle régulier pour créer les utilisateurs manquants du côté d’Office 365.

Dans ce tutoriel, nous allons concevoir un fichier de données au format CSV que nous allons ensuite utiliser pour créer des utilisateurs dans Office 365, le tout via un script PowerShell. II. Très simplement, nous allons avoir un CSV avec 3 colonnes : nom, prénom et mot de passe. PowerShell : Copier des fichiers avec BITS. I.

PowerShell : Copier des fichiers avec BITS

Présentation BITS (Background Intelligent Transfer Service) est un composant de Windows qui permet d’effectuer des transferts de données intelligents en arrière-plan, il offre des possibilités intéressantes par rapport à une simple copie, notamment : La possibilité de mettre en pause et de reprendre un téléchargement (même en cas de coupure réseau) – Comme peut le permettre l’excellent RobocopyLa possibilité de gérer la priorité c’est-à-dire la bande passante que l’on va allouer par rapport à l’activité réseau de la machine sur laquelle il s’exécute (paramètre « Priority » du commandlet « Start-BitsTransfer« )Une véritable gestion des jobs, qui peuvent se dérouler en mode synchrone ou asynchrone.

Office 365 : Identifier les comptes bloqués avec PowerShell. I.

Office 365 : Identifier les comptes bloqués avec PowerShell

Présentation Que ce soit pour du reporting, pour identifier des comptes bloqués ou simplement pour tenter d’identifier la cause d’un compte qui ne fonctionne pas, vous pourrez avoir besoin de savoir si un compte est bloqué ou non dans Office 365, le tout via PowerShell. Quand un blocage d’un compte se produit, l’utilisateur a le message suivant à la connexion : « Il semble que votre compte a été bloqué. Obtenir des informations sur l'OS en PowerShell. I.

Obtenir des informations sur l'OS en PowerShell

Présentation On se retrouve dans ce tutoriel pour parler PowerShell et pour vous donner une petite astuce qui pourrait être bien utile dans vos scripts. En effet, nous allons voir comment récupérer des infos sur votre système d’exploitation en PowerShell, ce qui pourra être utile dans vos phases conditionnelles au sein de vos scripts. Par exemple, on pourra tester pour voir si l’OS est en version 32 ou 64 bits et en conséquence réaliser une action particulière. On peut imaginer que si c’est en version 32 bits on installera la version 32 bits d’un logiciel, et la version 64 bits si la machine est en 64 bits. Dans ce tutoriel, on s’appuiera essentiellement sur l’utilisation de la commande « Get-WmiObject » qui dispose aussi d’un équivalent nommé « Get-CimInstance ».

II. On va commencer par ouvrir une console PowerShell, puis vous allez saisir la commande ci-dessous qui va chercher les infos au sein de la classe « Win32_OperatingSystem« . Powershell pour les débutants (4ème partie) I. Présentation Pour faire suite et achever cette introduction à Powershell, je vous propose de découvrir la gestion des erreurs sous Powershell. Un vaste programme, mais là encore, je souhaite vous amener à l’essentiel. Et pour conclure, histoire de se détendre un peu, je vous parlerais de la gestion des couleurs sous Powershell.

Powershell pour les débutants (3ème partie) I. Présentation Pour faire suite aux 2 premiers cours de cette série, je vous propose d’aborder les 2 autres sujets susceptibles d’améliorer votre progression. J’ai donc pensé à vous présenter quelques instructions ou mots clés du langage, la notion de fonction (juste quelques bases) et l’usage de l’éditeur graphique ISE. Vous n’avez pas suivi les autres parties de ce cours sur PowerShell ? Pas de panique : Avant de commencer, voici un petit tableau des principaux caractères spéciaux du langage Powershell. Bien que déjà longue, cette liste n’est pas exhaustive, mais devrait largement suffire pour la suite de vos développements. Powershell pour les débutants (2ème partie) I. Powershell pour les débutants (1ère partie) I. Présentation du sujet J’écris ce billet en guise d’introduction à ce que l’on pourrait comparer sommairement à une sorte de série « pour les nuls« . Loin de moi l’idée d’introduire une quelconque connotation péjorative dans cet article , mais au fil de mes expériences et des informations que j’ai pu glaner sur le net et autres ouvrages sur le sujet, j’ai pensé qu’un rappel des fondamentaux serait peut être utile à votre envol dans ce monde hostile qu’est le “scripting” ou le shell sous Windows.

En fait, j’imagine volontiers le désarroi d’un technicien ou administrateur sous Windows, qui n’a jamais ou très peu sollicité la ligne de commande, à qui on va exposer des concepts d’objets, de classes, de types, de collections, d’instances (pour le vocabulaire) sans compter des syntaxes condensées et complexes (pour la grammaire) manipulant des concepts obscurs du système. • Du batch (en gros l’héritage du DOS) – Ca ressemble/ait à ça…Non ? Posh-SSH : Connexion SSH depuis PowerShell sous Windows. I. Présentation Le module Posh-SSH pour PowerShell permet de se connecter en SSH sur une machine Linux/Unix pour exécuter des commandes et transférer des fichiers via SCP/SFTP. Une vingtaine de commandes sont présentes dans ce module.e vous emballez pas, ce module ne permettra de remplacer Putty (ou autre), car on ne se retrouve pas dans un véritable Shell interactif.

Par ailleurs, vous pourrez établir de multiples connexions vers des hôtes via SSH, et invoquer des commandes et en obtenir la sortie. Ainsi, ce module s’avère surtout intéressant pour automatiser des tâches sur des hôtes Linux, il pourrait remplacer Putty mais comme il faut invoquer les commandes tour à tour, ce n’est pas pratique. PowerShell : Boucle Do Until et Do While. PowerShell : Comment modifier des mots de passe dans l'Active Directory ?