senote NOTE

ADCS | CAのバックアップで「指定された状態で使用するには無効なキーです」が出た場合

f:id:senote:20210917135723p:plain

例:エラー画面
■(参考)証明書サービス(ADCS)の環境

Windows Server 2008 R2 Standard SP1 64bit
エンタープライズCA

 

■事象

[Certutil –backup]コマンドを実行すると以下のエラーが発生する。

CertUtil: -backup コマンド エラーです: 0x8009000b
CertUtil: 指定された状態で使用するには無効なキーです。

 

■原因

秘密キーのエクスポートが不可に設定されている証明書拇印(Hash)があるため。

 

■対処法概要

秘密キーのエクスポートが不可に設定されている証明書拇印(Hash)を削除する。
※削除しても既存の環境に影響はありません(証明書は無効になりません)

 

■対処法手順

コマンドプロンプトで以下のコマンドを実行

Certutil –store my CAの名前

 

②「秘密キーはエクスポート可能ではありません」と表示される証明書の[Cert ハッシュ]値を確認する

================ 証明書 0 ================
~~~
Cert ハッシュ(sha1): XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 01
  キー コンテナー = CAの名前
  一意なコンテナー名:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  プロバイダー = Microsoft Strong Cryptographic Provider
秘密キーはエクスポート可能ではありません
署名テストに合格しました
================ 証明書 1 ================
~~~
Cert ハッシュ(sha1): XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 02
  キー コンテナー = CAの名前(2)
  一意なコンテナー名:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  プロバイダー = Microsoft Strong Cryptographic Provider
署名テストに合格しました

 

レジストリに登録されている②の値をハイフン[-]に修正する

●対象のレジストリ

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\CAの名前]の[CACertHash]

●修正方法

f:id:senote:20210917135950p:plain

f:id:senote:20210917141013p:plain

 

以上