Certmgr.exe (ferramenta Gerenciador de Certificados)Certmgr.exe (Certificate Manager Tool)

A ferramenta Gerenciador de Certificados (Certmgr.exe) gerencia certificados, CTLs (listas de certificados confiáveis) e CRLs (listas de certificados revogados).The Certificate Manager tool (Certmgr.exe) manages certificates, certificate trust lists (CTLs), and certificate revocation lists (CRLs).

O Gerenciador de Certificados é instalado automaticamente com o Visual Studio.The Certificate Manager is automatically installed with Visual Studio. Para iniciar a ferramenta, use os Prompts de Comando.To start the tool, use the Command Prompts.

Observação

A ferramenta Gerenciador de Certificados (Certmgr.exe) é um utilitário de linha de comando, e Certificados (Certmgr.msc) é um snap-in MMC (Console de Gerenciamento Microsoft).The Certificate Manager tool (Certmgr.exe) is a command-line utility, whereas Certificates (Certmgr.msc) is a Microsoft Management Console (MMC) snap-in. Como Certmgr.msc costuma ser encontrado no diretório do Sistema do Windows, a digitação de certmgr na linha de comando pode carregar o snap-in do MMC dos Certificados, mesmo que você tenha aberto o Prompt de Comando do Visual Studio.Because Certmgr.msc is usually found in the Windows System directory, entering certmgr at the command line may load the Certificates MMC snap-in even if you have opened the Visual Studio Command Prompt. Isso ocorre porque o caminho para o snap-in precede o caminho para a ferramenta Gerenciador de Certificados na variável de ambiente PATH.This occurs because the path to the snap-in precedes the path to the Certificate Manager tool in the PATH environment variable. Se encontrar esse problema, você poderá executar comandos de Certmgr.exe especificando-se o caminho do executável.If you encounter this problem, you can execute Certmgr.exe commands by specifying the path to the executable.

Essa ferramenta é instalada automaticamente com o Visual Studio.This tool is automatically installed with Visual Studio. Para executar a ferramenta, use o Prompt de Comando do Desenvolvedor (ou o Prompt de Comando do Visual Studio no Windows 7).To run the tool, use the Developer Command Prompt (or the Visual Studio Command Prompt in Windows 7). Para obter mais informações, consulte Prompts de Comando.For more information, see Command Prompts.

Para obter uma visão geral dos certificados X.509, consulte Working with Certificates (Trabalhando com certificados).For an overview of X.509 certificates, see Working with Certificates.

No prompt de comando, digite o seguinte:At the command prompt, type the following:

SintaxeSyntax

      certmgr [/add | /del | /put] [options]  
[/s[/r registryLocation]] [sourceStorename]  
[/s[/r registryLocation]] [destinationStorename]  

ParâmetrosParameters

