次の方法で共有


Get-AuthenticodeSignature

ファイルの Authenticode 署名に関する情報を取得します。

構文

Get-AuthenticodeSignature
   [-FilePath] <String[]>
   [<CommonParameters>]
Get-AuthenticodeSignature
   -LiteralPath <String[]>
   [<CommonParameters>]

説明

Get-AuthenticodeSignature コマンドレットは、ファイルの Authenticode 署名に関する情報を取得します。 ファイルが署名されていない場合、情報は取得されますが、フィールドは空白です。

例 1: ファイルの Authenticode 署名を取得する

Get-AuthenticodeSignature -FilePath "C:\Test\NewScript.ps1"

このコマンドは、NewScript.ps1 ファイル内の Authenticode 署名に関する情報を取得します。 FilePath パラメーターを使用してファイルを指定します。

例 2: 複数のファイルの Authenticode 署名を取得する

Get-AuthenticodeSignature test.ps1, test1.ps1, sign-file.ps1, makexml.ps1

このコマンドは、コマンド ラインにリストされている 4 つのファイルの Authenticode 署名に関する情報を取得します。 この例では、FilePath パラメーターの名前 (省略可能) は省略されています。

例 3: 複数のファイルの有効な Authenticode 署名のみを取得する

Get-ChildItem $PSHOME\*.* | ForEach-object {Get-AuthenticodeSignature $_} | Where-Object {$_.status -eq "Valid"}

このコマンドは、有効な Authenticode 署名を持つ $PSHOME ディレクトリ内のすべてのファイルを一覧表示します。 $PSHOME 自動変数には、PowerShell インストール ディレクトリへのパスが含まれています。

このコマンドでは、 Get-ChildItem コマンドレットを使用して、 $PSHOME ディレクトリ内のファイルを取得します。 のパターンを使用します。ディレクトリを除外する します (ただし、ファイル名にドットがないファイルも除外されます)。

このコマンドでは、パイプライン演算子 (|) を使用して、 $PSHOME 内のファイルを ForEach-Object コマンドレットに送信し、ファイルごとに Get-AuthenticodeSignature が呼び出されます。

Get-AuthenticodeSignature コマンドの結果は、ステータスが [有効] の署名オブジェクトのみを選択する Where-Object コマンドに送信されます。

パラメーター

-FilePath

調べるファイルへのパスを指定します。 ワイルドカードは許可されますが、1 つのファイルにつながる必要があります。 このパラメーターの値を指定するときに、コマンド行で -FilePath を入力する必要はありません。

型:String[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:True

-LiteralPath

調べるファイルへのパスを指定します。 FilePathとは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ文字として文字を解釈しないように PowerShell に指示します。

型:String[]
Aliases:PSPath
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

入力

String

ファイル パスを含む文字列を Get-AuthenticodeSignature にパイプ処理できます。

出力

Signature

Get-AuthenticodeSignature は、取得した各署名の署名オブジェクトを返します。

メモ

PowerShell での Authenticode 署名の詳細については、「about_Signing」を参照してください。