Командлет Add-AzKeyVaultKey создает ключ в хранилище ключей в Azure Key Vault или импортирует ключ в хранилище ключей.
Используйте этот командлет для добавления ключей с помощью любого из следующих методов:
Создайте ключ в аппаратном модуле безопасности (HSM) в службе Key Vault.
Создайте ключ в программном обеспечении в службе Key Vault.
Импортируйте ключ из собственного аппаратного модуля безопасности (HSM) в HSM в службе Key Vault.
Импортируйте ключ из PFX-файла на компьютере.
Импортируйте ключ из PFX-файла на компьютере в аппаратные модули безопасности (HSM) в службе Key Vault.
Для любой из этих операций можно указать ключевые атрибуты или принять параметры по умолчанию.
Если вы создаете или импортируете ключ с тем же именем, что и существующий ключ в хранилище ключей, исходный ключ обновляется со значениями, указанными для нового ключа. Вы можете получить доступ к предыдущим значениям с помощью URI конкретной версии для этой версии ключа. Дополнительные сведения о версиях ключей и структуре URI см. в документации по REST API Key Vault.
Примечание. Чтобы импортировать ключ из собственного аппаратного модуля безопасности, необходимо сначала создать пакет BYOK (файл с расширением имени файла byok) с помощью набора инструментов BYOK в Azure Key Vault. Дополнительные сведения см. в статье "Создание и передача ключей HSM-Protected для Azure Key Vault".
Рекомендуется создать резервную копию ключа после его создания или обновления с помощью командлета Backup-AzKeyVaultKey. Нет функции отмены, поэтому если вы случайно удалите ключ или удалите его, а затем измените свое мнение, ключ не может восстановиться, если у вас нет резервной копии, которую можно восстановить.
Vault/HSM Name : test-kv
Name : test-key
Key Type : EC
Key Size :
Curve Name : P-256
Version : 4da74af2b4fd47d6b1aa0b05c9a2ed13
Id : https://test-kv.vault.azure.net:443/keys/test-key/4da74af2b4fd47d6b1aa0b05c9a2ed13
Enabled : True
Expires :
Not Before :
Created : 8/24/2021 6:38:34 AM
Updated : 8/24/2021 6:38:34 AM
Recovery Level : Recoverable+Purgeable
Tags :
Эта команда создает защищенный программным обеспечением ключ EC с именем test-key в хранилище ключей с именем test-kv. По умолчанию его имя кривой — P-256.
Vault/HSM Name : contoso
Name : ITHsmNonDefault
Key Type : RSA
Key Size : 2048
Version : 929bfc14db84439b823ffd1bedadaf5f
Id : https://contoso.vault.azure.net:443/keys/ITHsmNonDefault/929bfc14db84439b823ffd1bedadaf5f
Enabled : False
Expires : 5/21/2020 11:12:43 PM
Not Before : 5/21/2018 11:12:50 PM
Created : 5/21/2018 11:13:17 PM
Updated : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags : Name Value
Severity high
Accounting true
Первая команда сохраняет значения расшифровки и проверки в переменной $KeyOperations.
Вторая команда создает объект DateTime , определенный в формате UTC, с помощью командлета Get-Date .
Этот объект указывает время два года в будущем. Команда сохраняет эту дату в переменной $Expires. Для получения дополнительных сведений введите Get-Help Get-Date.
Третья команда создает объект DateTime с помощью командлета Get-Date . Этот объект указывает текущее время в формате UTC. Команда сохраняет эту дату в переменной $NotBefore.
Последняя команда создает ключ с именем ITHsmNonDefault, который является ключом, защищенным HSM. Команда задает значения для разрешенных операций ключей, хранящихся $KeyOperations. Команда указывает время истечения срока действия и параметров NotBefore , созданных в предыдущих командах, и теги для высокой серьезности и ИТ-специалистов. Новый ключ отключен. Его можно включить с помощью командлета Set-AzKeyVaultKey .
Vault Name : contoso
Name : ITByok
Version : 67da57e9cadf48a2ad8d366b115843ab
Id : https://contoso.vault.azure.net:443/keys/ITByok/67da57e9cadf48a2ad8d366b115843ab
Enabled : True
Expires :
Not Before :
Created : 5/21/2018 11:10:58 PM
Updated : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags :
Эта команда импортирует ключ с именем ITByok из расположения, указанного параметром KeyFilePath . Импортированный ключ — это защищенный HSM ключ.
Чтобы импортировать ключ из собственного аппаратного модуля безопасности, необходимо сначала создать пакет BYOK (файл с расширением имени файла byok) с помощью набора инструментов BYOK в Azure Key Vault.
Дополнительные сведения см. в статье "Создание и передача ключей HSM-Protected для Azure Key Vault".
Vault Name : contoso
Name : ITPfx
Version : 67da57e9cadf48a2ad8d366b115843ab
Id : https://contoso.vault.azure.net:443/keys/ITPfx/67da57e9cadf48a2ad8d366b115843ab
Enabled : True
Expires :
Not Before :
Created : 5/21/2018 11:10:58 PM
Updated : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags :
Первая команда преобразует строку в безопасную строку с помощью командлета ConvertTo-SecureString , а затем сохраняет эту строку в переменной $Password. Для получения дополнительных сведений введите Get-Help ConvertTo-SecureString.
Вторая команда создает пароль программного обеспечения в хранилище ключей Contoso. Команда указывает расположение ключа и пароля, хранящегося в $Password.
Vault Name : contoso
Name : ITPfxToHSM
Version : 929bfc14db84439b823ffd1bedadaf5f
Id : https://contoso.vault.azure.net:443/keys/ITPfxToHSM/929bfc14db84439b823ffd1bedadaf5f
Enabled : True
Expires : 5/21/2020 11:12:43 PM
Not Before :
Created : 5/21/2018 11:13:17 PM
Updated : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags : Name Value
Severity high
Accounting true
Первая команда преобразует строку в безопасную строку с помощью командлета ConvertTo-SecureString , а затем сохраняет эту строку в переменной $Password.
Вторая команда создает объект DateTime с помощью командлета Get-Date , а затем сохраняет этот объект в переменной $Expires.
Третья команда создает переменную $tags, чтобы задать теги для высокой серьезности и ИТ-специалистов.
Последняя команда импортирует ключ в виде ключа HSM из указанного расположения. Команда указывает время истечения срока действия, хранящееся в $Expires и паролем, хранящимся в $Password, и применяет теги, хранящиеся в $tags.
Пример 8. Создание ключа обмена ключами (KEK) для функции "принести собственный ключ" (BYOK)
Создает ключ (называется ключом KEK). KEK должен быть ключом RSA-HSM, который имеет только операцию импорта ключа. Только номер SKU Класса Premium Key Vault поддерживает ключи RSA-HSM.
Дополнительные сведения см. в статье https://learn.microsoft.com/azure/key-vault/keys/hsm-protected-keys
Пример 9. Создание безопасного ключа в управляемом hsm
Указывает, следует ли добавить ключ в качестве ключа, защищенного программным обеспечением, или ключа, защищенного HSM, в службе Key Vault.
Допустимые значения: HSM и Software.
Примечание. Чтобы использовать HSM в качестве назначения, необходимо иметь хранилище ключей, поддерживающее HSM. Дополнительные сведения о уровнях служб и возможностях Azure Key Vault см. на веб-сайте цен Azure Key Vault.
Этот параметр требуется при создании нового ключа. При импорте ключа с помощью параметра KeyFilePath этот параметр является необязательным:
Если этот параметр не указан, и этот командлет импортирует ключ с расширением имени файла byok, он импортирует этот ключ в виде ключа, защищенного HSM. Командлет не может импортировать этот ключ в качестве ключа, защищенного программным обеспечением.
Если этот параметр не указан, и этот командлет импортирует ключ с расширением PFX-файла, он импортирует ключ в виде программно защищенного ключа.
Указывает, что добавленный ключ имеет начальное состояние отключенного. Любая попытка использовать ключ завершится ошибкой. Используйте этот параметр, если вы предварительно загружаете ключи, которые планируется включить позже.
Указывает время истечения срока действия ключа в формате UTC в качестве объекта DateTime для ключа, добавляемого этим командлетом. Если этот параметр не указан, срок действия ключа не истекает. Чтобы получить объект DateTime , используйте командлет Get-Date . Для получения дополнительных сведений введите Get-Help Get-Date. Обратите внимание, что срок действия не учитывается для ключа Exchange, используемого в процессе BYOK.
Задает политику выпуска как неизменяемое состояние. Помечая неизменяемый, этот флаг нельзя сбросить, и политика не может быть изменена в любых обстоятельствах.
Задает пароль для импортированного файла в качестве объекта SecureString . Чтобы получить объект SecureString , используйте командлет ConvertTo-SecureString . Для получения дополнительных сведений введите Get-Help ConvertTo-SecureString. Этот пароль необходимо указать для импорта файла с расширением PFX-файла.
Указывает путь к локальному файлу, который содержит материал ключа, импортируемый этим командлетом.
Допустимые расширения имени файла : byok и PFX.
Если файл является .byok-файлом, ключ автоматически защищен HSM после импорта, и вы не можете переопределить этот параметр по умолчанию.
Если файл является PFX-файлом, ключ автоматически защищен программным обеспечением после импорта. Чтобы переопределить этот параметр по умолчанию, задайте для параметра Destination значение HSM, чтобы ключ был защищен HSM.
При указании этого параметра параметр назначения является необязательным.
Указывает массив операций, которые можно выполнить с помощью ключа, добавляемого этим командлетом.
Если этот параметр не указан, все операции можно выполнить.
Допустимые значения для этого параметра — это разделенный запятыми список ключевых операций, определенных спецификацией веб-ключа JSON (JWK):
Указывает имя ключа, добавляемого в хранилище ключей. Этот командлет создает полное доменное имя ключа (FQDN) на основе имени, указанного этим параметром, имени хранилища ключей и текущей среды. Имя должно быть строкой от 1 до 63 символов длиной, содержащей только 0-9, a-z, A-Z и - (символ тире).
Указывает время в качестве объекта DateTime , перед которым не удается использовать ключ. Этот параметр использует UTC. Чтобы получить объект DateTime , используйте командлет Get-Date . Если этот параметр не указан, ключ можно использовать немедленно.
Указывает имя хранилища ключей, в которое добавляется этот командлет. Этот командлет создает полное доменное имя хранилища ключей на основе имени, указанного этим параметром, и текущей среды.
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.