ArgumentoArgument DescriçãoDescription
sourceStorenamesourceStorename O repositório de certificados que contém os certificados, as CTLs ou as CRLs existentes que serão adicionados, excluídos, salvos ou exibidos.The certificate store that contains the existing certificates, CTLs, or CRLs to add, delete, save, or display. Ele pode ser um arquivo de repositório ou um repositório de sistemas.This can be a store file or a systems store.
destinationStorenamedestinationStorename O repositório ou o arquivo de certificados de saída.The output certificate store or file.
OpçãoOption DescriçãoDescription
/add/add Adiciona certificados, CTLs e CRLs a um repositório de certificados.Adds certificates, CTLs, and CRLs to a certificate store.
/all/all Adiciona todas as entradas quando usadas com /add.Adds all entries when used with /add. Exclui todas as entradas quando usadas com /del. Exibe todas as entradas quando usadas sem as opções /add ou /del.Deletes all entries when used with /del. Displays all entries when used without the /add or /del options. A opção /all não pode ser usada com /put.The /all option cannot be used with /put.
/c/c Adiciona certificados quando usados com /add.Adds certificates when used with /add. Exclui certificados quando usados com /del. Salva certificados quando usados com /put.Deletes certificates when used with /del. Saves certificates when used with /put. Exibe certificados quando usados sem as opções /add, /del ou /put.Displays certificates when used without the /add, /del, or /put option.
/CRL/CRL Adiciona CRLs quando usadas com /add.Adds CRLs when used with /add. Exclui CRLs quando usadas com /del. Salva CRLs quando usadas com /put.Deletes CRLs when used with /del. Saves CRLs when used with /put. Exibe CRLs quando usadas sem a opção /add, /del ou /put.Displays CRLs when used without the /add, /del, or /put option.
/CTL/CTL Adiciona CTLs quando usadas com /add.Adds CTLs when used with /add. Exclui CTLs quando usadas com /del. Salva CTLs quando usadas com /put.Deletes CTLs when used with /del. Saves CTLs when used with /put. Exibe CTLs quando usadas sem as opções /add, /del ou /put.Displays CTLs when used without the /add, /del, or /put option.
/del/del Exclui certificados, CTLs e CRLs de um repositório de certificados.Deletes certificates, CTLs, and CRLs from a certificate store.
/e encodingType/e encodingType Especifica o tipo de codificação do certificado.Specifies the certificate encoding type. O padrão é X509_ASN_ENCODING.The default is X509_ASN_ENCODING.
/f dwFlags/f dwFlags Especifica o sinalizador de repositório aberto.Specifies the store open flag. Esse é o parâmetro dwFlags passado para CertOpenStore.This is the dwFlags parameter passed to CertOpenStore. O valor padrão é CERT_SYSTEM_STORE_CURRENT_USER.The default value is CERT_SYSTEM_STORE_CURRENT_USER. Essa opção só será ignorada se a opção /y for usada.This option is considered only if the /y option is used.
/h[elp]/h[elp] Exibe sintaxe de comando e opções para a ferramenta.Displays command syntax and options for the tool.
/n nam/n nam Especifica o nome comum do certificado a ser adicionado, excluído ou salvo.Specifies the common name of the certificate to add, delete, or save. Essa opção só pode ser usada com certificados; ela não pode ser usada com CTLs ou CRLs.This option can only be used with certificates; it cannot be used with CTLs or CRLs.
/put/put Salva um certificado X.509, uma CTL ou uma CRL de um repositório de certificados em um arquivo.Saves an X.509 certificate, CTL, or CRL from a certificate store to a file. O arquivo é salvo no formato X.509.The file is saved in X.509 format. É possível usar a opção /7 com a opção /put para salvar o arquivo no formato PKCS #7.You can use the /7 option with the /put option to save the file in PKCS #7 format. A opção /put deve ser seguida por /c, /CTL ou /CRL.The /put option must be followed by either /c, /CTL, or /CRL. A opção /all não pode ser usada com /put.The /all option cannot be used with /put.
/r location/r location Identifica o local do Registro do repositório do sistema.Identifies the registry location of the system store. Essa opção só será ignorada se você especificar a opção /s.This option is considered only if you specify the /s option. location deve ser um dos seguintes:location must be one of the following:

- currentUser indica que o repositório de certificados está na chave HKEY_CURRENT_USER.- currentUser indicates that the certificate store is under the HKEY_CURRENT_USER key. Esse é o padrão.This is the default.
- localMachine indica que o repositório de certificados está na chave HKEY_LOCAL_MACHINE.- localMachine indicates that the certificate store is under the HKEY_LOCAL_MACHINE key.
/s/s Indica que o repositório de certificados é um repositório do sistema.Indicates that the certificate store is a system store. Se você não especificar essa opção, o repositório será considerado um StoreFile.If you do not specify this option, the store is considered to be a StoreFile.
/sha1 sha1Hash/sha1 sha1Hash Especifica o hash SHA1 do certificado, da CTL ou da CRL a ser adicionado, excluído ou salvo.Specifies the SHA1 hash of the certificate, CTL, or CRL to add, delete, or save.
/v/v Especifica o modo detalhado; exibe informações detalhadas sobre certificados, CTLs e CRLs.Specifies verbose mode; displays detailed information about certificates, CTLs, and CRLs. Essa opção não pode ser usada com as opções /add, /del ou /put.This option cannot be used with the /add, /del, or /put options.
/y provider/y provider Especifica o nome do provedor de repositório.Specifies the store provider name.
/7/7 Salva o repositório de destino como um objeto PKCS #7.Saves the destination store as a PKCS #7 object.
/?/? Exibe sintaxe de comando e opções para a ferramenta.Displays command syntax and options for the tool.

ComentáriosRemarks

