Partager via


Invoke-DscResource

Exécute une méthode d’une ressource d’Desired State Configuration PowerShell (DSC) spécifiée.

Syntax

Invoke-DscResource
      [-Name] <String>
      [[-ModuleName] <ModuleSpecification>]
      [-Method] <String>
      [-Property] <Hashtable>
      [<CommonParameters>]

Description

La cmdlet Invoke-DscResource exécute une méthode d’une ressource Desired State Configuration (DSC) PowerShell spécifiée.

Cette cmdlet appelle directement une ressource DSC sans créer de document de configuration. À l’aide de cette applet de commande, les produits de gestion de la configuration peuvent gérer Windows ou Linux avec des ressources DSC.

Cette applet de commande ne fonctionne pas avec les ressources composites. Les ressources composites sont des configurations paramétrables. L’utilisation de ressources composites nécessite le gestionnaire de configuration local.

Notes

Avant PSDesiredStateConfiguration 2.0.6, l’utilisation Invoke-DscResource de dans PowerShell 7 nécessite l’activation d’une fonctionnalité expérimentale PowerShell. Pour utiliser l’applet de commande dans les versions 2.0.0 à 2.0.5, vous devez l’activer avec la commande suivante.

Enable-ExperimentalFeature PSDesiredStateConfiguration.InvokeDscResource

Exemples

Exemple 1 : Appeler la méthode Set d’une ressource en spécifiant ses propriétés obligatoires

Cet exemple appelle la méthode Set d’une ressource nommée WindowsProcess et fournit les propriétés Path et Arguments obligatoires pour démarrer le processus Windows spécifié.

Invoke-DscResource -Name WindowsProcess -Method Set -ModuleName PSDesiredStateConfiguration -Property @{
  Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
  Arguments = ''
}

Exemple 2 : Appeler la méthode Test d’une ressource pour un module spécifié

Cet exemple appelle la méthode Test d’une ressource nommée WindowsProcess, qui se trouve dans le module nommé PSDesiredStateConfiguration.

$SplatParam = @{
    Name       = 'WindowsProcess'
    ModuleName = 'PSDesiredStateConfiguration'
    Method     = 'Test'
    Property   = @{
        Path      = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
        Arguments = ''
    }
}

Invoke-DscResource @SplatParam

Paramètres

-Method

Spécifie la méthode de la ressource appelée par cette applet de commande. Les valeurs acceptables pour ce paramètre sont : Get, Set et Test.

Type:String
Accepted values:Get, Set, Test
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ModuleName

Spécifie le nom du module fournissant la ressource DSC spécifiée à appeler.

Type:ModuleSpecification
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Spécifie le nom de la ressource DSC à appeler.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Property

Spécifie le nom de propriété de ressource et sa valeur dans une table de hachage comme clé et valeur, respectivement.

Type:Hashtable
Position:3
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Entrées

String

ModuleSpecification

Sorties

Object

Notes

  • Dans Windows PowerShell ressources 5.1 s’exécutaient sous le contexte système, sauf si elles sont spécifiées avec le contexte utilisateur à l’aide de la clé PsDscRunAsCredential. Dans PowerShell 7.0, les ressources s’exécutent dans le contexte de l’utilisateur, et PsDscRunAsCredential n’est plus pris en charge. L’utilisation de cette clé entraîne la levée d’une exception par l’applet de commande.

  • À compter de PowerShell 7, Invoke-DscResource ne prend plus en charge l’appel des ressources WMI DSC. Sont incluses les ressources File et Log dans PSDesiredStateConfiguration.