The M55626A : Advanced Administration and Automation with PowerShell course is a 3-day intensive training program designed for IT professionals experienced in administering Windows Server and Windows Client environments. This course builds on foundational PowerShell knowledge and focuses on enhancing scripting capabilities for complex administrative tasks.
Participants will explore advanced functions, integration with the .NET Framework, REST API utilization, and robust error handling techniques. The course covers the creation of advanced script modules, development of controller scripts, manipulation of XML and JSON data, and the implementation of Desired State Configuration (DSC) to ensure consistent configuration across systems.
Additional topics include Just Enough Administration (JEA) to enforce least-privilege security models, and PowerShell Workflow for automating long-running tasks. By the end of the course, learners will have gained the expertise to streamline and automate IT operations, increasing both efficiency and control in enterprise environments.
Audience Profile:
This course is designed for IT professionals experienced in general Windows Server and Windows Client administration. Participants should have a foundational knowledge of Windows PowerShell.
Additionally, this course provides scripting guidance tailored for developers involved in supporting development environments and deployment processes.
Course Outline:
Module 1: Creating advanced functions
This module explains how to parameterize a command into an advanced function.
Lessons
-
Converting a command into an advanced function
-
Creating a script module
-
Defining parameter attributes and input validation
-
Writing functions that accept pipeline input
-
Producing complex pipeline output
-
Documenting functions by using comment-based help
-
Supporting -WhatIf and -Confirm
Labs
-
Converting a command into an advanced function
-
Creating a script module
-
Defining parameter attributes and input validation
-
Writing functions that accept pipeline input
-
Producing complex pipeline output
-
Documenting functions by using comment-based help
-
Supporting -WhatIf and -Confirm
Module 2: Using Microsoft .NET Framework and REST API in Windows PowerShell
This module explains how to use Microsoft .NET Framework and REST API to supplement functionality that Windows PowerShell commands provide.
Lessons
Labs
Module 3: Writing controller scripts
This module explains how to combine advanced functions that perform a specific task and a controller script that provides a user interface or automates a business process.
Lessons
-
Introducing controller scripts
-
Writing controller scripts that display a user interface
-
Writing controller scripts that produce reports
Labs
-
Writing controller scripts that display a user interface
-
Writing controller scripts that implement a text-based menu
-
Writing functions to be used in the controller script
-
Writing a controller script that produces HTML reports
Module 4: Handling script errors
This module explains how to perform basic error handling in scripts.
Lessons
Lab
Module 5: Using XML, JSON, and custom-formatted data
This module explains how to read, manipulate, and write data in XML and JSON format.
Lessons
-
Reading, manipulating, and writing XML-formatted data
-
Reading, manipulating, and writing JSON-formatted data
-
Reading and manipulating custom-formatted data
Lab
Module 6: Enhancing server management with Desired State Configuration and Just Enough Administration
This module explains how to write Desired State Configuration (DSC) configuration files, deploy those files to servers, and monitor server’s configurations. This module also explains how to restrict administrative access with Just Enough Administration (JEA).
Lessons
-
Understanding Desired State Configuration
-
Creating and deploying a DSC configuration
-
Implementing Just Enough Administration
Labs
Module 7: Analyzing and debugging scripts
This module explains how to use native Windows PowerShell features to analyze and debug existing scripts.
Lessons
Lab
Module 8: Understanding Windows PowerShell Workflow
This module explains the features of the Windows PowerShell Workflow technology.
Lessons
Lab