Export-ExchangeCertificate
Этот командлет доступен только в локальной среде Exchange.
Используйте командлет Export-ExchangeCertificate для экспорта существующих сертификатов и ожидающих запросов сертификатов (также известных как запросы подписи сертификатов или CSR) с серверов Exchange.
Сведения о наборах параметров в разделе Синтаксис ниже см. В разделе Синтаксис командлета Exchange.
Синтаксис
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>]
Описание
Командлет Export-ExchangeCertificate создает следующие типы файлов:
Файлы сертификатов: при экспорте сертификата команда создает файл PKCS #12. PKCS #12 — это стандарт синтаксиса обмена личной информацией, опубликованный RSA Laboratories. Дополнительные сведения см. в разделе PKCS # 12: Синтаксис обмена персональными данными Standard.
Чтобы экспортировать сертификат с сервера Exchange, свойство сертификата PrivateKeyExportable должно иметь значение True. Чтобы импортировать экспортированный сертификат на другой сервер Exchange, необходимо экспортировать сертификат с помощью параметра Password, чтобы включить закрытый ключ или цепочку доверия в файл сертификата. Самозаверяющий сертификат Microsoft Exchange по умолчанию или новые самозаверяющие сертификаты, созданные в Центре администрирования Exchange или с помощью параметров по умолчанию командлета New-ExchangeCertificate, не подлежат экспорту, так как закрытый ключ не экспортируется (значение по умолчанию параметра PrivateKeyExportable равно $false).
Файлы запроса сертификата: при экспорте запроса сертификата команда создает файл PKCS #10. PKCS #10 — это стандарт синтаксиса запроса на сертификат, описанный в документе RFC 2314. Дополнительные сведения см. в разделе PKCS #10: синтаксис запроса на сертификацию.
Как правило, файл запроса на сертификат экспортируется, чтобы повторно отправить запрос на сертификат в центр сертификации. Экспортированный запрос на сертификат нельзя импортировать на другой сервер.
Для его запуска необходимо получить соответствующие разрешения. Хотя в этой статье перечислены все параметры командлета, у вас может не быть доступа к некоторым параметрам, если они не включены в назначенные вам разрешения. Сведения о необходимых разрешениях для запуска командлетов и использования параметров в организации см. в статье Find the permissions required to run any Exchange cmdlet.
Примеры
Пример 1
Export-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -FileName "C:\Data\HT cert.pfx" -BinaryEncoded -Password (Get-Credential).password
В Exchange 2013 этот пример экспортирует сертификат с локального сервера Exchange в файл со следующими параметрами:
- Экспортируемый сертификат имеет значение отпечатка 5113ae0233a72fccb75b1d0198628675333d010e.
- Экспортируемый файл сертификата имеет код DER (двоичный), а не Base64.
- Введите пароль при появлении запроса.
- Сертификат экспортируется в файл C:\Data\HT cert.pfx.
Примечание. Параметр FileName доступен только в Exchange 2013. Сведения об экспорте сертификата в Exchange 2016 или Exchange 2019 см. в примере 2.
Пример 2
$bincert = Export-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -BinaryEncoded -Password (Get-Credential).password
[System.IO.File]::WriteAllBytes('C:\Data\HT cert.pfx', $bincert.FileData)
В этом примере экспортируется тот же сертификат, что и в примере 1. Этот метод необходим в Exchange 2016 и Exchange 2019, так как параметр FileName недоступен.
Пример 3
Export-ExchangeCertificate -Thumbprint 72570529B260E556349F3403F5CF5819D19B3B58 -Server Mailbox01 -FileName "\\FileServer01\Data\Fabrikam.req"
В Exchange 2013 этот пример экспортирует ожидающий запрос сертификата в файл со следующими параметрами:
- Запрос сертификата на экспорт имеет значение отпечатка 72570529B260E556349F3403F5CF5819D19B3B58 и находится на сервере Exchange с именем Mailbox01.
- Запрос на сертификат экспортируется в кодировке Base64, поэтому сведения, записываемые в файл, также отображаются на экране.
- Запрос сертификата экспортируется в файл \\FileServer01\Data\Fabrikam.req.
Примечание. Параметр FileName доступен только в Exchange 2013. Сведения об экспорте ожидающего запроса сертификата в Exchange 2016 или Exchange 2019 см. в примере 4.
Пример 4
$txtcert = Export-ExchangeCertificate -Thumbprint 72570529B260E556349F3403F5CF5819D19B3B58 -Server Mailbox01
[System.IO.File]::WriteAllBytes('\\FileServer01\Data\Fabrikam.req', [System.Text.Encoding]::Unicode.GetBytes($txtcert))
В этом примере экспортируется тот же ожидающий запрос сертификата из примера 3. Этот метод необходим в Exchange 2016 и Exchange 2019, так как параметр FileName недоступен.
Параметры
-BinaryEncoded
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр BinaryEncoded кодирует экспортируемый файл сертификата или запроса на сертификат по правилам DER. С этим параметром не нужно указывать значение.
Как правило, этот параметр используется при экспорте сертификата, так как позволяет хранить сертификат и его закрытый ключ или цепочку сертификатов в едином двоичном файле, если при этом также выбран параметр Password. Если этот переключатель не используется, экспортируемый файл сертификата имеет кодировку Base64, и все промежуточные или корневые сертификаты в цепочке доверия необходимо экспортировать отдельно.
Свойства параметров
| Тип: | SwitchParameter |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Confirm
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Переключатель подтверждения указывает, показывать или скрывать запрос подтверждения. То, как этот переключатель влияет на командлет, зависит от того, требует ли командлет подтверждения перед продолжением.
- Деструктивные командлеты (например, командлеты Remove-) имеют встроенную паузу, которая заставляет вас подтвердить команду перед продолжением. Можно пропускать запросы на подтверждение этих командлетов, используя следующий синтаксис:
-Confirm:$false. - Большинство других командлетов (например, командлеты New- и Set-) не имеют встроенной паузы. Для этих командлетов указание параметра Confirm без значения приводит к паузе, которая вынуждает вас подтвердить команду перед продолжением.
Свойства параметров
| Тип: | SwitchParameter |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | cf |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-DomainController
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр DomainController указывает контроллер домена, который используется этим командлетом для чтения или записи данных в Active Directory. Вы определяете контроллер домена по его полному доменному имени (FQDN). Например, dc01.contoso.com.
Параметр DomainController не поддерживается пограничными транспортными серверами. Пограничный транспортный сервер использует локальный экземпляр службы Active Directory облегченного доступа к каталогам (AD LDS) для чтения и записи данных.
Свойства параметров
| Тип: | Fqdn |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-FileName
Применимо: Exchange Server 2013
Примечание. Этот параметр был удален из Exchange 2016 и Exchange 2019 накопительным обновлением за первое полугодие 2022 г., поскольку он принимает значения путей UNC. Чтобы экспортировать сертификат или запрос сертификата в файл без использования параметра FileName, используйте методы, описанные в примерах 2 и 4.
Этот параметр доступен только в Exchange 2013.
Параметр FileName определяет имя экспортируемого файла сертификата или запроса на сертификат и путь к нему. Локальный путь можно использовать, если сертификат или запрос сертификата находятся на том же сервере Exchange, где выполняется команда. В противном случае используйте UNC-путь (\\Server\Share). Если значение содержит пробелы, его необходимо заключить в кавычки (").
Свойства параметров
| Тип: | String |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Identity
Применимо: Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр Identity определяет сертификат или запрос на сертификат, который нужно экспортировать. Допустимые значения:
ServerNameOrFQDN\ThumbprintThumbprint
Значение отпечатка можно найти с помощью командлета Get-ExchangeCertificate.
Этот параметр нельзя использовать вместе с параметром Server.
В качестве позиционного параметра для этого командлета выступает параметр Thumbprint, а не параметр Identity. Поэтому, когда указывается только значение отпечатка, команда использует это значение для параметра Thumbprint.
Свойства параметров
| Тип: | ExchangeCertificateIdParameter |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Identity
| Position: | 1 |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Password
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр Password указывает пароль для закрытого ключа или цепочки сертификатов в файле экспортированного сертификата. Чтобы импортировать файл экспортированного сертификата на другом сервере, необходимо знать пароль.
В качестве значения для этого параметра можно использовать следующие методы:
-
(ConvertTo-SecureString -String '<password>' -AsPlainText -Force). - Прежде чем выполнить эту команду,
$password = Read-Host "Enter password" -AsSecureStringсохраните пароль в виде переменной (например ), а затем используйте переменную ($password) в качестве значения. -
(Get-Credential).passwordдля получения запроса на безопасный ввод пароля при выполнении этой команды.
Свойства параметров
| Тип: | SecureString |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Server
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр Server задает сервер Exchange, на котором следует выполнить эту команду. Можно использовать любое значение, однозначно определяющее сервер. Примеры:
- Имя.
- полное доменное имя;
- различающееся имя (DN);
- Устаревшее различающееся имя Exchange
Устаревшее различающееся имя Exchange
Этот параметр нельзя использовать с параметром Identity, но можно использовать с параметром Thumbprint.
Свойства параметров
| Тип: | ServerIdParameter |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Thumbprint
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Thumbprint
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Параметр Thumbprint определяет сертификат или запрос на сертификат, который нужно экспортировать. Значение отпечатка можно найти с помощью командлета Get-ExchangeCertificate.
В качестве позиционного параметра для этого командлета выступает параметр Thumbprint, а не параметр Identity. Поэтому, когда указывается только значение отпечатка, команда использует это значение для параметра Thumbprint.
Свойства параметров
| Тип: | String |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
Thumbprint
| Position: | 1 |
| Обязательно: | True |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-WhatIf
Применимо: Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Server SE
Переключатель WhatIf показывает, что команда делает без каких-либо изменений. С этим параметром не нужно указывать значение.
Свойства параметров
| Тип: | SwitchParameter |
| Значение по умолчанию: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | wi |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в статье about_CommonParameters.
Входные данные
Input types
Чтобы просмотреть типы входных данных, которые принимает этот командлет, см. Типы входных и выходных данных командлета. Если поле "Типы входных данных" для командлета пусто, командлет не принимает входные данные.
Выходные данные
Output types
Чтобы просмотреть типы возвращаемых данных, также называемые типами вывода, которые принимает этот командлет, см. раздел Типы ввода и вывода командлета. Если поле "Типы выходных данных" пусто, командлет не возвращает данные.