Cmdlets do Windows PowerShell de backup e restauração de AC

Aplica-se a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012

Autor: Justin Turner, engenheiro sênior de escalonamento de suporte com o grupo do Windows

Observação

Este documento foi criado por um engenheiro de atendimento ao cliente da Microsoft e é destinado a administradores e arquitetos de sistemas experientes que procuram explicações técnicas mais profundas para recursos e soluções no Windows Server 2012 R2 do que aquelas geralmente oferecidas em tópicos do TechNet. No entanto, ele não passou pelas mesmas etapas de edição que eles, por isso a linguagem pode parecer que menos refinada do que a geralmente encontrada no TechNet.

Visão geral

O módulo do Windows PowerShell de ADCSAdministration foi apresentado no Windows Server 2012. Dois novos cmdlets foram adicionados a este módulo no Window Server 2012 R2 para dar suporte ao Backup e à Restauração de uma AC.

  • Backup-CARoleService

  • Restore-CARoleService

Backup-CARoleService

Cmdlet ADCSAdministration: Backup-CARoleService

Argumentos – os argumentos em Negrito são necessários Descrição
-Path – Cadeia de caracteres – local para salvar o backup
– Esse é o único parâmetro sem nome
– parâmetro posicional

Exemplo:

Backup-CARoleService.-Path c:\adcsbackup1

Backup-CARoleService c:\adcsbackup2

-KeyOnly – Fazer backup do Certificado de Autoridade de Certificação sem o banco de dados

Exemplo:

Backup-CARoleService c:\adcsbackup3 -KeyOnly

-Password – Especifica a senha para proteger Certificados de Autoridade de Certificação e chaves privadas
– Deve ser uma cadeia de caracteres segura
– Não válido com o parâmetro -DatabaseOnly

Exemplo:

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

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

-DatabaseOnly – Fazer backup do banco de dados sem o Certificado de Autoridade de Certificação

Backup-CARoleService c:\adcsbackup6 -DatabaseOnly

-Force 1. Permite substituir o backup preexistente no local especificado no parâmetro -Path

Backup-CARoleService c:\adcsbackup1 -Force

-Incremental – Executar um backup incremental

Backup-CARoleService c:\adcsbackup7 -Incremental

-KeepLog 1. Instrui o comando a manter arquivos de log. Se a opção não for especificada, os arquivos de log serão truncados por padrão, exceto no cenário incremental

Backup-CARoleService c:\adcsbackup7 -KeepLog

-Password <Cadeia de caracteres segura>

Se o parâmetro -Password for usado, a senha fornecida deverá ser uma cadeia de caracteres segura. Use o cmdlet Read-Host para iniciar um prompt interativo para entrada de senha segura ou use o cmdlet ConvertTo-SecureString para especificar a senha em linha.

Examine os exemplos a seguir

Especificar uma cadeia de caracteres segura para o parâmetro Password usando Read-Host

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

Especificar uma cadeia de caracteres segura para o parâmetro Password usando ConvertTo-SecureString

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

Restore-CARoleService

Cmdlet ADCSAdministration: Restore-CARoleService

Argumentos – os argumentos em Negrito são necessários Descrição
-Path – Cadeia de caracteres – local do qual restaurar o backup
– Esse é o único parâmetro sem nome
– parâmetro posicional

Exemplo:

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

Restore-CARoleService c:\adcsbackup2 -Force

-KeyOnly – Restaurar o Certificado de Autoridade de Certificação sem o banco de dados
– Deve ser especificado se o backup foi feito com a opção -KeyOnly

Exemplo:

Restore-CARoleService c:\adcsbackup3 -KeyOnly -Force

-Password – Especifica a senha dos Certificados de Autoridade de Certificação e as chaves privadas
– Deve ser uma cadeia de caracteres segura

Exemplo:

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

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

-DatabaseOnly – Restaurar o banco de dados sem o Certificado de Autoridade de Certificação

Restore-CARoleService c:\adcsbackup6 -DatabaseOnly

-Force – Permite substituir as chaves preexistentes
– É um parâmetro opcional; mas, ao restaurar no local, é provável que seja necessário

Restore-CARoleService c:\adcsbackup1 -Force

Problemas

Um backup não protegido por senha será feito se a função ConvertTo-SecureString falhar ao usar o Backup-CARoleService com o parâmetro -Password.

CA backup and restore

Erros comuns

Ação Erro Comentário
Restore-CARoleService C:\ADCSBackup Restore-CARoleService: o processo não pode acessar o arquivo porque ele está sendo usado por outro processo. (Exceção de HRESULT:

0x80070020)

Parar o serviço Serviços de Certificados do Active Directory antes de executar o cmdlet Restore-CARoleService
Restore-CARoleService C:\ADCSBackup Restore-CARoleService: o diretório não está vazio. (Exceção de HRESULT: 0x80070091) Usar o parâmetro -Force para substituir chaves preexistentes
Backup-CARoleService C:\ADCSBackup -Password (Read-Host -Prompt "Password:" -AsSecureString) -DatabaseOnly Backup-CARoleService: o conjunto de parâmetros não pode ser resolvido com o uso dos parâmetros nomeados especificados. O parâmetro -Password só é usado para proteger chaves privadas por senha e, portanto, é inválido quando você não está fazendo backup delas
Restore-CARoleService C:\ADCSBack15 -Password (Read-Host -Prompt "Password:" -AsSecureString) -DatabaseOnly Restore-CARoleService: o conjunto de parâmetros não pode ser resolvido com o uso dos parâmetros nomeados especificados. O parâmetro -Password só é usado para proteger chaves privadas por senha e, portanto, é inválido quando você não as está restaurando
Restore-CARoleService C:\ADCSBack14 -Password (Read-Host -Prompt "Password:" -AsSecureString) Restore-CARoleService: o sistema não pode localizar o arquivo especificado. (Exceção de HRESULT: 0x80070002) O caminho especificado não contém um backup de banco de dados válido. Talvez o caminho seja inválido ou o backup tenha sido feito com a opção -KeysOnly?

Recursos adicionais

Guia de Migração de Serviços de Certificados do Active Directory

Fazendo backup do banco de dados e da chave privada de uma AC

Restaurando o banco de dados e a configuração da autoridade de certificação no servidor de destino

Experimente: fazer backup da AC em seu laboratório usando o Windows PowerShell

  1. Use os comandos nesta lição para fazer backup do banco de dados da AC e da chave privada protegida com uma senha.

  2. Aguarde a restauração da AC no momento.