PowerShell

The PowerShell forum accepts bug reports as well as feedback and suggestions. For more information, check out the PowerShell Homepage

The following is a list of the states we use to track items.

status meaning
survey We saw this and we are considering it. Please upvote if it’s important to you.
needs more information We don’t understand the issue and need additional details.
investigating We are looking at this internally to understand things like: scenario, reproduction of issue, costing, or other technical details.
in queue The issue is understood and in our unprioritized backlog. Your votes will be used to drive prioritization of this work.
  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. List the DSCRs\Modules with versions used when compiling a MOF

    Allow access to the list of DSCRs\Modules with versions used in a configuration when compiling it.

    This list can then be used in the CI\CD pipeline to ensure the correct versions of modules containing DSCRs are transferred to a share or a pull server repository before the MOF is applied to a target computer.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  2. MinimumCompatibleVersion still causes "Cannot find module PSDesiredStateConfiguration_1.0 from the server"

    Although a very similar issue has been resolved in WMF5.1 we are encountering an issue when working with partial configurations.

    It seems that the MinimumCompatibleVersion for the complete configurations is taken from the "first" (alphabetical order) partial configuration. If this happens to be a 2.0.0 configuration then other partials which were 1.0.0 cannot load the PSDesiredStateConfiguration module.

    Please take a look at the reproduction in the attachment.
    We reproduced this on windows server 2012r2, 2016 and 2019 and it is causing a very blocking issue for us.

    Edit; since the attachments dont seem to work:

    if (-not $inputCredential)
    {

    $inputCredential
    12 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  3. font color is too dark... anyway to change it?

    I love to use Powershell. But some of its default color is too dark so that I cannot read them. I submitted comparison screenshot with CMD.

    The posted screenshot is, as you see, 'ls' command from a remote server logined by CMD and Powershell each. You may see that right one's 'ls' output is too dark. I changed background but it was same cause it's the problem of font color itself not the background color or font size.

    Some of internet post guided to change bash setting to change output color of 'ls', but that is just temporary fix only…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  4. Invoke-DscResource always create a CimSession to invoke the DSC resource using WSMan over HTTP

    I am trying to install SQLServer 2019 on Windows Server 2019 using ansible and SqlServerDsc I am getting aN error about missing CimClass MSFT_SqlSetup.

    The error happens when ONLY HTTPS listener is active (The HTTP listener is deleted)

    The investigation from Ansible team shows that the problem comes down to Invoke-DscResource always creating a CimSession to invoke the DSC resource using WSMan over HTTP by the default configured port. The only thing we can control is the port but even then it won't work for the HTTPS listener as the wrong protocol will be used.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  5. Add-ADPrincipalGroupMembership [-WhatIf] [-Confirm] [-AuthType <ADAuthType>] [-Credential <PSCredential>] [-Identity] <ADPrin

    Add-ADPrincipalGroupMembership
    [-WhatIf]
    [-Confirm]
    [-AuthType <ADAuthType>]
    [-Credential <PSCredential>]
    [-Identity] <ADPrincipal>
    [-MemberOf] <ADGroup[]>
    [-Partition <String>]
    [-PassThru]
    [-Server <String>]
    [<CommonParameters>]

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  6. BUG: Dsc Engine Merge configuration doesn't compare Table String type as expected

    When you run Start-DscConfiguration to apply a new configuration, LCM merge all the configuration settings who belong to the same node name. Like the file below. When sacfg (alias) run, then the ValueData of the two resource are compared by the merge processus. Then the merge fail because ValueData is declared as String[] (table) type into the RegistryResource .mof file.
    Below you can find the configuration file to create the issue.
    Another behavior:
    If you specify a string array with several value then PowerShell "PSDesiredStateConfiguration.psm1" throw an error at the execution instead of the LCM. The compared values are always…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  7. Bug: The first time New-NetLbfoTeam is used by Desired State Configuration it creates a misnamed interface

    The first time New-NetLbfoTeam is used by Desired State Configuration it creates a misnamed interface.

    This is on Server 2019 Build 17763.557 with the following updates applied:

    KB4483452
    KB4470788
    KB4503308
    KB4504369
    KB4503327

    Powershell shows:
    Name Value


    PSVersion 5.1.17763.503

    PSEdition Desktop

    PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}

    BuildVersion 10.0.17763.503

    CLRVersion 4.0.30319.42000

    WSManStackVersion 3.0

    PSRemotingProtocolVersion 2.3

    SerializationVersion 1.1.0.1

    For example:

    New-NetLbfoTeam -Name "Team1" -TeamMembers "NIC1" -TeamNicName "Team1" -LoadBalancingAlgorithm Dynamic -TeamingMode SwitchIndependent -Confirm:$False

    Will create an interface called "Ethernet" (Visible through Get-NetAdapter).

    If you delete the team and recreate in the same DSC, it'll work correctly.

    i.e. this works and creates an interface called…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  8. It does not work with all MSIs

    This resurce does not handle correctly all MSIs. For example Firefox MSI will not be installed due to the ProdID

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  9. Error when changing/reconfiguring a Service Resource

    I was trying to use a DSC Configuration to automate the release of a Windows Service application. However, I ran into the following issue that could be problematic.

    After applying the following configuration...

        Service &quot;Hello&quot; {
    
    Name = &quot;Hello&quot;
    Path = &quot;C:\hello\hello.exe&quot;
    State = &quot;Stopped&quot;
    Ensure = &quot;Present&quot;
    }

    I modify to and apply the following...

        Service &quot;Hello&quot; {
    
    Name = &quot;Hello&quot;
    Path = &quot;C:\WinServices\hello&quot;
    State = &quot;Stopped&quot;
    StartupType = &quot;Disabled&quot;
    Ensure = &quot;Present&quot;
    }

    With the sole change being the addition of StartupType = "Disabled".

    The problem is that applying the modification yields the following error...

    PowerShell DSC resource…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  10. DSC File resource Encoding Property

    The file resource really needs an encoding property.

    Need to have some control over this as it makes the resource unusable in a lot of situations, which is a shame.

    10 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  11. Enable configuration version tracking for compiled DSC configurations

    As a part of infrastructure as code or using DSC in the deployment pipelines, it is desired that we be able to identify the version of the node configuration. With all configurations being put into a source / version control repository, it won't be difficult to promote the version number for a given configuration document. However, at this point in time, there is no way to specify the version of the configuration document itself anywhere. This makes it hard to determine or identify what version of the configuration is being used on a target node without using a 3rd party…

    39 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  12. Fix Add-DnsServerResourceRecord TXT Records Limit

    When attempting to add a TXT DNS record via the "Add-DnsServerResourceRecord" command, the DescriptiveText property only accepts strings up to 254 characters but should support up to 255 characters. Ideally the command should accept an array for the DescriptiveText so that multiple lines of up to 255 characters can be passed through. Currently it requires using rn to insert a line break but over all must still be under 254 characters. This is an issue as we are trying to implement automation around TXT records and DKIM records tend to be well over this 254 character limit and require…

    3 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  13. issue with encrypted mofs on a pull server [partialconfigs]

    i have a pull server with 2 non-encrypted mofs, and 1 encrypted mof. The LCM on the lab node is configured to pull the 3 different configs as partialconfigs. When I run Start-DSCConfiguration, the encrypted mof fails with the following:

    PowerShell DSC resource MSFT_UserResource failed to execute Set-TargetResource functionality with error message: There could be a possible multiple matches exception while trying to use the System.DirectoryServices API's.Exception calling "Save" with "0" argument(s): "The
    password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements.
    "

    + CategoryInfo          : InvalidOperation: (:) [], CimException
    
    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  14. Automatic Conflict Resolution For Partial Configurations

    The LCM is already able to detect conflicts, with a fairly small change you could make it automatically resolve it.
    In my opinion we should be able to set a priority of each partial configuration in the meta config of the LCM.
    With a priority set and when a conflict is detected, the LCM could look at the priority and choose a winner.

    You could than create a layered approach of partial configs (by different teams) without having to be afraid of running into conflicts.

    This is something I see more people struggling with, which results in solutions like datum…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  15. Import-DSCResource for File, others fails

    When using Import-DSCResource -Name, various OOB resources do not work. Consider 'File' which is a built in resource, the following code will fail.

    Configuration Sample
    {

    Import-DSCResource -Name File
    
    

    # This will generate two .mof files, a localhost.mof, and a server02.mof
    Node @(&#39;localhost&#39;, &#39;server02&#39;)
    {
    File SampleFile
    {
    DestinationPath = &#39;C:\Temp\temp.txt&#39;
    Contents = &#39;This is a simple resource to show Configuration functionality on a Node.&#39;
    }
    }

    }

    Sample -OutputPath P:\temp\

    Start-DSCConfiguration P:\temp -computername localhost -wait -verbose

    If you change the resource to Service, it works as expected.

    I'm guessing this is because File is a binary resource under System32\Configuration,…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  16. Find-DSCResource does not find resources.

    Find-DSCResource does not find resources. The wildcarded -Name parameter does not find anything when used, the Filter parameter seems to map Module names only, and even used seems to miss resources.

    To reproduce:

    Find-DSCResource -Name time - finds nothing
    Find-DSCResource -Filter time - does not find newer TimeZone resource (only xTimeZone)

    Find-DSCResource -Filter time does not find anything.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  17. Compiling large number of DSC MOF files is slow

    We use logic to dynamically compose a ConfigurationData structure and pass it to the configuration. This logic executes quickly. Calling the configuration generates more than 5,000 MOF files for unique nodes. The process takes 1.5 hours on modern server-class hardware with 16GB RAM. Also, the MOF files are all created at the end of the process, rather than one-at-a-time throughout the process. This causes high memory usage. Please optimize the PSDesiredStateConfiguration module to generate large quantities of MOF files more quickly. This issue adds significant delay to the DSC pipeline.

    27 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    9 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  18. Bring the Azure Automation DSC MOF encryption into the on-premises DSC pull server

    In Azure Automation DSC the whole MOF file gets encrypted without the need to manually issue certificates for every node and then to collect the public keys.

    From Azure documentation:
    "Keeping credentials secure in node configurations (MOF configuration documents) requires encrypting the credentials in the node configuration MOF file. Azure Automation takes this one step further and encrypts the entire MOF file."

    This extremely useful feature sould also be implemented in the on-premises DSC pull server. Especially because the needed functionality must alread be in the WMF 5 as nothing more than WMF 5 is needed to use the Azure…

    16 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    survey  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  19. [BUG] Configuration enact fails when resource instances of same type have different PSDscRunAsCredentials

    Take a look at the following configuration:
    $configurationData =
    @{

    AllNodes =
    
    @(
    @{
    NodeName = &#39;S16-01&#39;
    PsDscAllowPlainTextPassword = $true
    PSDscAllowDomainUser = $true
    }
    )

    }

    Configuration DSCRunDemo
    {

    param (
    
    [pscredential] $Credential
    )
    Import-DscResource -ModuleName PSDesiredStateConfiguration

    Node $AllNodes.NodeName
    {
    Script DSCRunDemo1
    {
    SetScript =
    {
    Write-Verbose -Message $(whoami)
    }
    TestScript =
    {
    return $false
    }
    GetScript =
    {
    return @{}
    }
    PsDscRunAsCredential = $Credential
    }

    Script DSCRunDemo2
    {
    SetScript =
    {
    Write-Verbose -Message $(whoami)
    }
    TestScript =
    {
    return $false
    }
    GetScript =
    {
    return @{}
    }
    }
    }

    }

    DSCRunDemo -ConfigurationData $configurationData -Credential (Get-Credential)

    One instance of the…

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  20. DSC: Should allow Credentials with Blank Passwords, so you can use GMSA accounts

    For some reason DSC errors out with a credential object contains a null password. Unfortunately that is the mechanism use to set group managed service accounts.
    Here is a link to a relevant bug in xWebAdministration: https://github.com/PowerShell/xWebAdministration/issues/80#issuecomment-171364644

    And here is an example of the output your recieve when you attempt to use a managed service account:

    "VERBOSE: [COMPUTERNAME]: LCM: [ End Test ] [[xWebAppPool]testpool] in 0.0070 seconds.
    The password supplied to the Desired State Configuration resource MSFT_xWebAppPool is not valid. The password cannot be null or empty.

    + CategoryInfo          : InvalidResult: (:) [], CimException
    
    + FullyQualifiedErrorId : InvalidPassword
    + PSComputerName
    128 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
    survey  ·  Mark Gray responded

    Thanks for the feedback! I have personally heard this request from a number of customers. IMHO having the ability to use GMS accounts would be a quite useful in DSC configurations. If this is an important feature for you as well, vote it up so that we can appropriately prioritize it as we move forward.

    MarkG

← Previous 1 3 4 5 6 7 8
  • Don't see your idea?

Feedback and Knowledge Base