Import-ExchangeCertificate

Этот командлет доступен только в локальной среде Exchange.

Используйте командлет Import-ExchangeCertificate для импорта сертификатов на серверах Exchange. Используйте этот командлет для установки сертификатов, экспортированных с других серверов, а также для выполнения ожидающих запросов на сертификацию (также известных как запросы на подписание сертификата, или CSR) от центров сертификации (ЦС).

Сведения о наборах параметров в разделе Синтаксис ниже см. В разделе Синтаксис командлета Exchange.

Синтаксис

Import-ExchangeCertificate
      -FileData <Byte[]>
      [-Confirm]
      [-DomainController <Fqdn>]
      [-FriendlyName <String>]
      [-Password <SecureString>]
      [-PrivateKeyExportable <Boolean>]
      [-Server <ServerIdParameter>]
      [-WhatIf]
      [<CommonParameters>]
Import-ExchangeCertificate
      -Instance <String[]>
      [-Confirm]
      [-DomainController <Fqdn>]
      [-FriendlyName <String>]
      [-Password <SecureString>]
      [-PrivateKeyExportable <Boolean>]
      [-Server <ServerIdParameter>]
      [-WhatIf]
      [<CommonParameters>]
Import-ExchangeCertificate
      -FileName <String>
      [-Confirm]
      [-DomainController <Fqdn>]
      [-FriendlyName <String>]
      [-Password <SecureString>]
      [-PrivateKeyExportable <Boolean>]
      [-Server <ServerIdParameter>]
      [-WhatIf]
      [<CommonParameters>]

Описание

С помощью командлета Import-ExchangeCertificate можно импортировать следующие типы файлов сертификатов на сервер Exchange Server:

  • Файл APKCS 7 сертификата или цепочки сертификатов (P7B или P7C), выданный центром сертификации (ЦС). PKCS 7 — это стандарт Cryptographic Message Syntax (синтаксис, используемый для цифровых подписей или шифрования данных с помощью криптографии на основе открытых ключей, включая сертификаты). Дополнительные сведения см. в разделе PKCS #7 Cryptographic Messaging Syntax Concepts.
  • Файл сертификата PKCS #12 (CER, CRT, .der, P12 или PFX), содержащий закрытый ключ. PKCS No 12 — это стандарт синтаксиса Обмена персональными данными, формат файла, используемый для хранения сертификатов с соответствующими закрытыми ключами, защищенными паролем. Дополнительные сведения см. в разделе PKCS #12: Синтаксис Обмена персональными данными версии 1.1.

После импорта сертификата на сервере Exchange Server необходимо назначить сертификат одной или нескольким службам Exchange с помощью командлета Enable-ExchangeCertificate.

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

Теперь для шифрования данных, которыми обмениваются компьютерные системы, используется протокол TLS вместо протокола SSL. Они настолько тесно связаны, что термины "SSL" и "TLS" (без версий) часто используются взаимозаменяемо. Из-за этого сходства ссылки на "SSL" в разделах Exchange, Центр администрирования Exchange и командная консоль Exchange часто используются для охвата протоколов SSL и TLS. Как правило, термин "SSL" обозначает именно протокол SSL только в тех случаях, когда указан номер версии (например, SSL 3.0). Дополнительные сведения см. в статье рекомендации по настройке TLS Exchange Server.

Для его запуска необходимо получить соответствующие разрешения. В этой статье перечислены все параметры командлета. Но некоторые из них могут быть вам не доступны, если они не включены в назначенные разрешения. Сведения о необходимых разрешениях для запуска командлетов и использования параметров в организации см. в статье Find the permissions required to run any Exchange cmdlet.

Примеры

Пример 1

Import-ExchangeCertificate -Server Mailbox01 -FileName "\\FileServer01\Data\Exported Fabrikam Cert.pfx" -Password (Get-Credential).password

В Exchange 2013 этот пример импортирует сертификат из PKCS #12 файла из \\FileServer01\Data\Exported Fabrikam Cert.pfx на сервер Exchange с именем Mailbox01. Для этого файла требуется пароль файла. Этот сертификат мог быть экспортирован с другого сервера или выдан центром сертификации.

Чтобы экспортировать сертификат в Exchange 2016 или Exchange 2019, используйте параметр FileData, как описано в примере 2.

Пример 2

Import-ExchangeCertificate -Server Mailbox01 -FileData ([System.IO.File]::ReadAllBytes('\\FileServer01\Data\Exported Fabrikam Cert.pfx')) -Password (Get-Credential).password

Этот пример импортирует тот же файл сертификата из примера 1. Этот метод является обязательным в Exchange 2016 и Exchange 2019, так как параметр FileName недоступен.

Пример 3

Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('C:\Certificates\Fabrikam IssuedCert.p7b'))

