CA のバックアップと復元の Windows PowerShell コマンドレット

作成者: Justin Turner、Windows グループ、シニア サポート エスカレーション エンジニア、

Note

この内容は Microsoft カスタマー サポート エンジニアによって作成され、TechNet が通常提供しているトピックよりも詳細な Windows Server 2012 R2 の機能やソリューションの技術的説明を求めている、経験豊かな管理者とシステム設計者を対象としています。 ただし、TechNet と同様の編集過程は実施されていないため、言語によっては通常より洗練されていない文章が見られる場合があります。

概要

ADCSAdministration Windows PowerShell モジュールは、Window Server 2012 で導入されました。 Windows Server 2012 R2 では、CA のバックアップと復元をサポートするために、このモジュールに 2 つの新しいコマンドレットが追加されました。

  • Backup-CARoleService

  • Restore-CARoleService

Backup-CARoleService

ADCSAdministration コマンドレット: Backup-CARoleService

引数 (太字の引数は必須) 説明
-Path - String - バックアップを保存する場所
- 名前のない唯一のパラメーター
- 位置指定パラメーター

例:

Backup-CARoleService.-Path c:\adcsbackup1

Backup-CARoleService c:\adcsbackup2

-KeyOnly - データベースなしで CA 証明書をバックアップする

例:

Backup-CARoleService c:\adcsbackup3 -KeyOnly

-Password - CA 証明書と秘密キーを保護するためのパスワードを指定する
- セキュリティで保護された文字列であることが必要
- -DatabaseOnly パラメーターとの併用は無効

例:

Backup-CARoleService c:\adcsbackup4 -Password (Read-Host -prompt "Password:" -AsSecureString)

Backup-CARoleService c:\adcsbackup5 -Password (ConvertTo-SecureString "Pa55w0rd!" -AsPlainText -Force)

-DatabaseOnly - CA 証明書なしでデータベースをバックアップする

Backup-CARoleService c:\adcsbackup6 -DatabaseOnly

-Force 1. -Path パラメーターで指定された場所に事前に存在しているバックアップを上書きできる

Backup-CARoleService c:\adcsbackup1 -Force

-Incremental - 増分バックアップを実行する

Backup-CARoleService c:\adcsbackup7 -Incremental

-KeepLog 1. ログ ファイルを保持するよう、コマンドに指示する。 スイッチが指定されていない場合、増分のシナリオ以外では、既定でログ ファイルが切り詰められる

Backup-CARoleService c:\adcsbackup7 -KeepLog

-Password <Secure String>

-Password パラメーターを使用する場合、入力するパスワードは、セキュリティで保護された文字列である必要があります。 Read Host コマンドレットを使用して、セキュリティで保護されたパスワードの入力を求める対話型プロンプトを起動するか、ConvertTo-SecureString コマンドレットを使用してパスワードをインラインで指定します。

次の例を参照してください。

Read-Host を使用して、セキュリティで保護された文字列をパスワード パラメーターに指定する

Backup-CARoleService c:\adcsbackup4 -Password (Read-Host -prompt "Password:" -AsSecureString)

ConvertTo-SecureString を使用して、セキュリティで保護された文字列をパスワード パラメーターに指定する

Backup-CARoleService c:\adcsbackup5 -Password (ConvertTo-SecureString "Pa55w0rd!" -AsPlainText -Force)

Restore-CARoleService

ADCSAdministration コマンドレット: Restore-CARoleService

引数 (太字の引数は必須) 説明
-Path - 文字列 - バックアップの復元元の場所
- 名前のない唯一のパラメーター
- 位置指定パラメーター

例:

Restore-CARoleService.-Path c:\adcsbackup1 -Force

Restore-CARoleService c:\adcsbackup2 -Force

-KeyOnly - データベースなしで CA 証明書を復元する
- -KeyOnly オプションを使用してバックアップを実行している場合は、指定する必要がある

例:

Restore-CARoleService c:\adcsbackup3 -KeyOnly -Force

-Password - CA 証明書と秘密キーのパスワードを指定する
- セキュリティで保護された文字列であることが必要

例:

Restore-CARoleService c:\adcsbackup4 -Password (read-host -prompt "Password:" -AsSecureString) -Force

Restore-CARoleService c:\adcsbackup5 -Password (ConvertTo-SecureString "Pa55w0rd!" -AsPlainText -Force) -Force

-DatabaseOnly - CA 証明書なしでデータベースを復元する

Restore-CARoleService c:\adcsbackup6 -DatabaseOnly

-Force - 既存のキーを上書きできる
- 省略可能なパラメーターだが、インプレースで復元している場合は、必要になる可能性あり

Restore-CARoleService c:\adcsbackup1 -Force

問題

Backup-CARoleService を -Password パラメーターと共に使用しているときに ConvertTo-SecureString 関数が失敗した場合は、パスワードで保護されていないバックアップが実行されます。

CA のバックアップと復元

一般的なエラー

アクション エラー コメント
Restore-CARoleService C:\ADCSBackup Restore-CARoleService : 別のプロセスでファイルが使用されているため、このプロセスからファイルにアクセスできません。 (HRESULT からの例外:

0x80070020)

Restore-CARoleService コマンドレットを実行する前に Active Directory Certificate Services サービスを停止します
Restore-CARoleService C:\ADCSBackup Restore-CARoleService : ディレクトリが空ではありません。 (HRESULT からの例外: 0x80070091) -Force パラメーターを使用して、既存のキーを上書きします
Backup-CARoleService C:\ADCSBackup -Password (Read-Host -Prompt "Password:" -AsSecureString) -DatabaseOnly Backup-CARoleService : 設定されたパラメーターは、指定された名前付きパラメーターを使って解決することができません。 -Password パラメーターは、秘密キーのパスワード保護にのみ使用されます。そのため、秘密キーをバックアップしない場合は無効になります。
Restore-CARoleService C:\ADCSBack15 -Password (Read-Host -Prompt "Password:" -AsSecureString) -DatabaseOnly Restore-CARoleService : 設定されたパラメーターは、指定された名前付きパラメーターを使って解決することができません。 -Password パラメーターは、秘密キーのパスワード保護にのみ使用されます。そのため、秘密キーを復元しない場合は無効になります。
Restore-CARoleService C:\ADCSBack14 -Password (Read-Host -Prompt "Password:" -AsSecureString) Restore-CARoleService : 指定されたファイルが見つかりません。 (HRESULT からの例外: 0x80070002) 指定されたパスには、有効なデータベース バックアップが含まれていません。 パスが無効であるか、-KeysOnly オプションを使用してバックアップが実行された可能性があります。

その他のリソース

Active Directory 証明書サービス移行ガイド

CA データベースおよび秘密キーのバックアップ

移行先サーバーでの CA データベースおよび構成の復元

試してみる: Windows PowerShell を使用してラボで CA をバックアップする

  1. このレッスンのコマンドを使用して、パスワードで保護された CA データベースと秘密キーをバックアップします。

  2. この時点では、CA の復元を延期します。