【发布时间】:2016-08-15 15:53:46
【问题描述】:
用于密钥轮换的Azure Storage sample code 演示了如何使用多个唯一命名的秘密。但是,现在可以在 KeyVault 中创建单个 Secret 的多个版本。我看不出为什么无法使用版本实现密钥轮换,而且从表面上看,它似乎更容易管理。
任何人都可以就您为什么选择多个 Secret 而不是单个 Secret 的版本来支持密钥轮换提供任何指导吗?如果不是这个,可能还有关于哪些版本的一般指导?
谢谢!
【问题讨论】:
-
我不是专家,但查看 API,似乎每个没有版本标识符的秘密都默认为最新版本,这就是预期的方法。因此,大多数情况下,看起来那里的 API(REST、.NET 等)并没有真正构建代码模式来支持使用您想要的版本。
-
例如,看起来 ResolverKeyAsync 方法不允许您提供版本值来选择不同版本的密钥。或许当 API 已经针对这种新功能成熟时,这种模式会更有意义。再说一次,不是专家,一粒盐,等等。
-
谢谢@kyle-hale。回答您的观点“[..] 查看 API,似乎每个没有版本标识符的秘密都默认为最新版本” - 正确。但我认为这并不重要(事实上我认为这是可取的)。由于每个版本的密钥都可以唯一寻址,因此只要存储版本,就可以解密用以前版本加密的数据,并使用最新版本进行加密
-
我的直接想法是他们在示例中使用了这种方法,因为它更容易遵循,使用版本会使代码不太清晰。在other places 版本控制似乎是建议的方法
-
请参阅 - github.com/Azure/azure-storage-net/issues/334 - “我们正在努力改进整个密钥轮换体验,更新示例以使用 Key Vault 密钥版本是这项工作的一部分。”
标签: azure azure-keyvault