Test-FileCatalog
Test-FileCatalog
validates whether the hashes contained in a catalog file (.cat) matches the
hashes of the actual files in order to validate their authenticity.
This cmdlet is only supported on Windows.
Sintaxis
Default (Es el valor predeterminado).
Test-FileCatalog
[-Detailed]
[-FilesToSkip <String[]>]
[-CatalogFilePath] <String>
[[-Path] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Test-FileCatalog
validates the authenticity of files by comparing the file hashes of a catalog
file (.cat) with the hashes of actual files on disk. If it detects any mismatches, it returns the
status as ValidationFailed. Users can retrieve all this information by using the -Detailed
parameter. It also displays signing status of catalog in Signature property which is equivalent to
calling Get-AuthenticodeSignature
cmdlet on the catalog file. Users can also skip any file during
validation by using the -FilesToSkip parameter.
This cmdlet is only supported on Windows.
Ejemplos
Example 1: Create and validate a file catalog
New-FileCatalog -Path $PSHOME\Modules\Microsoft.PowerShell.Utility -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -CatalogVersion 2.0
Test-FileCatalog -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -Path "$PSHOME\Modules\Microsoft.PowerShell.Utility\"
Valid
Example 2: Validate a file catalog with detailed output
Test-FileCatalog -Detailed -CatalogFilePath \temp\Microsoft.PowerShell.Utility.cat -Path "$PSHOME\Modules\Microsoft.PowerShell.Utility\"
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
Parámetros
-CatalogFilePath
A path to a catalog file (.cat) that contains the hashes to be used for validation.
Propiedades del parámetro
Tipo: | String |
Valor predeterminado: | None |
Admite caracteres comodín: | False |
DontShow: | False |
Conjuntos de parámetros
(All)
Posición: | 0 |
Mandatory: | True |
Valor de la canalización: | True |
Valor de la canalización por nombre de propiedad: | True |
Valor de los argumentos restantes: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Propiedades del parámetro
Tipo: | SwitchParameter |
Valor predeterminado: | False |
Admite caracteres comodín: | False |
DontShow: | False |
Alias: | cf |
Conjuntos de parámetros
(All)
Posición: | Named |
Mandatory: | False |
Valor de la canalización: | False |
Valor de la canalización por nombre de propiedad: | False |
Valor de los argumentos restantes: | False |
-Detailed
Returns more information a more detailed CatalogInformation
object that contains the files tested,
their expected/actual hashes, and an Authenticode signature of the catalog file if it's signed.
Propiedades del parámetro
Tipo: | SwitchParameter |
Valor predeterminado: | None |
Admite caracteres comodín: | False |
DontShow: | False |
Conjuntos de parámetros
(All)
Posición: | Named |
Mandatory: | False |
Valor de la canalización: | False |
Valor de la canalización por nombre de propiedad: | False |
Valor de los argumentos restantes: | False |
-FilesToSkip
An array of paths that should not be tested as part of the validation.
Propiedades del parámetro
Tipo: | String[] |
Valor predeterminado: | None |
Admite caracteres comodín: | False |
DontShow: | False |
Conjuntos de parámetros
(All)
Posición: | Named |
Mandatory: | False |
Valor de la canalización: | False |
Valor de la canalización por nombre de propiedad: | False |
Valor de los argumentos restantes: | False |
-Path
A folder or array of files that should be validated against the catalog file.
Propiedades del parámetro
Tipo: | String[] |
Valor predeterminado: | None |
Admite caracteres comodín: | False |
DontShow: | False |
Conjuntos de parámetros
(All)
Posición: | 1 |
Mandatory: | False |
Valor de la canalización: | True |
Valor de la canalización por nombre de propiedad: | True |
Valor de los argumentos restantes: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Propiedades del parámetro
Tipo: | SwitchParameter |
Valor predeterminado: | False |
Admite caracteres comodín: | False |
DontShow: | False |
Alias: | wi |
Conjuntos de parámetros
(All)
Posición: | Named |
Mandatory: | False |
Valor de la canalización: | False |
Valor de la canalización por nombre de propiedad: | False |
Valor de los argumentos restantes: | False |
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
Entradas
DirectoryInfo
You can pipe a DirectoryInfo
object representing the path to the files that need to be validated.
String
You can pipe a string representing the path to the files that need to be validated.
Salidas
CatalogValidationStatus
By default, this cmdlet returns a CatalogValidationStatus object with a value of either Valid
or ValidationFailed
.
CatalogInformation
When you use the Detailed parameter, the cmdlet returns a CatalogInformation object for each file, which can be used to analyze specific files that may or may not have passed validation, which hashes were expected vs. found, and the algorithm used in the catalog.