从节点的azure keyvault中提取数据

时间:2017-08-15 19:11:44

标签: node.js azure azure-keyvault

我尝试使用Node从Azure KeyVault中提取数据。我用npm安装了azure-keyvault并阅读了微软发布的一些指南(例如https://www.npmjs.com/package/azure-keyvault)但我无法输出数据。仅出于测试目的,我希望使用节点执行View contents of Secret in Azure KeyVault之类的操作。

var KeyVault = require('azure-keyvault');
var util = require('util');
var Crypto = require('crypto');
var AuthenticationContext = require('adal-node').AuthenticationContext;

var clientId = 'xxx';
var clientSecret = 'xxx';
var vaultUri = 'xxx';

我找不到一个API,其中包含我可以使用keyvault var执行的命令列表,如何从keyvault中提取数据?

修改:所以我有var KeyVault = require('azure-keyvault');

并且KeyVault变量可以用作对象,其中列出了方法:http://azure.github.io/azure-sdk-for-node/azure-keyvault/latest/

4 个答案:

答案 0 :(得分:2)

以下是'azure-keyvault'库文档:http://azure.github.io/azure-sdk-for-node/azure-keyvault/latest/

  

我找不到一个API,其中包含我可以使用keyvault var

执行的命令列表

使用“keyvault var”创建keyvault客户端。在上面的链接中,请参阅侧面菜单以获取所有命令的列表。

  

如何从keyvault中提取数据?

例如,您可以使用$_GET['page']功能:http://azure.github.io/azure-sdk-for-node/azure-keyvault/latest/KeyVaultClient.html#getSecrets

答案 1 :(得分:1)

我找到了资源Uploading file into azure blob storage using Azure Keyvault credentials with NodeJS and React

他们首先要获取密钥库详细信息,然后使用这些凭据将文件上传到Azure Blob存储中

答案 2 :(得分:1)

不推荐使用软件包azure-keyvault,而推荐使用新软件包来分别处理Keyvault密钥,秘密和证书。对于您的方案,您可以使用新的@azure/keyvault-secrets软件包。

@azure/keyvault-secrets的自述文件包含您可以参考的各种代码段。您也可以参考entire sample set for secrets

答案 3 :(得分:0)

要从天蓝色的密钥保管库读取机密,可以使用npm库read-azure-secrets,在该库中,您需要传递客户端ID,客户端机密和保管库URI。它将返回密钥库中的所有秘密。 示例-

const secretClient = require('read-azure-secrets');

async function loadKeyVaultValues() {

    let applicationID = '';
    let applicationSecret = '';
    let vaultURL = 'https://<your-key-vault-name>.vault.azure.net/';
    let secrets = await secretClient.getSecrets(applicationID, applicationSecret, vaultURL);

    secrets.forEach(secret => {
        console.log(secret);
    });

}

loadKeyVaultValues();