Export-ExchangeCertificate
Este cmdlet está disponível somente no Exchange local.
Utilize o cmdlet Export-ExchangeCertificate para exportar certificados existentes e pedidos de certificado pendentes (também conhecidos como pedidos de assinatura de certificados ou CSRs) a partir de servidores do Exchange.
Para saber mais sobre os conjuntos de parâmetros na seção Sintaxe, abaixo, consulte Exchange cmdlet syntax.
Sintaxe
Thumbprint
Export-ExchangeCertificate
[-Thumbprint] <String>
[-Server <ServerIdParameter>]
[-BinaryEncoded]
[-Confirm]
[-DomainController <Fqdn>]
[-FileName <String>]
[-Password <SecureString>]
[-WhatIf]
[<CommonParameters>]
Identity
Export-ExchangeCertificate
[[-Identity] <ExchangeCertificateIdParameter>]
[-BinaryEncoded]
[-Confirm]
[-DomainController <Fqdn>]
[-FileName <String>]
[-Password <SecureString>]
[-WhatIf]
[<CommonParameters>]
Description
O cmdlet Export-ExchangeCertificate cria os seguintes tipos de ficheiros:
Ficheiros de certificado: ao exportar um certificado, o comando cria um ficheiro PKCS #12. O PKCS n.º 12 é o padrão de sintaxe do Personal Information Exchange especificado pelos Laboratórios RSA. Para obter mais informações, veja PKCS #12: Personal Information Exchange Syntax Standard.
Para exportar um certificado de um servidor Exchange, a propriedade PrivateKeyExportable do certificado tem de ter o valor Verdadeiro. Para importar um certificado exportado noutro servidor Exchange, tem de exportar o certificado utilizando o parâmetro Palavra-passe para incluir a chave privada ou a cadeia de confiança no ficheiro de certificado. O certificado autoassinado predefinido do Microsoft Exchange ou os novos certificados autoassinados que criar no centro de administração do Exchange ou através das predefinições do cmdlet New-ExchangeCertificate não são exportáveis porque a chave privada não é exportável (o valor predefinido do parâmetro PrivateKeyExportable é $false).
Ficheiros de pedido de certificado: ao exportar um pedido de certificado, o comando cria um ficheiro PKCS #10. PKCS n.º 10 é a norma de sintaxe de Pedido de Certificação especificada pelo RFC 2314. Para obter mais informações, veja PKCS #10: Sintaxe do Pedido de Certificação.
Normalmente, exporta um ficheiro de pedido de certificado se precisar de submeter novamente o pedido de certificado à autoridade de certificação. Não pode importar um pedido de certificado exportado noutro servidor.
Para executar esse cmdlet, você precisa ter permissões. Embora este artigo liste todos os parâmetros do cmdlet, poderá não ter acesso a alguns parâmetros se não estiverem incluídos nas permissões que lhe foram atribuídas. 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
Export-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -FileName "C:\Data\HT cert.pfx" -BinaryEncoded -Password (Get-Credential).password
No Exchange 2013, este exemplo exporta um certificado do servidor Exchange local para um ficheiro com as seguintes definições:
- O certificado a exportar tem o valor thumbprint 5113ae0233a72fccb75b1d0198628675333d010e.
- O ficheiro de certificado exportado tem codificação DER (binário) e não Base64.
- Introduza a palavra-passe quando lhe for pedido.
- O certificado é exportado para o ficheiro C:\Data\HT cert.pfx.
Nota: o parâmetro FileName só está disponível no Exchange 2013. Para exportar o certificado no Exchange 2016 ou Exchange 2019, veja Exemplo 2.
Exemplo 2
$bincert = Export-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -BinaryEncoded -Password (Get-Credential).password
[System.IO.File]::WriteAllBytes('C:\Data\HT cert.pfx', $bincert.FileData)
Este exemplo exporta o mesmo certificado do Exemplo 1. Este método é necessário no Exchange 2016 e no Exchange 2019 porque o parâmetro FileName não está disponível.
Exemplo 3
Export-ExchangeCertificate -Thumbprint 72570529B260E556349F3403F5CF5819D19B3B58 -Server Mailbox01 -FileName "\\FileServer01\Data\Fabrikam.req"
No Exchange 2013, este exemplo exporta um pedido de certificado pendente para um ficheiro com as seguintes definições:
- O pedido de certificado para exportar tem o valor de thumbprint 72570529B260E556349F3403F5CF5819D19B3B58 e está localizado no servidor Exchange com o nome Caixa de Correio01.
- O ficheiro de pedido de certificado exportado está codificado em Base64, pelo que as informações escritas no ficheiro também são apresentadas no ecrã.
- O pedido de certificado é exportado para o ficheiro \\FileServer01\Data\Fabrikam.req.
Nota: o parâmetro FileName só está disponível no Exchange 2013. Para exportar o pedido de certificado pendente no Exchange 2016 ou Exchange 2019, veja Exemplo 4.
Exemplo 4
$txtcert = Export-ExchangeCertificate -Thumbprint 72570529B260E556349F3403F5CF5819D19B3B58 -Server Mailbox01
[System.IO.File]::WriteAllBytes('\\FileServer01\Data\Fabrikam.req', [System.Text.Encoding]::Unicode.GetBytes($txtcert))
Este exemplo exporta o mesmo pedido de certificado pendente do Exemplo 3. Este método é necessário no Exchange 2016 e no Exchange 2019 porque o parâmetro FileName não está disponível.
Parâmetros
-BinaryEncoded
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O comutador BinaryEncoded codifica o certificado exportado ou o ficheiro de pedido de certificado com Distinguished Encoding Rules (DER). Não é preciso especificar um valor com essa opção.
Normalmente, utiliza este comutador quando exporta um certificado, uma vez que pode armazenar o certificado e a respetiva chave privada ou cadeia de confiança num único ficheiro binário quando também utiliza o parâmetro Palavra-passe. Se não utilizar este comutador, o ficheiro de certificado exportado será codificado com Base64 e terá de exportar certificados intermédios ou de raiz na cadeia de fidedignidade separadamente.
Propriedades do parâmetro
Tipo: | SwitchParameter |
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 |
-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. Como essa opção afeta o cmdlet dependerá do fato de o cmdlet exigir ou não 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 confirmar 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 |
-FileName
Aplicável: Exchange Server 2013
Nota: este parâmetro foi removido do Exchange 2016 e do Exchange 2019 pela Atualizações Cumulativa de H1 de 2022 porque aceita valores de caminho UNC. Para exportar o certificado ou pedido de certificado para um ficheiro sem utilizar o parâmetro FileName, utilize os métodos descritos no Exemplo 2 e No Exemplo 4.
Este parâmetro só está disponível no Exchange 2013.
O parâmetro FileName especifica o nome e o caminho do ficheiro de certificado ou pedido de certificado exportado. Pode utilizar um caminho local se o certificado ou pedido de certificado estiver localizado no mesmo servidor Exchange onde está a executar o comando. Caso contrário, utilize 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
(All)
Cargo: | Named |
Obrigatório: | False |
Valor do pipeline: | False |
Valor do pipeline pelo nome da propriedade: | False |
Valor dos argumentos restantes: | False |
-Identity
Aplicável: Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro Identidade especifica o certificado ou pedido de certificado que pretende exportar. Os valores válidos são:
ServerNameOrFQDN\Thumbprint
Thumbprint
Você pode encontrar o valor da impressão digital usando o cmdlet Get-ExchangeCertificate.
Você não pode usar esse parâmetro com o parâmetro Servidor.
O parâmetro de impressão digital, não o parâmetro Identidade, é o parâmetro posicional para esse cmdlet. Portanto, ao especificar um valor de impressão digital por si só, o comando usará esse valor no parâmetro Impressão Digital.
Propriedades do parâmetro
Tipo: | ExchangeCertificateIdParameter |
Valor padrão: | None |
Dá suporte a curingas: | False |
DontShow: | False |
Conjuntos de parâmetros
Identity
Cargo: | 1 |
Obrigatório: | False |
Valor do pipeline: | False |
Valor do pipeline pelo nome da propriedade: | False |
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 Palavra-passe especifica a palavra-passe para a chave privada ou cadeia de fidedignidade no ficheiro de certificado exportado. Para importar o ficheiro de certificado exportado noutro servidor, tem de saber a palavra-passe.
Pode utilizar os seguintes métodos como um valor para este parâmetro:
-
(ConvertTo-SecureString -String '<password>' -AsPlainText -Force)
. - Antes de executar este comando, armazene a palavra-passe como uma variável (por exemplo, ) e, em seguida,
$password = Read-Host "Enter password" -AsSecureString
utilize a variável ($password
) para o valor. -
(Get-Credential).password
a ser pedido para introduzir a palavra-passe de forma segura quando executar este 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 |
-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
Não pode utilizar este parâmetro com o parâmetro Identidade, mas pode utilizá-lo com o parâmetro Thumbprint.
Propriedades do parâmetro
Tipo: | ServerIdParameter |
Valor padrão: | None |
Dá suporte a curingas: | False |
DontShow: | False |
Conjuntos de parâmetros
Thumbprint
Cargo: | Named |
Obrigatório: | False |
Valor do pipeline: | False |
Valor do pipeline pelo nome da propriedade: | False |
Valor dos argumentos restantes: | False |
-Thumbprint
Aplicável: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
O parâmetro Thumbprint especifica o certificado ou pedido de certificado que pretende exportar. Você pode encontrar o valor da impressão digital usando o cmdlet Get-ExchangeCertificate.
O parâmetro de impressão digital, não o parâmetro Identidade, é o parâmetro posicional para esse cmdlet. Portanto, ao especificar um valor de impressão digital por si só, o comando usará esse valor no parâmetro Impressão Digital.
Propriedades do parâmetro
Tipo: | String |
Valor padrão: | None |
Dá suporte a curingas: | False |
DontShow: | False |
Conjuntos de parâmetros
Thumbprint
Cargo: | 1 |
Obrigatório: | True |
Valor do pipeline: | True |
Valor do pipeline pelo nome da propriedade: | True |
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 simula as ações do comando. Você pode usar essa opção para exibir as alterações que ocorreriam sem realmente aplicar essas alterações. 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 suporta os 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.