Microsoft

Microsoft Endpoint Configuration Manager Feedback

Suggestion box powered by UserVoice

Ideas

What features would you like to see?

All of the feedback that you share in these forums will be monitored and reviewed by the Microsoft engineering teams responsible for building Microsoft Endpoint Configuration Manager, though we can’t promise to reply to all posts.

Please do not use UserVoice to report product bugs or for assisted support.
If you believe you have found a product bug, please send us a bug report through the Configuration Manager Console (1806 and newer). To do this, press the 🙂 button in the top right corner and choose “Send a Frown”. For more details, see https://docs.microsoft.com/en-us/sccm/core/understand/find-help.

If you require assisted support, please see https://aka.ms/cmcbsupport for more details.

Standard Disclaimer – our lawyers made us put this here ;-)
We have partnered with UserVoice, a third-party service, so you can give us feedback. Please note that the Microsoft Endpoint Configuration Manager feedback site is moderated and is a voluntary participation-based project. Please send only feature suggestions and ideas to improve Configuration Manager. Do not send any novel or patentable ideas, copyrighted materials, samples or demos. Your use of the portal and your submission is subject to the UserVoice Terms of Service & Privacy Policy, including the license terms.


  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. ConfigurationManager PowerShell module should register itself as an Env Variable

    Today, when you install the CM Console, the PowerShell module will be placed under the %CMInstallDirectory%\AdminConsole\Bin\ConfigurationManager.psd1

    This makes sense given where the user is choosing to install the console, and that's fine. But placing it here off the beaten path means that it is not importable using PowerShell's module autodiscovery features. For instance, if a module is found in any of the standard user or system paths (or registered under the $ENV:PsModulePath) the user can easily import the module without having to specify the full path, a big user quality of life win. This is the way that SQL Server…

    88 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  3 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  2. Add the ability to add and edit Install Behavior for Application Deployment types with PowerShell cmdlets

    Add the ability to add and edit Install Behavior for Application Deployment types with PowerShell cmdlets

    51 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  6 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  3. Improve folder support in cmdlets

    Actually, it is possible to create a collection with a cmdlet. But we cannot create it in a specific location. We need moving it after creating the collection. Why not just add a parameter to the New-CMDeviceCollection cmdlet?

    35 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    9 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →

    Thank you for your feedback. Folder support is something that is very limited in the cmdlet library today and something that’s in our backlog to improve in a future release. In my opinion, I think the way things should work is if you’re in a collection folder in the cmdlet drive provider, it should just create the collection in the right place.

    I’ve linked this feedback to our internal work item to improve folder support so this doesn’t get lost.

    Thanks!

  4. Provide a Powershell PackageManagement Repository and perhaps management thereof

    PowerShell PackageManagement is a unified interface to package management systems and aims to make Software Discovery, Installation and Inventory (SDII) work via a common set of cmdlets (and eventually a set of APIs). Regardless of the installation technology underneath, users can use these common cmdlets to install/uninstall packages, add/remove/query package repositories, and query a system for the software installed.

    Providing a dashboard/portal with the ability to manage the NuGet repository underlying the packagemanagement solution would make SCCM more attractive over phasing it out to go towards Chocolatey Enterprise.

    22 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  5 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  5. Get driver by category with Get-CMDriver

    Get-CMDriver does not provide on option to get drivers by category.

    14 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  6. Save-CMSoftwareUpdate error RPC server unavailable when connecting under a different account

    My idea is to have the scenario described below supported.

    When running Save-CMSoftwareUpdate command on a CMSite-PSDrive that connects to a ConfigMgr site in a different domain (used Get-Credential to pass credentials in New-PSDrive call) than the user account the PowerShell window is running as, I get error 'The RPC server is unavailable'.

    I can successfully change location to the PS drive, and run other ConfigMgr PS cmdlets.

    Commands:
    New-PSDrive -Name <sitecode> -PSProvider 'CMSite' -Root <siteserverFQDN> -Credential (Get-Credential)
    Set-Location <sitecode>:
    Save-CMSoftwareUpdate -SoftwareUpdateName <name> -DeploymentPackageName <name> -Verbose

    Verbose output from Save-CMSoftwareUpdate call:

    VERBOSE: Start: Execution of WQL query: Select * from…

    12 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. Allow "uninstall content settings" to be modified using PowerShell

    Monthly updating of applications like FlashPlayer, Java, Chrome, Reader DC, Office 365 Client, etc. are repetitive and tedious, so I like to automate monthly applications updates as much as possible. When creating a new application using powershell, I cannot set the "Uninstall content setting" located under the Deployment Type and the Content tab. This allows me to save on downloading large sets of files to uninstall when either an "MSIEXEC /X {GUID}" handles it with no files required, or something like Office 365 Client where 1.5 GB is needed to install, but only 5MB or so to uninstall.

    The command…

    11 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  4 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. Need Get-CMDetectionClause cmdlet

    Could we have a get-cmdetectionclause command? I'd like to be able to get an existing detection clause for a deployment which would be useful for not only managing existing detection clauses but being able to explore and re-using them for other applications.

    As it is right now I use get-cmapplication | get-cmdeploymenttype | select SDMPackageXML in order to view the detection method as XML.

    7 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  9. Add a cmdlet to delete (or at least disable) a Client Settings deployment (cmclientsettingsdeployment)

    There is currently no cmdlet to delete or disable a deployment of Client Settings. You can create a deployment by using the Start-CMClientSettingDeployment cmdlet but there is absolutely no way of stopping, deleting, or disabling the deployment. If you run a Get-CMDeployment against a collection, it only returns all deployments except a Client Setting.

    7 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  1 comment  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  10. get-cmdevice searchable with FQDN

    Please add the Availability to use get-cmdevice -Devicename with the FQDN and not only with the Hostname (as it is possible with get-cmdeviceVariable)

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. MVP-New-CMConfigurationItem / Set-CMConfigurationItem supported platform

    the New-CMConfigurationItem and Set-CMConfigurationItem should be able to set the supported platforms. today this is not possible to easily perform this task

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  12. Include verbose information with import-cmpackage cmdlet

    The Import-CMPackage cmdlet does not provide much in the way of verbose output with the -verbose flag. This would be useful to identify what the cmdlet is performing in the background to determine if package already exists with the same name or not.

    Steps attempted:
    $Global:VerbosePreference = "Continue"
    $Global:DebugPreference = "Continue"
    $Global:CMPSDebugLogging = $true

    import-cmpackage -ImportFilePath "\localhost\c$\Users\Testing\TestPkg.zip" -Verbose

    Output: Verbose: Performing the operation "Import" on target "Package: ".

    Trace-Command -Name metadata,parameterbinding,cmdlet -Expression {Import-CMPackage -ImportFilePath "\localhost\c$\Users\Testing\TestPkg.zip" -WhatIf} -PSHost
    DEBUG: ParameterBinding Information: 0 : BIND NAMED cmd line args [Import-CMPackage]
    DEBUG: ParameterBinding Information: 0 : BIND arg [\localhost\c$\Users\Testing\TestPkg.zip] to parameter [ImportFilePath]
    DEBUG:…

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  1 comment  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  13. API/PowerShell cmdlet to manage/automate CMG certificate renewals

    Companies are looking for alternatives to the large public CA authorities like Verisign and DigiCert, one such alternative is Let's Encypt. They offer free public-signed certificates, the only problem is the certificates need to be renewed every 90 days. The renewal can be automated using Certbot.

    However there does not appear to be any functionality in the current ConfigMgr release to allow for automated certificate replacement/renewal. This seems to be a gap in the PowerShell functionality.

    Sure its only a few minutes every 90 days to log into the console open up the CMG instance and update the certificate, and…

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  14. Make Get-CMPackage Return All Packages

    Currently, Get-CMPackage only returns “ordinary packages”, not software update packages or task sequence packages or other types. If you run the command in verbose mode, you can see the WQL query filters PackageType=0 and activity <>3.

    Documentation for this cmdlet states “Get-CMPackage returns all packages” and this is wrong. It returns all packages where type = 0. Can we please create PackageType as a parameter so all packages can be managed with one cmdlet?

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  15. Support -Fast mode in more PowerShell cmdlets

    Can Get-Get-CMTaskSequence get a [-Fast] switch like [Get-CMApplication]

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  16. New-CMOperatingSystemUpgradePackage need an Index switch

    New-CMOperatingSystemUpgradePackage need an Index switch. Unlike the wizard in the console where you can select a specific index to import, you cannot when using PowerShell. This is especially important when servicing the OS upgrade package via the Console.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  17. Need cmdlets for Distribution Point reassignment

    Create a powershell cmdlet to perform a DP reassignment as we can do on SCCM console

    2 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  18. PowerShell CmdLets: Improvement for Software Update Maintenance

    Paging Adam Meltzer.
    I’ve spent the last couple of weeks writing a PowerShell script to provide end-to-end maintenance of software updates. My goal was to use the CM cmdlets as much as possible. While I think I have everything working the experience leads me to make the suggestions below. In all honestly; maybe I’m just doing it wrong and there is a way to do the things I couldn’t figure out.
    The documentation for Get-CMSoftwareUpdateDeploymentPackage says that it returns a CMSoftwareUpdateDeploymentPackage object but it’s actually returning WqlResultObjectBase. Maybe I’m just supposed to cast it but I failed trying.

    I could…

    2 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  2 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  19. Support express updates with Set-CMClientSettingSoftwareUpdate

    add option to manage express updates via Set-CMClientSettingSoftwareUpdate (Enable/Disable and Port used)

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Noted  ·  0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  20. Issues with Import-CMComputerInformation

    Import-CMComputerInformation is not allowing me the same access via Powershell as the console itself.

    https://www.reddit.com/r/SCCM/comments/6dipv2/permissionstoimportcmcomputerinformation/

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1
  • Don't see your idea?

Feedback and Knowledge Base