Node.js 在node/TypeScript中使用SecretClient时,如何使用用户AD帐户?
我正在尝试使用Azure Key Vault Secret客户端库(),但在身份验证方面遇到了问题。这些示例都使用服务主体,但我也尝试允许使用AD用户进行访问。这可以通过从运行上下文中获取用户或通过用户名/密码来实现。可以使用这个库吗?如果不是,我需要使用其他库,还是需要直接进行其余调用?根据我的理解,您希望使用用户名和密码获取Azure Key Vault机密。我们可以在SDKNode.js 在node/TypeScript中使用SecretClient时,如何使用用户AD帐户?,node.js,typescript,azure-keyvault,Node.js,Typescript,Azure Keyvault,我正在尝试使用Azure Key Vault Secret客户端库(),但在身份验证方面遇到了问题。这些示例都使用服务主体,但我也尝试允许使用AD用户进行访问。这可以通过从运行上下文中获取用户或通过用户名/密码来实现。可以使用这个库吗?如果不是,我需要使用其他库,还是需要直接进行其余调用?根据我的理解,您希望使用用户名和密码获取Azure Key Vault机密。我们可以在SDK@azure/identity中使用UsernamePasswordCredential来实现它。具体步骤如下 注册A
@azure/identity
中使用UsernamePasswordCredential
来实现它。具体步骤如下
- 作为公共客户
- 配置API权限
npm install @azure/keyvault-secrets
npm install @azure/identity
npm install dotenv
b。创建.env
文件
AZURE_TENANT_ID=<your tenant id>
AZURE_CLIENT_ID=<your appid>
AZURE_USERNAME=<your AzureAD user account>
AZURE_PASSWORD=<your AzureAD account password>
AZURE\u租户\u ID=
AZURE\u客户端\u ID=
AZURE_用户名=
AZURE_密码=
c。代码
var keyvault = require('@azure/keyvault-secrets')
var azure = require('@azure/identity')
const dotenv = require('dotenv');
dotenv.config();
async function main() {
const creds = new azure.UsernamePasswordCredential(process.env.AZURE_TENANT_ID,process.env.AZURE_CLIENT_ID,process.env.AZURE_USERNAME,process.env.AZURE_PASSWORD)
const client = new keyvault.SecretClient('<your key vault url>',creds)
const secret = await client1.getSecret('<your secret name>')
console.log(secret)
}
main()
.then(() => {
console.log("Successfully executed sample.");
})
.catch((err) => {
console.log(err.message);
});
var-keyvault=require(“@azure/keyvault-secrets”)
var azure=require(“@azure/identity”)
const dotenv=require('dotenv');
dotenv.config();
异步函数main(){
const creds=new azure.UsernamePasswordCredential(process.env.azure\租户\ ID,process.env.azure\客户端\ ID,process.env.azure\用户名,process.env.azure\密码)
const client=new keyvault.SecretClient(“”,creds)
const secret=wait client1.getSecret(“”)
console.log(机密)
}
main()
.然后(()=>{
log(“成功执行的示例”);
})
.catch((错误)=>{
控制台日志(错误消息);
});
谢谢,但我想知道如何使用广告用户,而不是服务负责人/应用程序registration@ErickT“对广告用户执行此操作”是什么意思?对active directory用户执行此操作,就像您在门户中使用的一样。用户有UsedId和ObjectId,但没有像应用程序注册/服务那样的ClientIdPrincipal@ErickT当我们登录Azure门户时,登录url还将包含AD应用程序的客户端id。但它是由微软创建的,我们不需要这样做。因为当我们访问受Azure AD保护的资源时,我们必须注册Azure AD应用程序,为应用程序配置权限,并在获得访问令牌时提供客户端id。欲知详情,,