Advanced Automated Administration with Windows PowerShell


Learn how to automate and streamline day to day management and administration tasks and functions in your Windows Server Infrastructure.
This three-day course is a follow on from course 10961B: Automating Administration with Windows PowerShell course. It is built on Windows Server 2012 R2 and Windows 8.1 and while it is specifically focused on Windows PowerShell v4.0 is also relevant in v2.0 and v3.0 Windows PowerShell environments.

Expand and build upon the knowledge already acquired in course 10961B and focus on building more scalable and usable Windows PowerShell scripts for use in your organization by building your own Windows PowerShell tools. Learn about areas such as the creation of advanced functions, script modules, advanced parameters attributes and controller scripts. Also learn how to make your scripts more robust by learning about handling script errors and the analysis and debugging Windows PowerShell scripts. The course will also cover the use of Windows PowerShell cmdlets with .NET Framework as well as teaching you how to configure your Windows Servers using Desired State Configuration and providing an understanding of Windows PowerShell workflow.

The detailed hands on labs, in depth content and learning will help remove the manual tasks that you may currently have to perform as an Administrator, allowing you to make your own Windows PowerShell tools for automated, repeated, accurate management and provisioning of your Windows Server infrastructure.


This course is intended for IT Professionals already experienced in general Windows Server and Windows Client administration or already experienced in administering and supporting Application servers and services including applications such as; Exchange, SharePoint, SQL. System, Infrastructure and Application Administrators working in a Windows or Windows hybrid environment, all will find this course relevant to their day to day jobs, future career and skills development.

The course is also intended for IT Professionals who want to build upon existing Windows PowerShell knowledge and skills to learn how to build their own tools for broader general use in their organization, using any Microsoft or independent software vendor (ISV) product that supports Windows PowerShell manageability.


Before attending this course, participants must have:
  • Knowledge and experience working with Windows PowerShell or knowledge equivalent to the content covered in course 10961B: Automating Administration with Windows PowerShell
  • Experienced in general Windows Server and Windows Client administration or already experience in administering and supporting Application servers and services including applications like Exchange, SharePoint, and SQL

At course completion

After completing this course, participants will be able to:
  • Create Advanced Functions
  • Use Cmdlets and Microsoft .NET Framework in Windows PowerShell
  • Write Controller Scripts
  • Handle Script Errors
  • Use XML Data Files
  • Manage Server Configurations by Using Desired State Configuration
  • Analyze and Debugging Scripts
  • Understand Windows PowerShell Workflow



Course outline

Module 1: Creating advanced functions
  • Lesson 1: Converting a command into an advanced function
  • Lesson 2: Creating a script module
  • Lesson 3: Defining parameter attributes and input validation
  • Lesson 4: Writing functions that accept pipeline input
  • Lesson 5: Producing complex pipeline output
  • Lesson 6: Documenting functions by using comment-based help
  • Lesson 7: Supporting –WhatIf and -Confirm

Module 2: Using Microsoft .NET Framework and REST API in Windows PowerShell

  • Lesson 1:Using Microsoft .NET Framework in Windows PowerShell
  • Lesson 2:Using REST API in Windows PowerShell

Module 3: Writing controller scripts

  • Lesson 1: Introducing controller scripts
  • Lesson 2: Writing controller scripts that display a user interface
  • Lesson 3: Writing controller scripts that produce reports
Module 4: Handling script errors
  • Lesson 1: Understanding error handling
  • Lesson 2: Handling errors and timeouts in a script
Module 5: Using XML, JSON, and custom-formatted data
  • Lesson 1: Reading, manipulating, and writing XML-formatted data
  • Lesson 2: Reading, manipulating, and writing JSON-formatted data
  • Lesson 3: Reading and manipulating custom-formatted data
Module 6: Enhancing server management with Desired State Configuration and Just Enough Administration
  • Lesson 1: Understanding Desired State Configuration
  • Lesson 2: Creating and deploying a DSC configuration
  • Lesson 3: Implementing Just Enough Administration
Module 7: Analyzing and debugging scripts
  • Lesson 1: Debugging in Windows PowerShell
  • Lesson 2: Analyzing and debugging an existing script
Module 8: Understanding Windows PowerShell Workflow
  • Lesson 1:Understanding Windows PowerShell Workflow