Test-FileCatalog
Test-FileCatalog convalida se gli hash contenuti in un file di catalogo (con estensione cat) corrispondono agli hash dei file effettivi per convalidare l'autenticità.
Questo cmdlet è supportato solo in Windows.
Sintassi
Default (impostazione predefinita).
Test-FileCatalog
[-Detailed]
[-FilesToSkip <String[]>]
[-CatalogFilePath] <String>
[[-Path] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Questo cmdlet è disponibile solo nella piattaforma Windows.
Test-FileCatalog convalida l'autenticità dei file confrontando gli hash dei file di un file di catalogo (cat) con gli hash dei file effettivi su disco. Se rileva eventuali mancate corrispondenze, restituisce lo stato ValidationFailed. Gli utenti possono recuperare tutte queste informazioni usando il parametro -Detailed. Mostra anche lo stato della firma del catalogo nella proprietà Firma, equivalente a eseguire il comando Get-AuthenticodeSignature sul file del catalogo. Gli utenti possono anche ignorare qualsiasi file durante la convalida usando il parametro -FilesToSkip.
Questo cmdlet è supportato solo in Windows.
Esempio
Esempio 1: Creare e convalidare un catalogo file
$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
Esempio 2: Convalidare un catalogo file con output dettagliato
$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
Parametri
-CatalogFilePath
Percorso di un file di catalogo (.cat) che contiene gli hash da usare per la convalida.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Detailed
Restituisce altre informazioni un oggetto CatalogInformation più dettagliato che contiene i file testati, gli hash previsti/effettivi e una firma Authenticode del file di catalogo, se firmato.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-FilesToSkip
Matrice di percorsi che non devono essere testati come parte della convalida.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Path
Cartella o matrice di file che devono essere convalidati rispetto al file di catalogo.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | 1 |
| Obbligatorio: | False |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
DirectoryInfo
È possibile inviare tramite pipe un oggetto DirectoryInfo che rappresenta il percorso ai file da convalidare.
String
È possibile inviare tramite pipe una stringa che rappresenta il percorso ai file che devono essere convalidati.
Output
CatalogValidationStatus
Per impostazione predefinita, questo cmdlet restituisce un oggetto CatalogValidationStatus con un valore Valid o ValidationFailed.
CatalogInformation
Quando si utilizza il parametro dettagliato, il cmdlet restituisce un oggetto CatalogInformation per ogni file, che può essere utilizzato per analizzare file specifici che potrebbero o meno avere superato la convalida, quali hash erano previsti rispetto a quelli trovati, e l'algoritmo usato nel catalogo.
Note
Questo cmdlet è disponibile solo nelle piattaforme Windows.