Применимо к: Exchange Server 2010 SP1

Последнее изменение раздела: 2011-03-19

Командлет New-ExchangeCertificate используется для создания самозаверяющего сертификата, обновления существующего самозаверяющего сертификата, или для создания нового запроса на получение сертификата из центра сертификации (CA).

Важно!
При настройке сертификатов для служб SSL (Secure Sockets Layer) и TLS (Transport Layer Security) необходимо учитывать множество факторов. Необходимо понимать, как именно эти факторы отразятся на конфигурации в целом. Для получения дополнительных сведений и перед продолжением работы ознакомьтесь с разделом Общие сведения о сертификатах TLS.

Синтаксис

New-ExchangeCertificate [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-DomainName <MultiValuedProperty>] [-Force <SwitchParameter>] [-FriendlyName <String>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-IncludeServerFQDN <SwitchParameter>] [-IncludeServerNetBIOSName <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-PrivateKeyExportable <$true | $false>] [-Server <ServerIdParameter>] [-Services <None | IMAP | POP | UM | IIS | SMTP | Federation>] [-SubjectKeyIdentifier <String>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]
New-ExchangeCertificate [-BinaryEncoded <SwitchParameter>] [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-DomainName <MultiValuedProperty>] [-Force <SwitchParameter>] [-FriendlyName <String>] [-GenerateRequest <SwitchParameter>] [-IncludeAcceptedDomains <SwitchParameter>] [-IncludeAutoDiscover <SwitchParameter>] [-IncludeServerFQDN <SwitchParameter>] [-IncludeServerNetBIOSName <SwitchParameter>] [-Instance <X509Certificate2>] [-KeySize <Int32>] [-PrivateKeyExportable <$true | $false>] [-Server <ServerIdParameter>] [-SubjectKeyIdentifier <String>] [-SubjectName <X500DistinguishedName>] [-WhatIf [<SwitchParameter>]]

Параметры

Параметр Обязательный Тип Описание

BinaryEncoded

Необязательный

System.Management.Automation.SwitchParameter

Переключатель BinaryEncoded указывает способ кодировки запроса на сертификат. По умолчанию этот командлет создает запрос в кодировке Base64.

Этот переключатель используется для создания запроса в кодировке DER.

Примечание.
Переключатель BinaryEncoded доступен только при использовании переключателя GenerateRequest.

Confirm

Необязательный

System.Management.Automation.SwitchParameter

DomainController

Необязательный

Microsoft.Exchange.Data.Fqdn

DomainName

Необязательный

Microsoft.Exchange.Data.MultiValuedProperty

Параметр DomainName указывает одно или нескольких полных доменных имен или имен сервера для добавления в поле дополнительного имени субъекта итогового запроса на сертификат или самозаверяющего сертификата.

Для доменных имен могут использоваться только знаки от a до z, от 0 до 9, а также дефис (-). Длина доменного имени не должна превышать 255 знаков.

Для ввода нескольких доменных имен или имен серверов необходимо использовать запятую в качестве разделителя.

Примечание.
Если этот параметр не указан и не используются переключатели IncludeAcceptedDomains, IncludeAutoDiscover, IncludeServerFQDN и IncludeServerNetBIOSName, имя узла сервера и полное доменное имя сервера добавляются по умолчанию.

Force

Необязательный

System.Management.Automation.SwitchParameter

Переключатель Force указывает, следует ли переопределить запрос подтверждения и задать новый самозаверяющий сертификат в качестве сертификата по умолчанию для TLS для внутренней связи по протоколу SMTP. По умолчанию необходимо подтверждение этого командлета перед установкой нового сертификата в качестве сертификата по умолчанию для шифрования TLS внутренней связи по протоколу SMTP.

FriendlyName

Необязательный

System.String

Параметр FriendlyName указывает понятное имя сертификата. Понятное имя должно содержать менее 64 знаков

По умолчанию используется понятное имя Microsoft Exchange.

GenerateRequest

Необязательный

System.Management.Automation.SwitchParameter

