New-ExchangeCertificate

 

Aplica-se a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1

Tópico modificado em: 2009-05-11

Use o cmdlet New-ExchangeCertificate para criar um novo certificado auto-assinado ou uma nova solicitação de certificado para os serviços TLS e SSL.

Importante

Pode haver muitas variáveis que deverão ser consideradas ao configurar certificados para serviços SSL e TLS. Você deve compreender como essas variáveis podem afetar sua configuração geral. Antes de continuar, leia Uso de certificados no Exchange 2007 Server.

Sintaxe

New-ExchangeCertificate [-Confirm [<SwitchParameter>]] [-DomainController <String>] [-DomainName <MultiValuedProperty>] [-FriendlyName <String>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-PrivateKeyExportable <$true | $false>] [-Services <None | IMAP | POP | UM | IIS | SMTP>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]

New-ExchangeCertificate [-BinaryEncoded <SwitchParameter>] [-Confirm [<SwitchParameter>]] [-DomainController <String>] [-DomainName <MultiValuedProperty>] [-Force <SwitchParameter>] [-FriendlyName <String>] [-GenerateRequest <SwitchParameter>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-Path <String>] [-PrivateKeyExportable <$true | $false>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]

Descrição detalhada

O cmdlet New-ExchangeCertificate usa muitos parâmetros do tipo SwitchParameter. Para obter mais informações sobre como usar esse tipo, consulte "Switch Parameters" em Parâmetros.

Para executar o cmdlet New-ExchangeCertificate, você deve usar uma conta à qual esteja delegado o seguinte:

  • Função de Administrador do Exchange Server e grupo Administradores local para o servidor de destino

Para executar o cmdlet New-ExchangeCertificate em um computador em que a função de servidor Transporte de Borda esteja instalada, faça logon com uma conta que seja membro do grupo Administradores local no computador.

Para obter mais informações sobre permissões, delegação de funções e os direitos necessários para administrar o Microsoft Exchange Server 2007, consulte Considerações sobre permissão

Parâmetros

Parâmetro Necessário Tipo Descrição

BinaryEncoded

Opcional

System.Management.Automation.SwitchParameter

Use essa opção de parâmetro para especificar como o arquivo exportado será codificado. Por padrão, esse cmdlet criará um arquivo codificado em Base64.

Para criar um arquivo codificado por DER, defina esse parâmetro como $True.

Confirm

Optional

System.Management.Automation.SwitchParameter

O parâmetro Confirm faz com que o comando pause o processamento e exige que você confirme o que o comando fará antes que o processamento continue. Você não precisa especificar um valor com o parâmetro Confirm.

DomainController

Opcional

System.String

Para especificar o FQDN (nome de domínio totalmente qualificado) do controlador de domínio que recupera dados do serviço de diretório do Active Directory, inclua o parâmetro DomainController no comando. O parâmetro DomainController não tem suporte em computadores que executam a função de servidor Transporte de Borda. A função de servidor Transporte de Borda grava somente na instância local do ADAM (Active Directory Application Mode).

DomainName

Opcional

Microsoft.Exchange.Data.MultiValuedProperty

Use esse parâmetro para preencher um ou mais nomes de domínio (FQDN) ou nomes de servidor na solicitação de certificado resultante.

Nomes de domínio estão restritos aos caracteres de "a a z", de "0 a 9" e ao hífen ("-"). Cada nome de domínio não pode ter mais de 255 caracteres.

Para digitar vários nomes de domínio ou de servidor, digite-os separados por vírgulas.

Force

Opcional

System.Management.Automation.SwitchParameter

Use essa opção de parâmetro para substituir um arquivo de solicitação de certificado existente que corresponda ao mesmo caminho de arquivo especificado nesse cmdlet.

Por padrão, esse cmdlet não substituirá os arquivos existentes.

FriendlyName

Opcional

System.String

Use esse parâmetro para especificar um nome amigável para o certificado resultante. Esse nome deve ter menos de 64 caracteres.

O nome amigável padrão é "Microsoft Exchange".

GenerateRequest

Opcional

System.Management.Automation.SwitchParameter

Use esse parâmetro para especificar o tipo de objeto de certificado a ser criado.

Por padrão, esse parâmetro criará um certificado auto-assinado no armazenamento de certificados do computador local.

Para criar a solicitação de um certificado PKI (PKCS nº 10) no armazenamento de solicitação local, defina esse parâmetro como $True.

IncludeAcceptedDomains

Opcional

System.Management.Automation.SwitchParameter

Use esse parâmetro para incluir todos os domínios aceitos definidos no campo de nomes de domínio.

Também é possível especificar um parâmetro DomainName na solicitação. O certificado ou a solicitação resultante conterá a união dos dois valores.

IncludeAutoDiscover

Opcional

System.Management.Automation.SwitchParameter

Use esse parâmetro para adicionar o prefixo "autodiscover" a cada nome de domínio gerado para o certificado resultante. Você só poderá especificar esse parâmetro quando estiver executando esse cmdlet em um Exchange Server que tenha instalada a função de servidor Acesso para Cliente. Observação: esse parâmetro não adicionará o prefixo "autodiscover" se o nome de domínio já contiver o prefixo.

Instance

Opcional

