前言
随着云计算的高速发展,越来越多的应用程序需要采用云中心化配置,在这个过程中,密钥管理变得愈发重要。Azure KeyVault 作为微软 Azure 的一项服务,为开发人员提供了方便的密钥管理方案。本文主要介绍 @azure/keyvault-secrets 这个 npm 包的使用,它提供了在 Node.js 中访问 Azure KeyVault 的方法。
安装
使用 npm 可以非常方便地安装 @azure/keyvault-secrets
npm install @azure/keyvault-secrets
配置
要使用 @azure/keyvault-secrets 这个 npm 包,需要首先在 Azure 门户创建 KeyVault 实例,并分配给需要访问密钥的团队成员对应的访问权限。
新建 Azure KeyVault 实例
在 Azure 门户,创建新的 KeyVault 实例并按照提示输入相关信息。
分配密钥访问权限
为了在代码中安全地使用 KeyVault,需要在门户中为服务主体授予权限。在 KeyVault 实例的“访问策略”选项卡中添加 “Secrets Management” 权限并指定服务主体。
使用
在代码中引入 @azure/keyvault-secrets 包
const { SecretClient } = require("@azure/keyvault-secrets");
创建 SecretClient 实例:
const url = `https://${keyVaultName}.vault.azure.net`; const credential = new DefaultAzureCredential(); const clients = new SecretClient(url, credential);
获取密钥
const secretName = "my-secret-name"; const secret = await clients.getSecret(secretName); console.log(`My secret value is: ${secret.value}`);
创建密钥
const secretName = "my-secret-name"; const options = { secretValue: "secret-value-value" }; const result = await clients.setSecret(secretName, options); console.log(`My secret value is: ${result.secret.value}`);
更新密钥
const secretName = "my-secret-name"; const options = { secretValue: "new-secret-value" }; const secret = await clients.updateSecret(secretName, options); console.log(`My secret value is: ${secret.value}`);
删除密钥
const keyName = "my-secret-name"; const keyDeletePoller = await client.beginDeleteSecret(keyName); await keyDeletePoller.pollUntilDone();
总结
@azure/keyvault-secrets 为 Node.js 提供了方便的 Azure KeyVault 组件,方便使用微软云服务提供的密钥管理系统。通过使用这个 npm 包,可以非常简单地管理分布式应用程序中的加密配置,确保应用程序的信息安全。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f1bc230403f2923b035c4f5