Переключатель GenerateRequest указывает, следует ли создать запрос на сертификат инфраструктуры открытого ключа (PKCS #10) в локальном хранилище запросов.

По умолчанию этот командлет создает самозаверяющий сертификат в хранилище сертификатов на локальном компьютере. Переключатель GenerateRequest переопределяет это действие.

IncludeAcceptedDomains

Необязательный

System.Management.Automation.SwitchParameter

Параметр IncludeAcceptedDomains указывает, должны ли все обслуживаемые домены в организации быть включены в поле дополнительного имени субъекта запроса на сертификат или самозаверяющего сертификата.

Также можно указать одно или несколько доменных имен вместе с обслуживаемыми доменами с помощью параметра DomainName. Итоговый сертификат или запрос будет содержать указанные домены и все обслуживаемые домены.

Примечание.
При использовании переключателя IncludeAcceptedDomains любые обслуживаемые домены, указанные в параметре DomainName, не дублируются.

IncludeAutoDiscover

Необязательный

System.Management.Automation.SwitchParameter

Переключатель IncludeAutoDiscover указывает, следует ли добавить дополнительное имя субъекта с префиксом autodiscover для каждого обслуживаемого домена в организации Exchange. Например, если организация имеет обслуживаемые домены woodgrovebank.com и woodgrovebank.co.uk, то использование этого переключателя приведет к добавлению следующих дополнительных имен субъекта:

  • autodiscover.woodgrovebank.com

  • autodiscover.woodgrovebank.co.uk

Этот переключатель может быть использован только на серверах клиентского доступа.

Префикс autodiscover не добавляется, если доменное имя уже содержит такой префикс.

IncludeServerFQDN

Необязательный

System.Management.Automation.SwitchParameter

Переключатель IncludeServerFQDN указывает, следует ли включать полное доменное имя сервера в поле дополнительного имени субъекта нового запроса на сертификат или самозаверяющего сертификата.

Примечание.
При использовании переключателя IncludeServerFQDN полные доменные имена, указанные в параметре DomainName, не дублируются.

IncludeServerNetBIOSName

Необязательный

System.Management.Automation.SwitchParameter

Переключатель IncludeServerNetBIOSName указывает, следует ли включать NetBIOS-имя сервера в поле дополнительного имени субъекта нового запроса на сертификат или самозаверяющего сертификата.

Примечание.
При использовании переключателя IncludeServerNetBIOSName имена NetBIOS, указанные в параметре DomainName, не дублируются.

Instance

Необязательный

System.Security.Cryptography.X509Certificates.X509Certificate2

KeySize

Необязательный

System.Int32

Параметр KeySize указывает размер (в битах) открытого ключа RSA, связанного с создаваемым сертификатом.

Допустимыми являются значения 4096, 2048 и 1024. Значение по умолчанию: 2048.

PrivateKeyExportable

Необязательный

System.Boolean

Параметр PrivateKeyExportable указывает, должен ли новый сертификат иметь экспортируемый закрытый ключ.

По умолчанию все запросы на сертификаты и сертификаты, созданные с помощью этого командлета, не допускают экспорта закрытого ключа.

Важно!
Если отсутствует возможность экспорта закрытого ключа, сертификат нельзя экспортировать или импортировать.

Для получения возможности экспорта закрытого ключа при экспортировании сертификата установите для этого параметра значение $true.

Server

Необязательный

Microsoft.Exchange.Configuration.Tasks.ServerIdParameter

Параметр Server указывает имя сервера, для которого необходимо создать новый сертификат. Если этот параметр не указан, сертификат или запрос на сертификат создается для сервера Exchange, на котором выполняется команда.

Services

Необязательный

Microsoft.Exchange.Management.SystemConfigurationTasks.AllowedServices

Параметр Services указывает службы, которые будут использовать итоговый сертификат.

Важно!
Указать службы с помощью командлета New-ExchangeCertificate можно только при создании самозаверяющего сертификата. При создании запроса на сертификат для центра сертификации с помощью параметр GenerateRequest необходимо установить сертификат после его выдачи центром сертификации, а затем указать службы с помощью командлета Enable-ExchangeCertificate.

Допустимые значения представляют собой сочетания следующих элементов:

  • IIS

  • IMAP

  • None

  • POP

  • SMTP

  • UM

Значения по умолчанию: IMAP, POP и SMTP.

Чтобы создать сертификат, отключенный для всех служб Exchange, который можно будет экспортировать на другой компьютер, задайте для этого параметра значение None , а для параметра PrivateKeyExportable — значение $true.

SubjectKeyIdentifier

Необязательный

System.String

Параметр SubjectKeyIdentifier задает расширение идентификатора ключа субъекта для сертификата (в обычной работе это необязательно).

SubjectName

Необязательный

System.Security.Cryptography.X509Certificates.X500DistinguishedName

Параметр SubjectName указывает имя субъекта итогового сертификата. Имя субъекта — это различающееся имя X.500, которое состоит из одного или нескольких относительных различающихся имен (RDN).

Имя субъекта сертификата — это поле, используемое службами, взаимодействующими с DNS. Оно привязывает сертификат к определенному имени сервера или домена.

Если параметр SubjectName не указан, имя узла сервера, на котором выполняется командлет, используется в итоговом сертификате в качестве общего имени (CN). Например, для сервера EXMBX01 используется значение CN=EXMBX01 параметра SubjectName.

WhatIf

Необязательный

System.Management.Automation.SwitchParameter

Подробное описание

Microsoft Exchange Server 2010 использует сертификаты для шифрования протоколов SSL и TLS. Командлет New-ExchangeCertificate использует множество параметров с типом SwitchParameter. Дополнительные сведения об использовании этого параметра см. в главе «Параметры-переключатели» раздела Параметры.

Запись «Управление сертификатами» в разделе Разрешения инфраструктуры Exchange и командной консоли.

Типы входных данных

Типы возвращаемых данных

Ошибки

Ошибка Описание

 

Исключения

Исключения Описание

 

Примеры

ПРИМЕР 1

В этом примере выполняется командлет New-ExchangeCertificate без указания параметров и создается самозаверяющий сертификат. В качестве имени субъекта сертификата указано полное доменное имя локального компьютера. Сертификат по умолчанию можно использовать для проверки подлинности на основе прямого доверия и шифрования между пограничными транспортными серверами и транспортными серверами-концентраторами. Локальной группе безопасности «Сетевые службы» также предоставляется доступ с правом на чтение закрытого ключа, связанного с сертификатом. Кроме того, сертификат публикуется в Служба каталогов Active Directory, что позволяет использовать прямое доверие Exchange для проверки подлинности сервера в рамках взаимной проверки подлинности TLS.

Скопировать код
New-ExchangeCertificate

ПРИМЕР 2

В этом примере выводится запрос на сертификат в формате Base64 на консоль командной строки. Запрос на сертификат необходимо отправить в центр сертификации в пределах организации, в доверенный центр сертификации за пределами организации или в коммерческий центр сертификации. Это можно сделать, указав выходные данные запроса на сертификат в сообщении электронной почты или в соответствующем поле на веб-странице запроса на сертификат центра сертификации. Также можно сохранить запрос на сертификат в файл с помощью текстового редактора, например Блокнота.

Сертификат, результаты которого имеют следующие связанные с ним атрибуты:

  • Имя субъекта: c=<ES>,o=<Woodgrove Bank>,cn=mail1.woodgrovebank.com

  • Дополнительные имена субъектов: woodgrovebank.com и example.com

  • Экспортируемый закрытый ключ

Скопировать код
New-ExchangeCertificate -GenerateRequest -SubjectName "c=US, o=Woodgrove Bank, cn=mail1.woodgrovebank.com" -DomainName woodgrovebank.com, example.com -PrivateKeyExportable $true

ПРИМЕР 3

Этот пример является вариантом запроса на сертификат, созданным в ПРИМЕРЕ 2. Однако вместо копирования и вставки созданных командлетом выходных данных запроса на сертификат вручную, используется командлет Set-Content.

Сертификат, результаты которого имеют следующие связанные с ним атрибуты:

  • Имя субъекта: c=<ES>,o=<Woodgrove Bank>,cn=mail1.woodgrovebank.com

  • Дополнительные имена субъектов: woodgrovebank.com и example.com

  • Экспортируемый закрытый ключ

На первом шаге командлет New-ExchangeCertificate используется для создания запроса на сертификат и сохранения выходных данных в переменной с именем $Data.

Скопировать код
$Data = New-ExchangeCertificate -GenerateRequest -SubjectName "c=US, o=Woodgrove Bank, cn=mail1.woodgrovebank.com" -DomainName woodgrovebank.com, example.com -PrivateKeyExportable $true

На втором шаге для записи данных из переменной в файл запроса на сертификат MyCertRequest.req в папке «Документы» используется командлет Set-Content.

Скопировать код
Set-Content -path "C:\Docs\MyCertRequest.req" -Value $Data

ПРИМЕР 4

В этом примере создается файл запроса на сертификат в кодировке DER. Параметр BinaryEncoded используется для создания запроса на сертификат в кодировке DER. Командлет Set-Content используется с параметром Encoding для записи запроса в файл.

Создаваемый сертификат имеет следующие связанные с ним атрибуты:

  • Имя субъекта: c=ES,o=Woodgrove Bank,cn=mail1.woodgrovebank.com

  • Дополнительные имена субъектов: woodgrovebank.com и example.com

  • Экспортируемый закрытый ключ

На первом шаге командлет New-ExchangeCertificate используется для создания запроса на сертификат в кодировке DER и сохранения выходных данных в переменной $Data.

Скопировать код
$Data = New-ExchangeCertificate -GenerateRequest -SubjectName "c=ES, o=Woodgrove Bank, cn=mail1.woodgrovebank.com" -DomainName woodgrovebank.com, example.com -BinaryEncoded -PrivateKeyExportable $true

На втором шаге командлет Set-Content используется для записи данных из переменной в файл запроса на сертификат MyCertRequest.req в папке «Документы».

Скопировать код
Set-Content -path "C:\Docs\MyCertRequest.req" -Value $Data.FileData -Encoding Byte

ПРИМЕР 5

В этом примере показано, как обновить самозаверяющий сертификат.

Скопировать код
Get-ExchangeCertificate -Thumbprint c4248cd7065c87cb942d60f7293feb7d533a4afc | New-ExchangeCertificate