Windows PowerShell Provider Overview
Windows PowerShell providers give you access to data and components that would not otherwise be easily accessible at the command line. The data is presented in a consistent format that resembles a file system drive. The provider is the interface between the user and the data. For example, Windows PowerShell includes a Registry provider that gives you access to the data in the Registry. The user accesses this interface by providing the path to the provider when running the standard provider cmdlets, such as when running the Get-Item or Set-Item cmdlets. The provider accesses the data through its implementation of these provider cmdlets.
Viewing Providers
To see what providers are available in a Windows PowerShell session, run the following command: get-psprovider. This command will list the built-in providers provided by Windows PowerShell and any other providers that have been added to the Windows PowerShell session.
Built-in Providers
The following providers are included in Windows PowerShell and provide access to known data stores.
- Alias provider
- Provides access to Windows PowerShell aliases.
- Certificate provider
- Provides access to the x509 certificates for digital signatures.
- Environment provider
- Provides access to the Microsoft Windows environment variables.
- FileSystem provider
- Provides access to the file system drives, directories, and files.
- Function provider
- Provides access to the Windows PowerShell functions.
- Registry
- Provides access to the Windows PowerShell functions.
- Variable
- Provides access to the Windows PowerShell variables.
- WS-Management
- Provides access to the WS-Management configuration information used for making remote connections.
Provider Functionality
When writing your own provider, you can specify how you want the user to access the data by implementing different provider functionality. For example, an item-enabled provider allows the user to get and set the items in a data store, and a navigation-enable provider allows the user to move data around in the data store. For more information about enabling different user functionality, see Designing Your Windows PowerShell Provider.
Provider Cmdlets
The cmdlets that are supported by a provider are referred to as provider cmdlets. For example, the Get-Item cmdlet is a provider cmdlet that retrieves an item at a specific location in a data store. How it retrieves the item can vary based on how you write your provider. For a list of the provider cmdlets that you can overwrite, see Provider Cmdlets.
See Also
Concepts
Designing Your Windows PowerShell ProviderProvider Cmdlets
Other Resources
Writing a Windows PowerShell Provider