System.Security.Cryptography.X509Certificates.X509Certificate2

Use esse parâmetro para passar um objeto inteiro para o comando para ser processado. O parâmetro Instance é usado principalmente em scripts nos quais um objeto inteiro deve ser transmitido ao comando.

KeySize

Opcional

System.Int32

Use esse parâmetro para especificar o tamanho (em bits) da chave pública RSA associada ao certificado que está sendo criado.

Os valores aceitáveis são 4096, 2048 e 1024. O valor padrão é 2048.

Path

Opcional

System.String

Use esse parâmetro para especificar um caminho do arquivo de solicitação de PKCS nº 10 resultante.

Esse parâmetro só será válido se GenerateRequest estiver definido como $true.

O cmdlet New-ExchangeCertificate gerará uma solicitação de certificado no armazenamento de certificados local, mesmo que o parâmetro Path seja especificado. A solicitação de certificado que é gerada no armazenamento de certificados local contém as chaves para o certificado resultante.

Especifique o nome do arquivo de solicitação quando você usar esse parâmetro. O nome deve terminar com a extensão .req, por exemplo:

-Path c:\certificates\request.req

O arquivo .req é usado pela CA (autoridade de certificação) para gerar um certificado.

PrivateKeyExportable

Opcional

System.Boolean

Use esse parâmetro para especificar se o certificado resultante terá uma chave particular exportável.

Por padrão, nenhuma solicitação de certificado e nenhum certificado criado por esse cmdlet permitirá que a chave particular seja exportada.

É preciso entender que se você não puder exportar a chave particular, o próprio certificado não poderá ser exportado e importado.

Defina esse parâmetro como $true para permitir a exportação da chave particular do certificado resultante.

Services

Opcional

Microsoft.Exchange.Management.SystemConfigurationTasks.AllowedServices

Use este parâmetro para especificar os serviços que usarão o certificado resultante. Não será possível especificar serviços se você tiver definido o valor GenerateRequest como $true.

As entradas válidas incluem uma combinação do seguinte:

  • IMAP

  • POP

  • UM

  • IIS

  • SMTP

  • None

Para criar um certificado auto-assinado para múltiplos serviços, coloque os valores entre aspas e separe-os por vírgulas, por exemplo:

-Services "IMAP, POP, IIS"

Para criar um certificado desabilitado, de forma que seja possível exportá-lo para outro computador, defina esse parâmetro como None.

O padrão é SMTP.

SubjectName

Opcional

System.Security.Cryptography.X509Certificates.X500DistinguishedName

Use esse parâmetro para especificar o nome do assunto no certificado resultante.

O Nome do Assunto de um certificado é o campo usado pelos serviços de detecção de DNS. O campo Nome do Assunto liga um certificado a um determinado servidor ou nome de domínio.

Nome do Assunto significa um nome distinto X.500 que consiste em um ou mais nomes distintos relativos (também conhecidos como RDN).

Por padrão, o nome do host do servidor no qual o cmdlet é executado será usado como o CN no certificado resultante. Por exemplo, se o cmdlet for executado no servidor EXMBX01, o nome do assunto CN=EXMBX01 será usado.

WhatIf

Optional

System.Management.Automation.SwitchParameter

O parâmetro WhatIf instrui o comando a simular as ações que ele executará no objeto. Ao usar o parâmetro WhatIf, você poderá exibir quais alterações ocorrerão sem precisar aplicar nenhuma dessas alterações. Você não precisa especificar um valor com o parâmetro WhatIf.

Tipos de entrada

Tipos de retorno

Erros

Erro Descrição

 

Exceções

Exceções Descrição

 

Exemplo

O primeiro exemplo mostra a execução do cmdlet sem argumentos. Ao executar o cmdlet New-ExchangeCertificate sem argumentos, é gerado um certificado auto-assinado para SMTP SSL/TLS. O certificado tem o FQDN do computador local como o nome do assunto. Esse certificado de transporte interno pode ser usado, como está, para criptografia e autenticação de confiança direta entre servidores de Transporte de Borda e servidores de Transporte de Hub. O grupo de segurança local Serviços de Rede também recebe acesso de leitura à chave particular associada ao certificado. Além disso, o certificado é publicado no Active Directory para que a confiança direta do Exchange Server possa ser usada para validar a autenticidade do servidor com relação ao TLS mútuo.

O segundo exemplo mostra a execução do cmdlet para que uma solicitação de certificado seja gerada e copiada em um caminho no computador local. O certificado resultante terá os seguintes atributos associados a ele:

  • Nome do Assunto: c=<ES>,o=<Diversión de Bicicleta>,cn=mail1. DiversiondeBicicleta.com

  • Nomes de Assunto Alternativos: woodgrove.com e example.com

  • Uma chave particular exportável

Para obter mais exemplos, consulte Criando um certificado ou uma solicitação de certificado de TLS e as seguintes entradas do Blog da Equipe do Exchange Server:

Para obter mais informações, consulte Domain Security White Paper.

New-ExchangeCertificate
New-ExchangeCertificate -GenerateRequest -Path c:\certificates\request.req -SubjectName "c=ES, o=Diversión de Bicicleta, cn=mail1. DiversiondeBicicleta.com" -DomainName woodgrove.com, example.com -PrivateKeyExportable $true