AZ-040: Automating Administration with PowerShell
Master PowerShell with 16 hands-on labs covering scripting fundamentals, Active Directory management, Windows Server administration, Azure resource management, and Microsoft 365 automation.
View badge details
About This Course
Course Curriculum
32 Lessons
Review Windows PowerShell
Introduction to Windows PowerShell, its versions, host applications (console, ISE, VS Code), and how to configure and customize the PowerShell environment.
Review Windows PowerShell - Lab Exercises
Introduction to Windows PowerShell, its versions, host applications (console, ISE, VS Code), and how to configure and customize the PowerShell environment.
Understanding Command Syntax and Finding Commands
Learn PowerShell's verb-noun command naming convention, how to discover commands using Get-Help and Get-Command, and how to use the built-in About files for reference.
Understanding Command Syntax and Finding Commands - Lab Exercises
Learn cmdlet structure, parameters, tab completion, and how to discover commands with Get-Command, Get-Help, and About files.
Managing Active Directory with PowerShell
Learn to use PowerShell cmdlets from the ActiveDirectory module to create and manage users, groups, organizational units, and other AD objects.
Managing Active Directory with PowerShell - Lab Exercises
Use PowerShell to manage Active Directory objects including users, groups, organizational units, and computer accounts.
Configuring Network Settings and Windows Server with PowerShell
Learn to configure IP addresses, DNS settings, and network adapters using PowerShell, and automate Windows Server role installation including IIS.
Configuring Network Settings and Windows Server with PowerShell - Lab Exercises
Configure network adapters, IP addresses, DNS, test connectivity, install Windows Server roles, and manage IIS using PowerShell.
Understanding the PowerShell Pipeline
Learn how the PowerShell pipeline passes objects between commands, and how to use Select-Object, Sort-Object, and Format cmdlets to shape output.
Understanding the PowerShell Pipeline - Lab Exercises
Learn how objects flow through the PowerShell pipeline and use Select-Object, Sort-Object, Measure-Object, Group-Object, and formatting cmdlets.
Filtering and Enumerating Objects in the Pipeline
Learn to use Where-Object for filtering and ForEach-Object for enumeration, comparison operators, and efficient pipeline data processing.
Filtering and Enumerating Objects in the Pipeline - Lab Exercises
Filter pipeline objects with Where-Object using comparison operators and enumerate objects with ForEach-Object for transformation.
Sending Pipeline Data as Output and Passing Pipeline Objects
Learn to convert and export PowerShell objects to various formats including CSV, XML, HTML, and JSON for reporting and system integration.
Sending Pipeline Data as Output and Passing Pipeline Objects - Lab Exercises
Export and convert pipeline data to CSV, HTML, XML, and JSON formats. Understand pipeline parameter binding by value and by property name.
Using PSProviders and PSDrives
Learn the PSProvider abstraction model that provides unified navigation across file systems, registry, Active Directory, and certificate stores.
Using PSProviders and PSDrives - Lab Exercises
Work with PSProviders and PSDrives to manage file systems, registry, certificates, and Active Directory using a consistent set of cmdlets.
Querying Information with CIM and WMI
Learn the difference between WMI and CIM, how to query system information programmatically, and invoke management methods on remote computers.
Querying Information with CIM and WMI - Lab Exercises
Query management information using CIM and WMI cmdlets, discover classes and namespaces, connect to remote computers, and invoke methods.
Working with Variables, Arrays, and Hash Tables
Learn PowerShell data structures including variables with automatic typing, arrays as ordered collections, and hash tables as key-value stores for scripting.
Working with Variables, Arrays, and Hash Tables - Lab Exercises
Create and manage variables with proper data types, work with arrays and array lists, and use hash tables and custom objects in PowerShell.
Creating and Running PowerShell Scripts
Learn script execution policies, code signing, and control flow constructs (ForEach, If) for automating multi-step administrative tasks.
Creating and Running PowerShell Scripts - Lab Exercises
Create, sign, and run PowerShell scripts. Use execution policies, ForEach loops, If/Switch statements, and other scripting constructs.
Advanced Scripting Techniques
Learn parameterized scripts, CSV data import, remote querying patterns, and credential management for production-ready PowerShell automation.
Advanced Scripting Techniques - Lab Exercises
Import data from files, accept user input with parameters, handle errors with Try/Catch, debug scripts, and create reusable functions and modules.
PowerShell Remoting
Learn WinRM-based remoting including one-to-one sessions, one-to-many execution, implicit remoting, and persistent session management.
PowerShell Remoting - Lab Exercises
Enable and use PowerShell remoting for one-to-one and one-to-many administration, implicit remoting, and persistent PSSessions.
Managing Azure Resources with PowerShell
Learn the Azure Az PowerShell module, Azure Cloud Shell, and how to manage Azure resources including VMs, resource groups, and storage with PowerShell.
Managing Azure Resources with PowerShell - Lab Exercises
Install the Az module, connect to Azure, use Cloud Shell, and manage Azure resources including VMs, networking, and storage with PowerShell.
Managing Microsoft 365 with PowerShell
Learn to manage Microsoft Entra ID, Exchange Online, SharePoint Online, and Microsoft Teams using PowerShell modules for bulk administration.
Managing Microsoft 365 with PowerShell - Lab Exercises
Manage Microsoft 365 services including Entra ID users and groups, Exchange Online, SharePoint Online, and Microsoft Teams using PowerShell.
Using Background Jobs and Scheduled Jobs
Learn Start-Job, Receive-Job for background processing and Register-ScheduledJob for recurring automation tasks in production environments.
Using Background Jobs and Scheduled Jobs - Lab Exercises
Create and manage local jobs, remote jobs, and scheduled jobs. Use job triggers, scheduled tasks, and retrieve job results from history.