Azure Key Vault中的密钥和机密有什么区别?

62

了解它们是什么,

  • 它们是什么,
  • 它们用于什么
  • 为什么人们会更喜欢其中之一而不是另一个。
3个回答

54

一个非常简单的答案:

密钥

表示为JWK(JSON Web Key)的加密密钥

示例:存储包含一对公钥和私钥的 .pfx 证书文件

秘密

KV接受任何值并将其存储为二进制(有最大大小限制)

示例:密码或API密钥


更多阅读


在实际应用中,应该使用什么?例如,我想为我的应用程序存储一些秘密的唯一数据。我应该使用什么和如何使用? - DSA
2
如果您的数据在支持的大小限制内,则使用secrets来存储它们。 - Bishoy
Azure密钥保险库中的机密是八位字节序列,每个序列的最大大小为25k字节。 - Manohar Reddy Poreddy

40

密钥保管库密钥:

Azure Key Vault中的密钥是用于加密信息的“加密密钥”,而不会将私钥发布给使用者(用户\服务)。它就像一个黑匣子,使用RSA算法来加密和解密内容。

RSA算法涉及公钥和私钥。公钥可以为所有人所知,在加密消息时使用。使用公钥加密的消息只能使用私钥解密。

场景:

假设您必须存储客户信用卡信息,将其安全地保存在您的数据库中的方式是将其加密存储。在软件设计和业务要求期间,明确了应该加密它,但大多数人意识不到或不在意如何保护加密密钥,它们大多作为软件配置的一部分进行存储,如果攻击者或员工可以访问密钥,则信息就不再安全。

使用密钥保管库密钥,您可以将信用卡信息发送到KeyVault,它将加密信息并返回加密值给调用方。在高性能场景下,您可以从KeyVault获取公钥,用于从应用程序端加密信息并已加密存储在DB中,而无需将数据发送到KV。唯一获取真实数据的方式是向KV发送加密数据,它会返回解密信用卡信息。

密钥保管库机密:

Azure Key Vault中的机密是最大大小为25kb的八位字节序列。之所以被描述为八位字节,是因为它不关心正在存储的数据类型,唯一的限制是大小为25kb。一旦您发送了数据,它就会被加密并存储,并且只有在您有权限时才能检索它。它用于存储诸如应用程序设置、令牌和数据库连接字符串、密码等信息。

Key Vault Secrets 的好处是,您可以使用预定义的轮换值来定义到期/不早于值。因此,您可以注册临时值,在指定的时间段内进行轮换,而读者在具有 Get 权限的情况下访问 Key Vault 时,只能读取当前的值,而未来的值已经被定义并且对 Get 操作不可见。


8
Azure Key Vault(KV)可以存储3种类型的项目:(1)秘密,(2)密钥和(3)证书(certs)。
  1. 机密信息 - 提供安全存储机密信息的功能,例如数据库连接字符串、帐户密钥或PFX(私钥文件)密码。认证应用程序可以检索机密信息以在其操作中使用。更多信息请参见AZ KV Secrets

  2. (加密的)密钥 - 以JWK(JSON Web Key)表示的密钥。支持多种密钥类型和算法,并支持使用硬件安全模块(HSM)保护高价值密钥。更多信息请参见AZ KV Keys

  3. 证书 - 是一种管理的X.509证书,建立在密钥和机密信息之上,并添加了自动更新功能/自动翻转功能。更多信息请参见AZ KV Certificate


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接