Module 1: Review Windows PowerShell
- Describe Windows PowerShell and its major versions.
- Identify the common Windows PowerShell hosting applications.
- Describe points to consider when using PowerShell.
- Explain how to configure the Windows PowerShell console host.
- Explain how to configure the Windows PowerShell ISE host.
- Describe how to use VS Code for PowerShell scripting.
Module 2: Understand the command syntax in Windows PowerShell
- Describe cmdlet structure.
- Identify how to use Windows PowerShell parameters.
- Explain how to use tab completion.
- Explain how to display the About files content.
- Use About files.
Module 3: Find commands and Get-Help in Windows PowerShell
- Describe the relationship between modules and cmdlets.
- Identify options for finding cmdlets.
- Describe aliases.
- Use aliases.
- Explain how to use Show-Command.
- Explain how to use Get-Help.
- Review help.
- Explain how to interpret the help file contents.
- Explain how to update the local help content.
Module 4: Manage Active Directory Domain Services using PowerShell cmdlets
- Identify user management cmdlets.
- List group management cmdlets.
- Manage users and groups.
- Describe the cmdlets for managing computer objects.
- Describe the cmdlets for managing organizational units (OUs).
- Describe the cmdlets for managing Active Directory objects.
- Manage Active Directory objects.
Module 6: Manage network service settings for Windows devices using PowerShell cmdlets
- Identify cmdlets for managing TCP/IP settings.
- Describe how to manage local routing table settings.
- Describe how to modify DNS client configuration.
- List cmdlets for managing Windows Firewall.
- Configure network settings.
Module 7: Manage Windows Server settings using PowerShell cmdlets
- Describe the cmdlets for managing Group Policy Objects (GPOs).
- Describe the cmdlets for managing server features, roles, and services.
- Describe the cmdlets for managing Hyper-V and virtual machines (VMs).
- Describe the cmdlets for managing and administering Internet Information Services (IIS).
Module 8: Manage settings for a local Windows machine using PowerShell cmdlets
- Describe the cmdlets for managing Windows 10 devices.
- Describe the cmdlets for managing local permissions with Windows PowerShell.
Module 9: Understand the Windows PowerShell pipeline
- Describe the features and functionalities of the pipeline.
- Use the appropriate terminology to describe the pipeline output and pipeline objects.
- Explain how to discover and display object members.
- Review object members.
- Describe the cmdlets used to format the pipeline output for display.
- Format pipeline output.
Module 10: Select, sort, and measure objects using the pipeline
- Explain how to sort objects by a specified property.
- Sort objects by using the Sort-Object command.
- Explain how to measure objects’ numeric properties.
- Measure objects by using the Measure-Object command.
- Explain how to display a subset of objects in a collection.
- Explain how to display a customized list of objects’ properties.
- Select objects by using the Select-Object command.
- Explain how to create calculated properties.
- Create custom calculated properties for display.
Module 11: Filter objects out of the pipeline
- List the major PowerShell comparison operators.
- Explain how to filter objects by using basic syntax.
- Explain how to filter objects by using advanced syntax.
- Filter objects.
- Explain how to optimize filtering performance in the pipeline.
Module 12: Enumerate objects in the pipeline
- Explain the purpose of enumeration.
- Explain how to enumerate objects by using basic syntax.
- Perform basic enumerations.
- Explain how to enumerate objects by using advanced syntax.
- Perform advanced enumeration.
Module 13: Send and pass data as output from the pipeline
- Explain how to write pipeline data to a file.
- Explain how to convert pipeline data to the comma-separated values (CSV) format.
- Explain how to convert pipeline data to the XML format.
- Explain how to convert pipeline data to the JavaScript Object Notation (JSON) format.
- Explain how to convert pipeline data to the HTML format.
- Export data.
- Explain how to send pipeline data to other locations.
- Describe how PowerShell matches incoming pipeline data to the parameters of a cmdlet.
Module 14: Pass pipeline objects
- Describe pipeline parameter binding.
- Identify ByValue parameters.
- Pass data by using ByValue.
- Identify ByPropertyName parameters.
- Pass data ByPropertyName.
- Pass pipeline data ByPropertyName.
- Use manual parameters to override the pipeline.
- Use parenthetical commands.
- Expand property values.
Module 15: Connect with data stores using PowerShell providers
- Explain the purpose of PowerShell providers.
- Compare different PowerShell provider capabilities.
- Explain how to access PowerShell provider help files.
- Explain how to review a list of providers and the help options for a specific provider.
Module 16: Use PowerShell drives in PowerShell
- Explain the purpose and use of PowerShell drives.
- Identify the cmdlets for using PowerShell drives.
- Explain how to find, delete, and create files and directories.
- Explain how to use Windows PowerShell to manage the file system.
- Explain how to work with the registry.
- Explain how to use Windows PowerShell to manage the registry.
- Explain how to work with certificates.
- Explain how to work with other PowerShell drives.
Module 17: Review CIM and WMI
- Describe the architecture of CIM and WMI.
- Explain the purpose of the repository.
- Explain how to locate online documentation for repository classes.
- Locate online class documentation.
Module 18: Query configuration information by using CIM and WMI
- List the available namespaces.
- List local repository namespaces.
- Retrieve a list of classes from a namespace.
- Retrieve a list of classes from the root\CIMv2 namespace and sort them.
- Query instances of a specified class.
- Query instances of a specified class by using WMI, CIM, and WMI Query Language (WQL).
- Connect to remote computers by using CIM or WMI.
- Create and manage CIM sessions.
- Query repository classes from remote computers by using CIM sessions objects.
Module 19: Query and manipulate repository objects by using CIM and WMI methods
- Discover the methods of repository objects.
- Locate online documentation for methods.
- Locate the methods of the Win32_Service class and their documentation.
- Explain how to invoke methods of repository objects.
- Use methods for the Win32_OperatingSystem and Win32_Process classes.
Module 20: Manage variables in Windows PowerShell scripts
- Explain the purpose of variables.
- Describe the naming rules for using variables.
- Explain how to assign a value to a variable.
- Describe variable types.
- Explain how to assign a variable type.
Module 21: Work with arrays and hash tables in Windows PowerShell scripts
- Explain the purpose of an array.
- Work with arrays and their contents.
- Work with array lists and their contents.
- Manipulate arrays and array lists.
- Explain the purpose of a hash table.
- Work with hash tables and their contents.
- Manipulate hash tables.
Module 22: Create and run scripts by using Windows PowerShell
- Describe Windows PowerShell scripts.
- Explain how to find scripts and modify them.
- Describe how to create scripts.
- Describe the PowerShellGet module.
- Explain how to run Windows PowerShell scripts.
- Describe the script execution policy.
- Set the script execution policy.
- Explain how to use AppLocker to help secure Windows PowerShell scripts.
- Explain how to digitally sign scripts.
- Digitally sign a Windows PowerShell script.
Module 23: Work with scripting constructs in Windows PowerShell
- Describe the syntax of the ForEach construct.
- Use the ForEach construct.
- Describe the syntax of the If construct.
- Use the **If **construct.
- Describe the syntax of the Switch construct.
- Use the Switch construct.
- Describe how to use the For construct.
- Describe the other loop constructs.
- Explain how to use Break and Continue.
Module 24: Import data in different formats for use in scripts by using Windows PowerShell cmdlets
- Describe how to use Get-Content to review file data.
- Describe how to use Import-Csv to retrieve data.
- Describe how to use Import-Clixml to import XML data.
- Describe how to use ConvertFrom-Json to work with JSON data.
- Import data from text, CSV, and XML files.
Module 25: Use methods to accept user inputs in Windows PowerShell scripts
- Identify values in a script that are likely to change.
- Explain how to use Read-Host to accept user input.
- Explain how to use Get-Credential to accept user credentials.
- Explain how to use Out-GridView to obtain user input.
- Obtain user input by using Read-Host, Get-Credential, and Out-GridView.
- Explain how to pass parameters to a script.
- Obtain user input by using parameters.
Module 26: Troubleshoot scripts and handle errors in Windows PowerShell
- Describe how error messages are stored.
- Explain how to add more troubleshooting information to scripts.
- Describe how to configure breakpoints for troubleshooting.
- Explain how to troubleshoot a script.
- Describe error actions in Windows PowerShell.
Module 27: Use functions and modules in Windows PowerShell scripts
- Describe functions.
- Describe the implications of variable scope.
- Explain how to use dot sourcing.
- Create a function in a script.
- Explain how to create a module.
- Create a module.
Module 28: Manage single and multiple computers by using Windows PowerShell remoting
- Describe the Windows PowerShell remoting architecture.
- Explain the difference between Windows PowerShell remoting and other forms of remote administration.
- Describe Windows PowerShell remoting security and privacy features.
- Enable remoting on a computer.
- Use Windows PowerShell remoting for single-computer management.
- Use Windows PowerShell remoting for multiple-computer management.
- Use Windows PowerShell remoting.
- Explain the difference between local output and remoting output.
Module 29: Use advanced Windows PowerShell remoting techniques
- Configure common remoting options.
- Send parameters and local variables to remote computers.
- Describe the use of Windows PowerShell scopes.
- Send local variables to a remote computer.
- Configure multi-hop remoting authentication.
Module 30: Manage persistent connections to remote computers by using Windows PowerShell sessions
- Explain the purpose of persistent connections.
- Create and use a PSSession.
- Transmit commands by using a PSSession.
- Explain how to disconnect from PSSessions.
- Disconnect and reconnect to PSSessions.
- Explain the concept of implicit remoting.
Module 31: Review Azure PowerShell module
- Describe Azure PowerShell.
- Describe the Azure Az PowerShell module.
- Install the Azure Az PowerShell module.
- Migrate Azure PowerShell from AzureRM to Az.
- Describe the Azure Active Directory Module for Windows PowerShell and Azure Active Directory PowerShell for Graph modules.
Module 32: Review the features and tools for Azure Cloud Shell
- Describe Azure Cloud Shell.
- Describe features and tools for Azure Cloud Shell.
- Use Azure Cloud Shell.
Module 33: Manage Azure resources with Windows PowerShell
- Describe, install, and use the Azure PowerShell environment.
- Describe and use Azure Cloud Shell.
- Manage Azure VMs with Azure PowerShell.
- Manage Azure storage accounts and subscriptions with Azure PowerShell.
Module 34: Manage users, groups, and licenses in Microsoft Entra ID by using Windows PowerShell
- Describe the benefits of using PowerShell for Microsoft 365.
- Explain how to connect to a Microsoft 365 tenant with PowerShell.
- Explain how to create and manage users in Microsoft 365 with PowerShell.
- Explain how to create and manage groups in Microsoft 365 with PowerShell.
- Explain how to manage roles in Microsoft 365 with PowerShell.
- Explain how to manage licenses in Microsoft 365 with PowerShell.
Module 35: Manage Exchange Online by using Windows PowerShell
- Explain how to connect to Exchange Online by using PowerShell.
- Explain how to manage mailboxes in Exchange Online.
- Explain how to manage resources in Exchange Online.
- Explain how to manage admin roles in Exchange Online.
Module 36: Manage SharePoint Online by using Windows PowerShell
- Explain how to connect to SharePoint Online by using PowerShell.
- Explain how to manage SharePoint Online users and groups with PowerShell.
- Explain how to manage sites with PowerShell.
- Explain how to manage external user sharing with PowerShell.Describe the Microsoft Teams PowerShell module.
- Explain how to connect to Microsoft Teams by using PowerShell.
- Manage Microsoft Teams with the Microsoft Teams PowerShell module.
Module 37: Manage Microsoft Teams by using Windows PowerShell
- Describe the Microsoft Teams PowerShell module.
- Explain how to connect to Microsoft Teams by using PowerShell.
- Manage Microsoft Teams with the Microsoft Teams PowerShell module.
Module 38: Create and manage background jobs using Windows PowerShell
- Explain the purpose and functionality of background jobs.
- Start jobs.
- Manage jobs.
- Retrieve job results.
- Use background jobs.
Module 39: Create and manage scheduled jobs using Windows PowerShell
- Explain how to run Windows PowerShell scripts as scheduled tasks.
- Create and run a Windows PowerShell script as a scheduled task.
- Explain the purpose and use of scheduled jobs.
- Create job options and triggers.
- Create scheduled jobs.
- Retrieve scheduled job results.
- Use scheduled jobs.