В этом примере импортируется цепочка сертификатов из PKCS #7 файла C:\Certificates\Fabrikam IssuedCert.p7b на локальном сервере Exchange Server.

Параметры

-Confirm

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

  • Деструктивные командлеты (например, командлеты Remove-*) имеют встроенную паузу, которая заставляет вас подтвердить команду перед продолжением. Можно пропускать запросы на подтверждение этих командлетов, используя следующий синтаксис: -Confirm:$false.
  • Большинство других командлетов (например, командлеты New-* и Set-*) не имеют встроенной приостановки. Для этих командлетов указание переключателя Confirm без значения вводит паузу, которая заставляет вас подтвердить команду перед продолжением.
Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-DomainController

Параметр DomainController указывает контроллер домена, который используется этим командлетом для чтения или записи данных в Active Directory. Вы определяете контроллер домена по его полному доменному имени (FQDN). Например, dc01.contoso.com.

Параметр DomainController не поддерживается пограничными транспортными серверами. Пограничный транспортный сервер использует локальный экземпляр службы Active Directory облегченного доступа к каталогам (AD LDS) для чтения и записи данных.

Type:Fqdn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-FileData

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

Допустимое значение для этого параметра требует считывания файла в байтовый объект с использованием следующего синтаксиса: ([System.IO.File]::ReadAllBytes('<Path>\<FileName>')). Эту команду можно использовать в качестве значения параметра или записать выходные данные в переменную ($data = [System.IO.File]::ReadAllBytes('<Path>\<FileName>')) и использовать переменную в качестве значения параметра ($data).

Вы можете использовать локальный путь, если файл сертификата находится на сервере Exchange Server, где выполняется команда, и это тот же сервер, на котором требуется установить сертификат. В противном случае используйте UNC-путь (\\Server\Share).

При использовании этого параметра для импорта файлов текстовых сертификатов PKCS #7 эти файлы содержат: -----BEGIN CERTIFICATE----- и -----END CERTIFICATE----- или -----BEGIN PKCS7----- и -----END PKCS7----- с расширениями P7B или P7C.

Если значение содержит пробелы, его необходимо заключить в кавычки (").

Type:Byte[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-FileName

Примечание. Этот параметр был удален из Exchange 2016 и Exchange 2019 накопительным Обновления H1 за 2022 год, так как он принимает значения пути UNC. Чтобы импортировать файл сертификата без использования параметра FileName, используйте параметр FileData.

Этот параметр доступен только в Exchange 2013.

Параметр FileName указывает файл сертификата, который нужно импортировать. Обычно этот параметр используется для двоичных файлов сертификатов PKCS 12 с расширениями .cer, .crt, .der, .p12 или .pfx. Двоичный файл сертификата этого типа защищен паролем, если содержит закрытый ключ или цепочку сертификатов.

Вы можете использовать локальный путь, если файл сертификата находится на сервере Exchange Server, где выполняется команда, и это тот же сервер, на котором требуется установить сертификат. В противном случае используйте UNC-путь (\\Server\Share).

Если значение содержит пробелы, его необходимо заключить в кавычки (").

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2013

-FriendlyName

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

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Instance

Этот параметр устарел и больше не используется.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Password

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

В качестве значения для этого параметра можно использовать следующие методы:

  • (ConvertTo-SecureString -String '<password>' -AsPlainText -Force).
  • Перед выполнением этой команды сохраните пароль как переменную (например, $password = Read-Host "Enter password" -AsSecureString), а затем используйте переменную ($password) в качестве значения.
  • (Get-Credential).password запрос на безопасный ввод пароля при выполнении этой команды.
Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-PrivateKeyExportable

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

  • $true: закрытый ключ можно экспортировать, поэтому сертификат можно экспортировать с этого сервера.
  • $false: закрытый ключ нельзя экспортировать, поэтому вы не можете экспортировать сертификат с этого сервера. Это значение используется по умолчанию.
Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-Server

Параметр Server задает сервер Exchange, на котором следует выполнить эту команду. Можно использовать любое значение, однозначно определяющее сервер. Примеры:

  • Имя.
  • полное доменное имя;
  • различающееся имя (DN);
  • Устаревшее различающееся имя Exchange

Устаревшее различающееся имя Exchange

Type:ServerIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-WhatIf

Переключатель WhatIf имитирует действия команды. Вы можете использовать его для просмотра результатов изменений без фактического внесения этих изменений. С этим параметром не нужно указывать значение.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

Входные данные

Input types

Сведения о типах входных данных, которые принимает этот командлет, см. в разделе Типы входных и выходных данных командлетов. Если поле Тип ввода для командлета пустое, командлет не принимает входные данные.

Выходные данные

Output types

Сведения о типах возвращаемых данных, которые также называются типами выходных данных, которые принимает этот командлет, см. в разделе Типы входных и выходных данных командлетов. Если поле Тип вывода пусто, командлет не возвращает данные.