Azure Key Vault 密钥、机密和证书概述

凭借 Azure Key Vault,Azure 应用程序和用户能够存储和使用多种类型的机密/密钥数据:密钥、机密和证书。 密钥、机密和证书统称为“对象”。

对象标识符

在 Key Vault 中,对象通过一个称为对象标识符的不区分大小写的标识符来唯一标识。 不管地理位置如何,系统中都不存在两个具有相同标识符的对象。 标识符由标识 Key Vault 的前缀、对象类型、用户提供的对象名称和对象版本组成。 不包括对象版本的标识符称为“基本标识符”。 密钥保管库对象标识符也是有效的 URL,但应始终作为不区分大小写的字符串进行比较。

有关详细信息,请参阅身份验证、请求和响应

对象标识符具有以下常规格式(具体取决于容器类型):

  • 对于保管库https://{vault-name}.vault.azure.cn/{object-type}/{object-name}/{object-version}

  • 对于托管 HSM 池https://{hsm-name}.managedhsm.chinacloudapi.cn/{object-type}/{object-name}/{object-version}

注意

请参阅对象类型支持以了解每种容器类型支持的对象类型。

地点:

元素 DESCRIPTION
vault-namehsm-name Azure Key Vault 服务中的密钥保管库或托管 HSM 池的名称。

保管库名称和托管 HSM 池名称由用户选择,并且是全局唯一的。

保管库名称和托管 HSM 池名称必须是 3-24 个字符的字符串,且仅包含 0-9、a-z、A-Z 和非连续出现的 -。
object-type 对象的类型:“密钥”、“机密”或“证书”。
object-name object-name 是用户提供的名称,在密钥保管库中必须保持唯一。 该名称必须是 1-127 个字符,且仅包含 0-9、a-z、A-Z 和 - 的字符串。
object-version object-version 是系统生成的 32 个字符的字符串标识符,可以选择用来对某个对象的唯一版本进行寻址。

对象标识符的 DNS 后缀

Azure Key Vault 资源提供程序支持两种资源类型:保管库和托管 HSM。 下表显示了数据平面终结点对各种云环境中的保管库和托管 HSM 池使用的 DNS 后缀。

云环境 保管库的 DNS 后缀 托管 HSM 的 DNS 后缀
Azure 云 .vault.azure.net .managedhsm.azure.net
由世纪互联运营的 Azure 云 .vault.azure.cn .managedhsm.azure.cn

对象类型

此表显示对象标识符中的对象类型及其后缀。

对象类型 标识符后缀 保管库 托管 HSM 池
受 HSM 保护的密钥 /keys 已支持 已支持
受软件保护的密钥 /keys 已支持 不支持
机密 /secrets 已支持 不支持
证书 /certificates 已支持 不支持
存储帐户密钥 /storage 已支持 不支持
  • 加密密钥:支持多种密钥类型和算法,并支持使用受软件保护的密钥和受 HSM 保护的密钥。 有关详细信息,请参阅关于密钥
  • 机密:提供机密(例如密码和数据库连接字符串)的安全存储。 有关详细信息,请参阅关于机密
  • 证书:支持基于密钥和机密并且添加了自动续订功能的证书。 请记住,创建证书后,还可以创建具有相同名称的可寻址密钥和机密。 有关详细信息,请参阅关于证书
  • Azure 存储帐户密钥:可以帮助您管理 Azure 存储帐户的密钥。 在内部,Key Vault 可以使用 Azure 存储帐户列出(同步)密钥,并定期重新生成(轮换)密钥。 有关详细信息,请参阅使用 Key Vault 管理存储帐户密钥

有关 Key Vault 的更多常规信息,请参阅关于 Azure Key Vault。 有关托管 HSM 池的详细信息,请参阅什么是 Azure Key Vault 托管 HSM?

数据类型

请参阅 JOSE 规范,了解密钥、加密和签名的相关数据类型。

  • 算法 - 用于密钥操作的支持算法,例如 RSA_OAEP_256
  • ciphertext-value - 密码文本八位组,使用 Base64URL 编码
  • digest-value - 哈希算法的输出,使用 Base64URL 编码
  • key-type - 一种支持的密钥类型,例如 RSA (Rivest-Shamir-Adleman)。
  • plaintext-value - 纯文本位组,使用 Base64URL 编码
  • signature-value - 签名算法的输出,使用 Base64URL 编码
  • base64URL - Base64URL [RFC4648] 编码的二进制值
  • boolean - 要么为 true,要么为 false
  • 标识 - Microsoft Entra ID 中的标识。
  • IntDate - 一个 JSON 十进制值,表示从 1970-01-01T0:0:0Z UTC 到指定 UTC 日期/时间的秒数。 请参阅 RFC3339,了解有关日期/时间的常规信息和 UTC 的特别信息。

对象、标识符和版本控制

对于存储在 Key Vault 中的对象,在创建了某一对象的新实例后,这些对象就会受到版本控制。 每个版本都分配有唯一对象标识符。 首次创建一个对象时,该对象被赋予了一个唯一的版本标识符,并标记为当前版本的对象。 创建与对象同名的新实例会向新对象赋予一个唯一的版本标识符,并使其成为当前版本。

可以通过指定版本或省略版本以获取对象的最新版本来检索 Key Vault 中的对象。 对对象执行操作需要提供版本才能使用特定版本的对象。

注意

您为 Azure 资源或对象 ID 提供的值可能会被复制到全球范围,以运行此服务。 提供的值不应包含个人身份或敏感信息。

后续步骤