Partager via


Test-FileCatalog

Test-FileCatalog vérifie si les hachages contenus dans un fichier catalogue (.cat) correspondent aux hachages des fichiers réels afin de valider leur authenticité.

Cette applet de commande est prise en charge uniquement sur Windows.

Syntaxe

Test-FileCatalog
    [-Detailed]
    [-FilesToSkip <String[]>]
    [-CatalogFilePath] <String>
    [[-Path] <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Cette applet de commande est disponible uniquement sur la plateforme Windows.

Test-FileCatalog valide l’authenticité des fichiers en comparant les hachages de fichiers d’un fichier catalogue (.cat) aux hachages de fichiers réels sur le disque. S’il détecte des incompatibilités, il retourne l’état "ValidationFailed." Les utilisateurs peuvent récupérer toutes ces informations à l’aide du paramètre -Detailed. Elle affiche également l'état de signature du catalogue dans la propriété Signature, ce qui équivaut à appeler la cmdlet Get-AuthenticodeSignature sur le fichier de catalogue. Les utilisateurs peuvent également ignorer n’importe quel fichier lors de la validation à l’aide du paramètre -FilesToSkip.

Cette applet de commande est prise en charge uniquement sur Windows.

Exemples

Exemple 1 : Créer et valider un catalogue de fichiers

$NewFileCatalogParams = @{
    Path = "$PSHOME\Modules\Microsoft.PowerShell.Utility"
    CatalogFilePath = "\temp\Microsoft.PowerShell.Utility.cat"
    CatalogVersion = 2.0
}
New-FileCatalog @NewFileCatalogParams

$TestFileCatalogParams = @{
    CatalogFilePath = "\temp\Microsoft.PowerShell.Utility.cat"
    Path = "$PSHome\Modules\Microsoft.PowerShell.Utility\"
}
Test-FileCatalog @TestFileCatalogParams

Valid

Exemple 2 : Valider un catalogue de fichiers avec une sortie détaillée

$TestFileCatalogParams = @{
    Detailed = $true
    CatalogFilePath = "\temp\Microsoft.PowerShell.Utility.cat"
    Path = "$PSHome\Modules\Microsoft.PowerShell.Utility\"
}
Test-FileCatalog @TestFileCatalogParams

Status        : Valid
HashAlgorithm : SHA256
CatalogItems  : {[Microsoft.PowerShell.Utility.psd1,
                A7028BD54018AE519381CDF5BF91F3B0417BD9345478086089ACBFAD05C899FC], [Microsoft.PowerShell.Utility.psm1,
                1127E8151FB86BCB683F932E8F6538552F7195816ED351A28AE07A753B8F20DE]}
PathItems     : {[Microsoft.PowerShell.Utility.psd1,
                A7028BD54018AE519381CDF5BF91F3B0417BD9345478086089ACBFAD05C899FC], [Microsoft.PowerShell.Utility.psm1,
                1127E8151FB86BCB683F932E8F6538552F7195816ED351A28AE07A753B8F20DE]}
Signature     : System.Management.Automation.Signature

Paramètres

-CatalogFilePath

Chemin d’accès à un fichier catalogue (.cat) qui contient les hachages à utiliser pour la validation.

Type:String
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Detailed

Retourne plus d’informations sur un objet CatalogInformation plus détaillé qui contient les fichiers testés, leurs hachages attendus/réels et une signature Authenticode du fichier catalogue s’il est signé.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-FilesToSkip

Tableau de chemins qui ne doivent pas être testés dans le cadre de la validation.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Path

Dossier ou tableau de fichiers qui doivent être validés par rapport au fichier catalogue.

Type:String[]
Position:1
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

DirectoryInfo

Vous pouvez diriger un objet DirectoryInfo représentant le chemin d’accès aux fichiers qui doivent être validés.

String

Vous pouvez diriger une chaîne représentant le chemin d’accès aux fichiers qui doivent être validés.

Sorties

CatalogValidationStatus

Par défaut, cette applet de commande retourne un objet CatalogValidationStatus avec la valeur Valid ou ValidationFailed.

CatalogInformation

Lorsque vous utilisez le paramètre Détaillé, l’applet de commande retourne un objet CatalogInformation pour chaque fichier, qui peut être utilisé pour analyser des fichiers spécifiques susceptibles ou non d’avoir réussi la validation, les hachages attendus et l’algorithme utilisé dans le catalogue.

Notes

Cette applet de commande est disponible uniquement sur les plateformes Windows.