Import-ExchangeCertificate
Este cmdlet está disponível somente no Exchange local.
Use o cmdlet Import-ExchangeCertificate para importar certificados em servidores Exchange. Use esse cmdlet para instalar certificados que foram exportados de outros servidores e para concluir solicitações de certificação pendentes (também conhecidas como solicitações de assinatura de certificado ou CSRs) de autoridades de certificação (CAs).
Para saber mais sobre os conjuntos de parâmetros na seção Sintaxe, abaixo, consulte Exchange cmdlet syntax.
Sintaxe
FileData
Import-ExchangeCertificate
-FileData <Byte[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
FileName
Import-ExchangeCertificate
-Instance <String[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Instance
Import-ExchangeCertificate
-FileName <String>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Description
Você pode usar o cmdlet Import-ExchangeCertificate para importar os seguintes tipos de arquivos de certificado em um servidor Exchange:
- APKCS #7 certificado ou cadeia de certificados arquivo (.p7b ou .p7c) que foi emitido por uma autoridade de certificação (CA). PKCS #7 é o Padrão de Sintaxes de Mensagens Criptográficas, uma sintaxe usada para assinatura digital ou dados de criptografia usando uma criptografia de chave pública, incluindo certificados. Para obter mais informações, consulte PKCS #7 Conceitos de sintaxe de mensagens criptográficas.
- Um arquivo de certificado PKCS #12 (.cer, .crt, .der, .p12 ou .pfx) que contém a chave privada. PKCS #12 é o Personal Information Exchange Syntax Standard, um formato de arquivo usado para armazenar certificados com chaves privadas correspondentes que são protegidas por uma senha. Para obter mais informações, consulte PKCS #12: Sintaxe de troca de informações pessoais v1.1.
Depois de importar um certificado em um servidor Exchange, você precisa atribuir o certificado a um ou mais serviços do Exchange usando o cmdlet Enable-ExchangeCertificate.
Há muitos fatores a serem considerados ao configurar certificados para serviços TLS (Transport Layer Security). Você precisa compreender como esses fatores podem afetar sua configuração geral. Para obter mais informações, consulte Certificados digitais e criptografia no Exchange Server.
O TLS substituiu o SSL (Secure Sockets Layer) como o protocolo usado para criptografar dados enviados entre sistemas de computador. No passado, "TLS" e "SSL" eram frequentemente usados de forma intercambiável. Qualquer referência a SSL na documentação do Exchange significa, na verdade, TLS, a menos que um número de versão também esteja incluído (por exemplo, SSL 3.0). Para obter mais informações, consulte Práticas recomendadas de configuração do TLS do Exchange Server.
Para executar esse cmdlet, você precisa ter permissões. Embora este artigo liste todos os parâmetros do cmdlet, talvez você não tenha acesso a alguns parâmetros se eles não estiverem incluídos nas permissões atribuídas a você. Para localizar as permissões necessárias para executar qualquer cmdlet ou parâmetro em sua organização, confira Find the permissions required to run any Exchange cmdlet.
Exemplos
Exemplo 1
Import-ExchangeCertificate -Server Mailbox01 -FileName "\\FileServer01\Data\Exported Fabrikam Cert.pfx" -Password (Get-Credential).password
No Exchange 2013, este exemplo importa o certificado do arquivo PKCS #12 de \\FileServer01\Data\Exported Fabrikam Cert.pfx para o servidor Exchange chamado Mailbox01. Este arquivo requer a senha do arquivo. Esse certificado pode ter sido exportado de outro servidor ou emitido por uma autoridade de certificação.
Para exportar o certificado no Exchange 2016 ou Exchange 2019, use o parâmetro FileData, conforme descrito no Exemplo 2.
Exemplo 2
Import-ExchangeCertificate -Server Mailbox01 -FileData ([System.IO.File]::ReadAllBytes('\\FileServer01\Data\Exported Fabrikam Cert.pfx')) -Password (Get-Credential).password
Este exemplo importa o mesmo arquivo de certificado do Exemplo 1. Esse método é necessário no Exchange 2016 e no Exchange 2019 porque o parâmetro FileName não está disponível.
Exemplo 3
Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('C:\Certificates\Fabrikam IssuedCert.p7b'))
Este exemplo importa uma cadeia de certificados do arquivo PKCS #7 C:\Certificates\Fabrikam IssuedCert.p7b no servidor Exchange local.
Parâmetros
-Confirm
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
A opção Confirm especifica se a solicitação de confirmação deve ser mostrada ou ocultada. A forma como essa opção afeta o cmdlet depende se o cmdlet requer confirmação antes de continuar.
- Cmdlets destrutivos (por exemplo, Remover- cmdlets) têm uma pausa interna que força você a confirmar o comando antes de continuar. Para estes cmdlets, você pode pular o pedido de confirmação usando esta sintaxe exata:
-Confirm:$false. - A maioria dos outros cmdlets (por exemplo, New- e Set-) não tem uma pausa interna. Para esses cmdlets, especificar a opção Confirm sem um valor introduz uma pausa que força você a reconhecer o comando antes de continuar.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | cf |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-DomainController
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro DomainController especifica o controlador de domínio que é usado por esse cmdlet para ler dados ou gravar dados no Active Directory. Você identifica o controlador de domínio por seu FQDN (nome de domínio totalmente qualificado). Por exemplo, dc01.contoso.com.
O parâmetro DomainController não é compatível com os servidores de Transporte do Microsoft Edge. Um servidor de Transporte do Microsoft Edge usa a instância local dos Serviços AD LDS para ler e gravar dados.
Propriedades do parâmetro
| Tipo: | Fqdn |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-FileData
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro FileData especifica o conteúdo do arquivo de certificado que você deseja importar.
Um valor válido para esse parâmetro exige que você leia o arquivo em um objeto codificado por byte usando a seguinte sintaxe: ([System.IO.File]::ReadAllBytes('<Path>\<FileName>')). Você pode usar esse comando como o valor do parâmetro ou pode gravar a saída em uma variável ($data = [System.IO.File]::ReadAllBytes('<Path>\<FileName>')) e usar a variável como o valor do parâmetro ($data).
Você poderá usar um caminho local se o arquivo de certificado estiver localizado no servidor Exchange no qual você está executando o comando e este for o mesmo servidor no qual você deseja instalar o certificado. Caso contrário, use um caminho UNC (\\Server\Share).
Quando você usa esse parâmetro para importar arquivos de certificado de texto PKCS #7, esses arquivos contêm contém: -----BEGIN CERTIFICATE----- e -----END CERTIFICATE----- ou -----BEGIN PKCS7----- e -----END PKCS7----- e têm extensões de nome de arquivo .p7b ou .p7c.
Se o valor contiver espaços, coloque-o entre aspas (").
Propriedades do parâmetro
| Tipo: | Byte[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
FileData
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-FileName
Aplicável: Exchange Server 2013
Observação: esse parâmetro foi removido do Exchange 2016 e do Exchange 2019 pelas Atualizações Cumulativas do S1 de 2022 porque aceita valores de caminho UNC. Para importar um arquivo de certificado sem usar o parâmetro FileName, use o parâmetro FileData.
Esse parâmetro está disponível apenas no Exchange 2013.
O parâmetro FileName especifica o arquivo de certificado que você deseja importar. Normalmente, você usa esse parâmetro para arquivos de certificado binário PKCS #12 que têm extensões de nome de arquivo .cer, .crt, .der, .p12 ou .pfx. Esse tipo de arquivo de certificado binário é protegido por uma senha quando contém a chave privada ou a cadeia de confiança.
Você poderá usar um caminho local se o arquivo de certificado estiver localizado no servidor Exchange no qual você está executando o comando e este for o mesmo servidor no qual você deseja instalar o certificado. Caso contrário, use um caminho UNC (\\Server\Share).
Se o valor contiver espaços, coloque-o entre aspas (").
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
Instance
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-FriendlyName
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro FriendlyName especifica um nome amigável para o certificado. O valor deve ter menos de 64 caracteres.
O valor do nome amigável é um texto descritivo e não afeta a funcionalidade do certificado.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Instance
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Esse parâmetro foi preterido e não é mais usado.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
FileName
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-Password
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro Password especifica a senha necessária para importar o certificado.
Você pode usar os seguintes métodos como um valor para esse parâmetro:
-
(ConvertTo-SecureString -String '<password>' -AsPlainText -Force). - Antes de executar esse comando, armazene a senha como uma variável (por exemplo,
$password = Read-Host "Enter password" -AsSecureString) e use a variável ($password) para o valor. -
(Get-Credential).passwordserá solicitado a inserir a senha com segurança ao executar esse comando.
Propriedades do parâmetro
| Tipo: | SecureString |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-PrivateKeyExportable
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro PrivateKeyExportable especifica se o certificado tem uma chave privada exportável e controla se você pode exportar o certificado desse servidor. Os valores válidos são:
- $true: A chave privada é exportável, portanto, você pode exportar o certificado deste servidor.
- $false: A chave privada não é exportável, portanto, você não pode exportar o certificado deste servidor. Esse valor é o padrão.
Propriedades do parâmetro
| Tipo: | Boolean |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Server
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro Servidor especifica o servidor Exchange em que você deseja executar esse comando. É possível usar qualquer valor que identifique o servidor com exclusividade. Por exemplo:
- Nome
- FQDN
- DN (nome diferenciado)
- DN Herdado do Exchange
DN Herdado do Exchange
Propriedades do parâmetro
| Tipo: | ServerIdParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-WhatIf
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
A opção WhatIf mostra o que o comando faz sem fazer nenhuma alteração. Não é preciso especificar um valor com essa opção.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | wi |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet dá suporte aos parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, confira about_CommonParameters.
Entradas
Input types
Para ver os tipos de entrada que este cmdlet aceita, confira Tipos de entrada e saída de cmdlet. Se o campo Tipo de Entrada de um cmdlet estiver em branco, isso significa que o cmdlet não aceita dados de entrada.
Saídas
Output types
Para ver os tipos de retorno, também conhecidos como tipos de saída, que este cmdlet aceita, consulte Tipos de entrada e saída de cmdlet. Se o campo Tipo de Saída estiver em branco, o cmdlet não retorna dados.