知識マップ: Windows証明書ストア実務ガイド ── ユーザーとコンピューター、どちらに入れるか

記事「Windows証明書ストア実務ガイド ── ユーザーとコンピューター、どちらに入れるか」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。

Windowsの証明書ストアはユーザー(CurrentUser)とコンピューター(LocalMachine)の2系統に分かれ、クライアント証明書をどちらに入れるかは「そのプログラムが誰として動くか」で決まります。無人実行のWindowsサービスはコンピューターストアと秘密キーのアクセス権付与がワンセットで、証明書の期限切れとハードコードされた拇印が、証明書起因の接続障害の定番原因です。

Windows証明書ストア実務ガイドの知識マップ証明書ストア(ユーザー/コンピューター)、クライアント証明書、秘密キー、証明書チェーン、ルートCA・中間CA、期限切れ・拇印と接続障害、入れ替え手順・台帳・自己署名証明書のリスクの関係を示す図利用する前提とする前提とする前提とする前提とする原因になり得る原因になり得るで確認できるで構成できるで構成できるで確認できるで確認できるで確認できるで確認できるに保存されるで確認できるに保存される利用するに保存されるで構成できる防止する防止する原因になり得る用いるのは非推奨用いるのは非推奨推奨される対応内容を継承するに保存される原因になり得る利用する前提とする利用する原因になり得る用いるのは非推奨前提とするより先に行うべき利用する軽減する前提とする推奨される対応推奨される対応証明書ストアクライアント証明書Windowsサービスコンピューターの証明書ストア秘密キー秘密キーのアクセス権証明書チェーン中間CA証明書ルートCA証明書証明書の期限切れ証明書起因の接続障害拇印のハードコードグループポリシーMicrosoft Intuneユーザーの証明書ストアcertmgr.msccertlm.mscCert:ドライブPFXファイルcertutilコード署名証明書信頼された発行元ストア対話ユーザーのデスクトップアプリ証明書の入れ替え証明書台帳アドホックな自己署名証明書信頼の起点の悪用リスク証明書の選択(検索)「個人」ストア(My)ストアの取り違えIISアプリケーションプールタスクスケジューラの無人実行エクスポート可能でのインポート秘密キーの持ち出しリスクEveryoneへのフルコントロール付与相手先への証明書事前登録新証明書への切り替えX509StoreクラスvalidOnly指定の証明書検索キー使用法(Key Usage)属性拇印の構成外出し選択証明書のログ出力

概念間の関係(全41件)

図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。

主要概念の定義

証明書ストア
Windowsが証明書を保管・管理する場所の総称。
クライアント証明書
TLS通信で接続元(クライアント)の身元を証明するための証明書。
Windowsサービス
ユーザーのサインインと無関係にバックグラウンドで動くWindowsのプロセス。
証明書チェーン
末端の証明書からルートCAまで連なる信頼の連鎖。
証明書の期限切れ
証明書の有効期間(NotAfter)を過ぎて検証に失敗する状態。
拇印のハードコード
証明書の拇印をコードや構成ファイルに直書きして参照すること。証明書更新のたびに修正が必要になる。
証明書起因の接続障害
証明書やその参照設定が原因でTLS接続・認証に失敗する障害。
ルートCA証明書
信頼の起点となる認証局の証明書。「信頼されたルート証明機関」ストアに置かれる。
ユーザーの証明書ストア
ユーザーアカウントごとに別に存在する証明書ストア。
コンピューターの証明書ストア
PCに1つで、全ユーザーとサービスに共通の証明書ストア。
秘密キー
証明書と対になり、署名や復号に使う非公開の鍵。
コード署名証明書
ソフトウェアの発行元を証明し、改ざんを検出するための証明書。
対話ユーザーのデスクトップアプリ
ログオンしたユーザー本人の権限で動くデスクトップアプリケーション。
秘密キーのアクセス権
ストア上の秘密キーをどのアカウントが読めるかを決めるアクセス制御。
証明書の入れ替え
新しい証明書を追加し、相手先への事前登録・切り替え・動作確認を経て古い証明書を削除する手順。
証明書台帳
用途・拇印・保管場所・期限・担当者を記録し、棚卸し結果と突き合わせる一覧。
アドホックな自己署名証明書
検証用にツールで自前発行したサーバー/クライアント証明書。鍵管理の仕組みを持たず、検証環境限定・期限つきでの利用が原則。適切に運用される社内CAのルート証明書(これも技術的には自己署名)とは区別する。
ストアの取り違え
証明書を入れたストアと、プログラムや管理者が見ているストアが別物になっている状態。「開発中は動いたのに本番で見つからない」の正体。
IISアプリケーションプール
IIS上のWebアプリの実行単位。プールのIDというアカウントで無人実行される。
タスクスケジューラの無人実行
ユーザーのログオン有無に関わらずタスクに指定したアカウントでプログラムを実行する仕組み。
エクスポート可能でのインポート
Import-PfxCertificateに-Exportableを付け、取り込んだ秘密キーを後から再エクスポートできる形にすること。
Everyoneへのフルコントロール付与
動かないからと秘密キーのACLにEveryoneのフルコントロールを与えること。秘密キーを平文パスワード並みの扱いに落とす。
相手先への証明書事前登録
事前登録が必要なAPIで、新しい証明書を相手先システムへ届け出て新旧併用の並行期間を確保すること。
X509Storeクラス
StoreNameとStoreLocationを指定して証明書ストアを開く.NETのクラス。
validOnly指定の証明書検索
X509Certificate2Collection.Findの第3引数にtrueを指定し、検証を通った有効な証明書だけを返す検索。
拇印の構成外出し
証明書の拇印をコードではなく構成ファイルに置き、リリースなしで差し替えられるようにする設計。
選択証明書のログ出力
起動時にどの証明書(拇印・期限)を選んだかをログに残す運用。障害調査と台帳突き合わせの起点になる。

機械可読データ

このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。