Microsoft Azure密钥保pipe库可以进行对称encryption吗?

我希望澄清和build议如下:

我的项目要求我在Nodejs环境中使用对称数据encryption(使用AES)来保护数据库(mongodb)上的数据。 理想情况下,我想这样做如下:

将对称密钥作为密钥存储在Azure密钥保pipe库中,然后对该保pipe库进行“encryption”调用,以使用密钥对数据执行AESencryption。 encryption的数据在对我的应用程序的响应中发送,然后以encryption的forms存储在数据库中。

在阅读MS Azure的文档和相关博客文章后,我感到困惑,有些消息来源声称支持对称密钥encryption,但是没有官方文档。

任何人都可以build议,这是否是Azure Key Vault支持的所有关键types和algorithm的详尽列表? https://msdn.microsoft.com/en-us/library/azure/dn903623.aspx#BKMK_KeyTypes

这似乎也可能是一个选项( http://www.nuget.org/packages/Microsoft.Azure.KeyVault.extensions ),但只适用于.NET环境。 对Nodejs的任何爱?

所以 – 我问的是“MS Azure的密钥保pipe库是否支持对称(AES)密钥/encryption,如果是,那么这是正式logging在哪里?

如果当前不支持对称密钥/encryption,任何人都可以提供一种替代方法来实现上述的方法吗?

非常感谢,非常感谢。

我同意文档/博客似乎有点混淆这个话题。 根据我的理解,密钥库目前还不支持对称encryption。 我相信最接近你可以将对称密钥存储为秘密,并在保险库之外使用它们。

这篇文章谈到了这样做。 请参阅标题为“ 使用密钥库保密”的部分

我明白你的使用node.js和那个例子是在powershell只是试图说明一个秘密对称encryption的例子。 密码操作显然是在Vault之外发生的。 所以,rest时间的钥匙更安全,但是在操作发生的任何时候都会暴露在内存中。

希望有所帮助。

以下是PowerShell中在Key Vault中创build可用作SymmetricKey的秘密的示例。

SymmetricKey sec = (SymmetricKey) cloudResolver.ResolveKeyAsync( "https://contosokeyvault.vault.azure.net/secrets/TestSecret2/", CancellationToken.None).GetAwaiter().GetResult();