NodeJS VS2022与“用于Visual Studio代码身份验证的Azure身份插件”等效吗?

uqdfh47h  于 2022-12-03  发布在  Node.js
关注(0)|答案(1)|浏览(216)

我尝试在本地开发环境中使用VisualStudio2022中的本地用户向Azure进行身份验证,方法如下:

const { DefaultAzureCredential } = require("@azure/identity");
const credential = new DefaultAzureCredential();

但没有找到任何内容,我已在VS2022中登录。
1.应该自动找到凭据,还是需要指定它是我要使用的VS2022凭据?

  1. https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity-vscode/README.md是否仅适用于VS代码,而不适用于vs2022?

**编辑1:**详细说明:据我所知,“凭据”可以来自“EnvironmentCredentials”,“DefaultManagedIdentityCredentials”,“AzureCLI”或“AzurePowerShell”。由于在VS2022中使用正确的订阅登录到Azure,我希望我的凭据在其中一个中包含我的凭据。

顺便说一句:我得到了一个 “DefaultAzureCredential =〉无法从包含的凭证中检索令牌。要排除故障,请访问” 什么是“包含的凭证”?

编辑2:我可以使用Azure CLI获取令牌,如此处所述:https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/TROUBLESHOOTING.md#verify-the-azure-cli-can-obtain-tokens

js4nwp54

js4nwp541#

这个问题通过使用azure sdk require(“@azure/identity”)得到解决;
我猜它通过AzureCLI获取凭据,事件虽然在示例化凭据时不可见,这是我所期望的。但它都是未定义的,如下图所示。

然后,只是试图从keyVault它的工作的秘密,虽然我不是100%确定它是如何工作的.

const client = new SecretClient(url, credential);
await client.getSecret(secretName);

相关问题