首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从资源ID获取blob属性

如何从资源ID获取blob属性
EN

Stack Overflow用户
提问于 2021-09-21 06:58:11
回答 1查看 114关注 0票数 1

我想知道给定ARM ID或blob的资源ID,如何获取blob属性,如primaryEndpoints

示例资源ID:

代码语言:javascript
复制
/subscriptions/abffff89-2c76-424a-af4c-34b2512a3cb4/resourceGroups/foo-bar-test-rg/providers/Microsoft.Storage/storageAccounts/foobar

有一个get blob properties REST API,我想知道在C# azure-sdk中有没有对应的东西?

https://docs.microsoft.com/en-us/rest/api/storagerp/storage-accounts/get-properties

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-21 07:43:55

为此,您可以使用Azure SDK。您需要安装的包是Azure.ResourceManager.StorageAzure.Identity

下面是根据资源id获取存储帐户信息的代码:

代码语言:javascript
复制
using System;
using System.Threading.Tasks;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Storage;

namespace SO69264616
{
    class Program
    {
        static async Task Main(string[] args)
        {
            var resourceId = "/subscriptions/abffff89-2c76-424a-af4c-34b2512a3cb4/resourceGroups/foo-bar-test-rg/providers/Microsoft.Storage/storageAccounts/foobar";
            var resourceElements = resourceId.Split("/", StringSplitOptions.RemoveEmptyEntries);
            var subscriptionId = resourceElements[1];
            var resourceGroupName = resourceElements[3];
            var storageAccountName = resourceElements[resourceElements.Length - 1];
            var credentials = new AzureCliCredential();
            var armClient = new ArmClient(credentials);
            Subscription subscription = armClient.GetSubscription($"/subscriptions/{subscriptionId}");
            ResourceGroup resourceGroup = await subscription.GetResourceGroups().GetAsync(resourceGroupName);
            StorageAccountContainer storageAccountContainer = resourceGroup.GetStorageAccounts();
            StorageAccount storageAccount = await storageAccountContainer.GetAsync(storageAccountName);
            Console.WriteLine(storageAccount.Data.PrimaryEndpoints.Blob);
            Console.WriteLine("Hello World!");
        }
    }
}

我之所以使用AzureCliCredential,是因为出于某种原因,DefaultAzureCredential对我不起作用。您应该先尝试使用DefaultAzureCredential

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69264616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档