Udostępnij za pośrednictwem


Test-FileCatalog

Test-FileCatalog sprawdza, czy skróty zawarte w pliku wykazu (cat) są zgodne z skrótami rzeczywistych plików w celu zweryfikowania ich autentyczności.

To polecenie cmdlet jest obsługiwane tylko w systemie Windows.

Składnia

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

Opis

To polecenie cmdlet jest dostępne tylko na platformie Windows.

Test-FileCatalog weryfikuje autentyczność plików, porównując skróty plików katalogu (cat) z skrótami rzeczywistych plików na dysku. Jeśli wykryje jakiekolwiek niezgodności, zwraca stan ValidationFailed. Użytkownicy mogą pobrać wszystkie te informacje przy użyciu parametru -Detailed. Wyświetla również stan podpisywania wykazu we właściwości Signature, która jest równoważna wywołaniu polecenia cmdlet Get-AuthenticodeSignature w pliku wykazu. Użytkownicy mogą również pominąć dowolny plik podczas walidacji przy użyciu parametru -FilesToSkip.

To polecenie cmdlet jest obsługiwane tylko w systemie Windows.

Przykłady

Przykład 1. Tworzenie i weryfikowanie wykazu plików

$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

Przykład 2. Weryfikowanie wykazu plików przy użyciu szczegółowych danych wyjściowych

$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

Parametry

-CatalogFilePath

Ścieżka do pliku wykazu (.cat), który zawiera skróty, które mają być używane do weryfikacji.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Confirm

Pyta o potwierdzenie przed uruchomieniem cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Detailed

Zwraca bardziej szczegółowy obiekt CatalogInformation, który zawiera przetestowane pliki, ich oczekiwane oraz rzeczywiste skróty, a także podpis Authenticode określonego pliku wykazu, jeśli jest on podpisany.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-FilesToSkip

Tablica ścieżek, które nie powinny być testowane w ramach walidacji.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Path

Folder lub tablica plików, które powinny zostać zweryfikowane względem pliku wykazu.

Typ:String[]
Position:1
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

DirectoryInfo

Możesz przekierować potok DirectoryInfo obiektu, który reprezentuje ścieżkę do plików, które muszą zostać zweryfikowane.

String

Możesz przekazać ciąg reprezentujący ścieżkę do plików, które muszą zostać zweryfikowane.

Dane wyjściowe

CatalogValidationStatus

Domyślnie to polecenie cmdlet zwraca obiekt CatalogValidationStatus z wartością Valid lub ValidationFailed.

CatalogInformation

Jeśli używasz parametru Szczegółowe, polecenie cmdlet zwraca obiekt CatalogInformation dla każdego pliku, który może być używany do analizy plików, które mogły lub nie mogły przejść weryfikacji; jakie skróty były oczekiwane, a jakie znaleziono, oraz algorytmu używanego w katalogu.

Uwagi

To polecenie cmdlet jest dostępne tylko na platformach Windows.