Поделиться через


Import-AzKeyVaultCertificate

Импортирует сертификат в хранилище ключей.

Синтаксис

Import-AzKeyVaultCertificate
      [-VaultName] <String>
      [-Name] <String>
      -FilePath <String>
      [-Password <SecureString>]
      [-PolicyPath <String>]
      [-PolicyObject <PSKeyVaultCertificatePolicy>]
      [-Tag <Hashtable>]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Import-AzKeyVaultCertificate
      [-VaultName] <String>
      [-Name] <String>
      -CertificateString <String>
      [-ContentType <String>]
      [-Password <SecureString>]
      [-PolicyPath <String>]
      [-PolicyObject <PSKeyVaultCertificatePolicy>]
      [-Tag <Hashtable>]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Import-AzKeyVaultCertificate
      [-VaultName] <String>
      [-Name] <String>
      [-PolicyPath <String>]
      [-PolicyObject <PSKeyVaultCertificatePolicy>]
      [-CertificateCollection] <X509Certificate2Collection>
      [-Tag <Hashtable>]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Описание

Командлет Import-AzKeyVaultCertificate импортирует сертификат в хранилище ключей. Вы можете создать сертификат для импорта с помощью одного из следующих методов:

  • Используется Add-AzKeyVaultCertificate для создания запроса на подпись сертификата и отправки его в центр сертификации. См. раздел https://learn.microsoft.com/azure/key-vault/certificates/create-certificate-signing-request.
  • Используйте существующий файл пакета сертификата, например PFX или P12-файл, содержащий как сертификат, так и закрытый ключ.

Примеры

Пример 1. Импорт сертификата хранилища ключей

$Password = ConvertTo-SecureString -String "****" -AsPlainText -Force
Import-AzKeyVaultCertificate -VaultName "ContosoKV01" -Name "ImportCert01" -FilePath "C:\Users\contosoUser\Desktop\import.pfx" -Password $Password

Name        : importCert01
Certificate : [Subject]
                CN=contoso.com

              [Issuer]
                CN=contoso.com

              [Serial Number]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              [Not Before]
                2/8/2016 3:11:45 PM

              [Not After]
                8/8/2016 4:21:45 PM

              [Thumbprint]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Thumbprint  : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Tags        :
Enabled     : True
Created     : 2/8/2016 11:50:43 PM
Updated     : 2/8/2016 11:50:43 PM

Первая команда использует командлет ConvertTo-SecureString для создания безопасного пароля, а затем сохраняет его в переменной $Password. Вторая команда импортирует сертификат с именем ImportCert01 в хранилище ключей CosotosoKV01.

Пример 2. Импорт сертификата хранилища ключей с помощью CertificateString

$Password = ConvertTo-SecureString -String "****" -AsPlainText -Force
$Base64String = [System.Convert]::ToBase64String([System.IO.File]::ReadAllBytes("import.pfx"))
Import-AzKeyVaultCertificate -VaultName "ContosoKV01" -Name "ImportCert01" -CertificateString $Base64String -Password $Password

Name        : importCert01
Certificate : [Subject]
                CN=contoso.com

              [Issuer]
                CN=contoso.com

              [Serial Number]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              [Not Before]
                2/8/2016 3:11:45 PM

              [Not After]
                8/8/2016 4:21:45 PM

              [Thumbprint]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Thumbprint  : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Tags        :
Enabled     : True
Created     : 2/8/2016 11:50:43 PM
Updated     : 2/8/2016 11:50:43 PM

Первая команда использует командлет ConvertTo-SecureString для создания безопасного пароля, а затем сохраняет его в переменной $Password. Вторая команда считывает сертификат как представление в кодировке Base64. Третья команда импортирует сертификат с именем ImportCert01 в хранилище ключей CosotosoKV01.

Пример 3. Импорт сертификата хранилища ключей с помощью PolicyFile

$Password = ConvertTo-SecureString -String "****" -AsPlainText -Force
Import-AzKeyVaultCertificate -VaultName "ContosoKV01" -Name "ImportCert01" -FilePath "C:\Users\contosoUser\Desktop\import.pfx" -Password $Password -PolicyPath "C:\Users\contosoUser\Desktop\policy.json"

Name        : importCert01
Certificate : [Subject]
                CN=contoso.com

              [Issuer]
                CN=contoso.com

              [Serial Number]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              [Not Before]
                2/8/2016 3:11:45 PM

              [Not After]
                8/8/2016 4:21:45 PM

              [Thumbprint]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

KeyId         : https://ContosoKV01.vault.azure.net/keys/ImportCert01/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
SecretId      : https://ContosoKV01.vault.azure.net/secrets/ImportCert01/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Thumbprint    : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Policy        :
                Secret Content Type: application/x-pkcs12
                Issuer Name    : Unknown
                Created On     : 3/22/2023 6:00:52 AM
                Updated On     : 4/27/2023 9:52:53 AM
                ...
RecoveryLevel : Recoverable+Purgeable
Enabled       : True
Expires       : 6/9/2023 6:20:26 AM
NotBefore     : 3/11/2023 6:20:26 AM
Created       : 4/24/2023 9:05:51 AM
Updated       : 4/24/2023 9:05:51 AM
Tags          : {}
VaultName     : ContosoKV01
Name          : ImportCert01
Version       : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Id            : https://ContosoKV01.vault.azure.net/certificates/ImportCert01/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Первая команда использует командлет ConvertTo-SecureString для создания безопасного пароля, а затем сохраняет его в переменной $Password. Вторая команда импортирует сертификат с именем ImportCert01 в хранилище ключей CosotosoKV01 с политикой, определенной файлом.

Параметры

-CertificateCollection

Указывает коллекцию сертификатов, добавляемую в хранилище ключей.

Тип:X509Certificate2Collection
Position:2
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-CertificateString

В кодировке Base64 закодированное представление объекта сертификата для импорта. Этот сертификат должен содержать закрытый ключ.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ContentType

Указывает тип импортируемого сертификата. Относится к строке сертификата как формат PFX по умолчанию.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DefaultProfile

Учетные данные, учетная запись, клиент и подписка, используемые для обмена данными с Azure

Тип:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-FilePath

Указывает путь к файлу сертификата, импортируемого этим командлетом.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Name

Указывает имя сертификата. Этот командлет создает полное доменное имя сертификата из имени хранилища ключей, выбранной среды и имени сертификата.

Тип:String
Aliases:CertificateName
Position:1
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Password

Задает пароль для файла сертификата.

Тип:SecureString
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PolicyObject

Объект в памяти, указывающий политику управления для сертификата. Взаимоисключающими к PolicyPath.

Тип:PSKeyVaultCertificatePolicy
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-PolicyPath

Путь к файлу для указания политики управления для сертификата, содержащего определение в кодировке JSON. Взаимоисключаемая политикаObject.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Tag

Пары "ключ-значение" в виде хэш-таблицы. Например: @{key0="value0"; key1=$null; key2="value2"}

Тип:Hashtable
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-VaultName

Указывает имя хранилища ключей, в которое этот командлет импортирует сертификаты. Этот командлет создает полное доменное имя хранилища ключей на основе имени и выбранной среды.

Тип:String
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

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

String

X509Certificate2Collection

Hashtable

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

PSKeyVaultCertificate