繁体   English   中英

在Azure .NET Core 2.0 SDK中管理凭据

[英]Managing Credentials in Azure .NET Core 2.0 SDK

我对如何在Azure .NET SDK中创建凭据而不必从本地文件调用凭据有点迷茫。

就我而言,我有一些订阅,我将数据存储在本地数据库中。 我想使用存储在数据库中的凭据为我的VM多次调用Azure。

它们有许多类,它们表示SDK文档中进行身份验证的方式,但是我看不到通过SDK创建访问令牌或使用凭据(租户ID,订阅ID,客户端ID和机密信息)的明确方法。

例如,当调用Client类之一( ComputeManagementClient )时,您可以使用凭据来调用它以向Azure身份验证请求,但是它们似乎没有提供用于从文件之外生成凭据的Class。

有人有MSDN参考吗?

根据AzureCredentialsFactory类,我们可以知道我们也可以获得凭据FromServicePrincipalFromUser 对于您的情况,我建议使用FromServicePrincipalMicrosoft.Azure.Management.Fluent来操作Azure资源。 我也为此做了一个演示。

注意 :如何注册Azure AD应用程序和分配角色,请参考此文档

var clientId = "clientId";
var secretKey = "secretKey";
var tenantId = "tenantId";
var subscriptionId = "subscriptionId";
var credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(clientId, secretKey, tenantId,AzureEnvironment.AzureGlobalCloud);
ComputeManagementClient client = new ComputeManagementClient(credentials) {SubscriptionId = subscriptionId };
var result = client.VirtualMachines.ListAllAsync().Result;

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM