Test-FileCatalog
Test-FileCatalog valida se os hashes contidos em um arquivo de catálogo (.cat) correspondem aos hashes dos arquivos reais para validar sua autenticidade.
Este cmdlet só é suportado no Windows.
Sintaxe
Default (Predefinição)
Test-FileCatalog
[-Detailed]
[-FilesToSkip <String[]>]
[-CatalogFilePath] <String>
[[-Path] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Este cmdlet só está disponível na plataforma Windows.
Test-FileCatalog valida a autenticidade dos arquivos comparando os hashes de arquivo de um arquivo de catálogo (.cat) com os hashes de arquivos reais no disco. Se detetar qualquer incompatibilidade, retornará o estado como "ValidationFailed". Os usuários podem recuperar todas essas informações usando o parâmetro -Detailed. Ele também exibe o estado da assinatura do catálogo na propriedade Assinatura, que é equivalente a executar o cmdlet Get-AuthenticodeSignature no arquivo de catálogo. Os usuários também podem ignorar qualquer arquivo durante a validação usando o parâmetro -FilesToSkip.
Este cmdlet só é suportado no Windows.
Exemplos
Exemplo 1: Criar e validar um catálogo de arquivos
$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
Exemplo 2: Validar um catálogo de arquivos com saída detalhada
$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
Parâmetros
-CatalogFilePath
Um caminho para um arquivo de catálogo (.cat) que contém os hashes a serem usados para validação.
Propriedades dos parâmetros
| Tipo: | String |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-Confirm
Solicita confirmação antes de executar o cmdlet.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | Cf. |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Detailed
Retorna mais informações um objeto CatalogInformation mais detalhado que contém os arquivos testados, seus hashes esperados/reais e uma assinatura Authenticode do arquivo de catálogo, se ele estiver assinado.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-FilesToSkip
Uma matriz de caminhos que não deve ser testada como parte da validação.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Path
Uma pasta ou matriz de arquivos que deve ser validada em relação ao arquivo de catálogo.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | 1 |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | Wi |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
DirectoryInfo
Você pode canalizar um objeto DirectoryInfo que representa o caminho para os arquivos que precisam ser validados.
String
Você pode canalizar uma cadeia de caracteres que representa o caminho para os arquivos que precisam ser validados.
Saídas
CatalogValidationStatus
Por predefinição, este cmdlet retorna um objeto CatalogValidationStatus com um valor de Valid ou ValidationFailed.
CatalogInformation
Quando você usa o parâmetro
Notas
Este cmdlet só está disponível em plataformas Windows.