gpt4 book ai didi

azure - 使用用户凭据从 Windows 桌面应用程序调用 azure 资源管理器存储 API

转载 作者:行者123 更新时间:2023-12-03 05:44:58 28 4
gpt4 key购买 nike

我想从 azure 资源管理器调用此 API 来获取存储 key : https://learn.microsoft.com/en-us/rest/api/storagerp/storageaccounts/listkeys

我想对这次调用使用用户身份验证,也可能使用 .net sdk。是否有任何 .net sdk(Nuget 包)我可以包含在我的 c# 项目中来调用此 API?我看到许多使用 .net sdk 的解决方案,但它们使用 AAD 应用程序 key ,但我无法在应用程序中使用 key ,因为它是桌面应用程序。我认为应该有一种方法可以通过用户身份验证和.net sdk 来调用这些 API。

最佳答案

.NET 库的 Microsoft.Azure.Services.AppAuthentication 可能会满足您的要求。它使用开发人员的凭据在本地开发期间进行身份验证。当解决方案稍后部署到 Azure 时,该库会自动切换到应用程序凭据。

Microsoft.Azure.Services.AppAuthentication 库支持使用 Microsoft Visual Studio、Azure CLI 或 Azure AD 集成身份验证进行本地开发。

示例:

using Microsoft.Azure.Management.Storage;
using Microsoft.Azure.Services.AppAuthentication;
using Microsoft.Rest;

namespace ConsoleApp6
{
class Program
{
static void Main(string[] args)
{
AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();
string accessToken = azureServiceTokenProvider.GetAccessTokenAsync("https://management.azure.com/").Result;
var Credentials = new TokenCredentials(accessToken);
var storageManagementClient = new StorageManagementClient(Credentials);
storageManagementClient.SubscriptionId = "subscription id";
var storageAccountKey = storageManagementClient.StorageAccounts.ListKeysAsync("resource grouop name", "storage account name");
string storage_Account_Key = storageAccountKey.Result.Keys[0].Value;
System.Console.WriteLine(storage_Account_Key);
}
}
}

enter image description here

有关身份验证的更多详细信息,您可以查看此 link .

关于azure - 使用用户凭据从 Windows 桌面应用程序调用 azure 资源管理器存储 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55272799/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com