Certmgr.exe realiza as seguintes funções básicas:Certmgr.exe performs the following basic functions:

  • Exibe certificados, CTLs e CRLs para o console.Displays certificates, CTLs, and CRLs to the console.

  • Adiciona certificados, CTLs e CRLs a um repositório de certificados.Adds certificates, CTLs, and CRLs to a certificate store.

  • Exclui certificados, CTLs e CRLs de um repositório de certificados.Deletes certificates, CTLs, and CRLs from a certificate store.

  • Salva um certificado X.509, uma CTL ou uma CRL de um repositório de certificados em um arquivo.Saves an X.509 certificate, CTL, or CRL from a certificate store to a file.

Certmgr.exe trabalha com dois tipos de repositórios de certificados: StoreFile e repositório do sistema.Certmgr.exe works with two types of certificate stores: StoreFile and system store. Não é necessário especificar o tipo do repositório de certificados; Certmgr.exe pode identificar o tipo de repositório e realizar as operações apropriadas.It is not necessary to specify the type of certificate store; Certmgr.exe can identify the store type and perform the appropriate operations.

A execução de Certmgr.exe sem especificar opções inicia o snap-in certmgr.msc, que tem uma GUI que ajuda nas tarefas de gerenciamento do certificado também disponíveis na linha de comando.Running Certmgr.exe without specifying any options launches the certmgr.msc snap-in, which has a GUI that helps with the certificate management tasks that are also available from the command line. A GUI fornece um assistente de importação, que copia certificados, CTLs e CRLs do disco para um repositório de certificados.The GUI provides an import wizard, which copies certificates, CTLs, and CRLs from your disk to a certificate store.

É possível encontrar os nomes de repositórios X509Certificate para os parâmetros sourceStorename e destinationStorename compilando e executando-se o código a seguir.You can find the names of X509Certificate stores for the sourceStorename and destinationStorename parameters by compiling and running the following code.

using System;
using System.Security.Cryptography.X509Certificates;

public class Example
{
   public static void Main()
   {
      foreach (var storeValue in Enum.GetValues(typeof(StoreName))) {
         X509Store store = new X509Store((StoreName) storeValue);
         store.Open(OpenFlags.ReadOnly);
         Console.WriteLine(store.Name);
      }  
   }
}
Imports System.Security.Cryptography.X509Certificates

Module Example
   Public Sub Main()
      For Each storeValue In [Enum].GetValues(GetType(StoreName))
        Dim store As New X509Store(CType(storeValue, StoreName))
        store.Open(OpenFlags.ReadOnly)
        Console.WriteLine(store.Name)
      Next
   End Sub
End Module

Para obter mais informações sobre certificados, consulte Working with Certificates (Trabalhando com certificados).For more information about certificates, see Working with Certificates.

ExemplosExamples

O comando a seguir exibe um repositório de sistema padrão chamado my com saída detalhada.The following command displays a default system store called my with verbose output.

certmgr /v /s my  

O comando a seguir adiciona todos os certificados em um arquivo chamado myFile.ext a um novo arquivo chamado newFile.ext.The following command adds all the certificates in a file called myFile.ext to a new file called newFile.ext.

certmgr /add /all /c myFile.ext newFile.ext  

O comando a seguir adiciona o certificado em um arquivo chamado testcert.cer no repositório do sistema my.The following command adds the certificate in a file named testcert.cer to the my system store.

certmgr /add /c testcert.cer /s my  

O comando a seguir adiciona o certificado em um arquivo chamado TrustedCert.cer ao repositório de certificados raiz.The following command adds the certificate in a file named TrustedCert.cer to the root certificate store.

certmgr /c /add TrustedCert.cer /s root  

O comando a seguir salva um certificado com o nome comum myCert no repositório do sistema my em um arquivo chamado newCert.cer.The following command saves a certificate with the common name myCert in the my system store to a file called newCert.cer.

certmgr /add /c /n myCert /s my newCert.cer  

O comando a seguir exclui todas as CTLs no repositório do sistema my e o repositório resultante em um arquivo chamado newStore.str.The following command deletes all CTLs in the my system store and saves the resulting store to a file called newStore.str.

certmgr /del /all /ctl /s my newStore.str  

O comando a seguir salva um certificado no repositório do sistema my no arquivo newFile.The following command saves a certificate in the my system store in the file newFile. Você deverá inserir o número do certificado em my a ser colocado em newFile.You will be prompted to enter the certificate number from my to put in newFile.

certmgr /put /c /s my newFile  

Consulte tambémSee Also

FerramentasTools
Makecert.exe (Ferramenta de Criação de Certificado)Makecert.exe (Certificate Creation Tool)
Prompts de ComandoCommand Prompts