0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

自PCにインストールされている証明書をテキスト(csv)出力する仕組み

Posted at

やりたいこと

PC 交換時に交換前の PC に入っている証明書を把握しておきたい。

やり方

「個人」の証明書を表示させたい場合は下記のコマンドを実行します。

サンプル.ps1
Get-ChildItem -Path Cert:\CurrentUser\My

全ての証明書を網羅し、テキスト(csv)出力する場合は下記の PowerShell を実行します。

証明書出力.ps1
# 検索する証明書ストアのリスト
$stores = @()
$stores += "My"
$stores += "Root"
$stores += "CA"
$stores += "TrustedPeople"
$stores += "TrustedPublisher"
$stores += "AuthRoot"
$stores += "Disallowed"
$stores += "ClientAuthIssuer"
$stores += "UserDS"
$stores += "ACRS"
$stores += "REQUEST"
$stores += "addressbook"
$stores += "Local NonRemovable Certificates"
$stores += "SmartCardRoot"
$stores += "Trust"

# 全ての証明書を格納するリスト
$allCerts = @()

# 各ストアから証明書を取得
foreach ($store in $stores) {
    $localMachineCerts = Get-ChildItem -Path "Cert:\LocalMachine\$store" | Select-Object -Property *, @{Name="Store";Expression={"LocalMachine\$store"}}
    $currentUserCerts = Get-ChildItem -Path "Cert:\CurrentUser\$store" | Select-Object -Property *, @{Name="Store";Expression={"CurrentUser\$store"}}
    $allCerts += $localMachineCerts
    $allCerts += $currentUserCerts
}

# 指定された情報に一致する証明書を検索
$matchingCerts = $allCerts

# 結果を表示
if ($matchingCerts) {
    $matchingCerts | Select-Object -Property Store, PSPath, Subject, Issuer, Thumbprint, NotBefore, NotAfter | `
        Export-Csv -Path "$ENV:USERPROFILE\Desktop\$($ENV:USERNAME)_$($ENV:COMPUTERNAME)_証明書_$(Get-Date -Format yyyyMMdd).csv" -NoTypeInformation -Encoding Default
} else {
    Write-Output "指定された情報に一致する証明書は見つかりませんでした。"
}

注意
検索機能を拡張するための処理が入っています。
実装しておりませんので無意味な処理です。
※「\$matchingCerts = $allCerts」の部分。

実行結果

デスクトップ上に「ユーザー名_ホスト名_証明書_yyyyMMdd.csv」が出力されます。

検索用

証明書
証明書ストア
個人
ほかの人
中間証明機関
信頼されたルート証明機関
頼された発行元
頼されない発行元
発行先
発行者
有効期限
フレンドリ名
サーバー認証
クライアント認証
コード署名
電子メールの保護

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?