Partilhar via


Introdução ao Armazenamento de Blobs do Azure e ao .NET

Este artigo mostra como se conectar ao Armazenamento de Blobs do Azure usando a biblioteca de cliente do Armazenamento de Blobs do Azure para .NET. Uma vez conectado, seu código pode operar em contêineres, blobs e recursos do serviço de Armazenamento de Blobs.

Referência | da API Código-fonte | da biblioteca Pacote (NuGet) | Amostras | Dar feedback

Pré-requisitos

Configure o seu projeto

Esta seção orienta você na preparação de um projeto para trabalhar com a biblioteca de cliente do Armazenamento de Blobs do Azure para .NET.

No diretório do projeto, instale pacotes para o Armazenamento de Blobs do Azure e as bibliotecas de cliente do Azure Identity usando o dotnet add package comando. O pacote Azure.Identity é necessário para conexões sem senha com os serviços do Azure.

dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity

Adicione estas using diretivas à parte superior do arquivo de código:

using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;

Informações da biblioteca do cliente Blob:

Autorize o acesso e conecte-se ao Armazenamento de Blobs

Para conectar um aplicativo ao Armazenamento de Blob, crie uma instância da classe BlobServiceClient . Este objeto é o seu ponto de partida para interagir com recursos de dados no nível da conta de armazenamento. Você pode usá-lo para operar na conta de armazenamento e seus contêineres. Você também pode usar o cliente de serviço para criar clientes de contêiner ou clientes de blob, dependendo do recurso com o qual você precisa trabalhar.

Para saber mais sobre como criar e gerenciar objetos de cliente, consulte Criar e gerenciar objetos de cliente que interagem com recursos de dados.

Você pode autorizar um BlobServiceClient objeto usando um token de autorização do Microsoft Entra, uma chave de acesso de conta ou uma assinatura de acesso compartilhado (SAS). Para uma segurança ideal, a Microsoft recomenda o uso do Microsoft Entra ID com identidades gerenciadas para autorizar solicitações contra dados de blob. Para obter mais informações, consulte Autorizar acesso a blobs usando a ID do Microsoft Entra.

Para autorizar com o Microsoft Entra ID, você precisará usar uma entidade de segurança. O tipo de entidade de segurança de que você precisa depende de onde seu aplicativo é executado. Use esta tabela como um guia.

Onde o aplicativo é executado Principal de segurança Orientação
Máquina local (desenvolvimento e testes) Service principal (Principal de serviço) Para saber como registrar o aplicativo, configurar um grupo do Microsoft Entra, atribuir funções e configurar variáveis de ambiente, consulte Autorizar acesso usando entidades de serviço de desenvolvedor
Máquina local (desenvolvimento e testes) Identidade do utilizador Para saber como configurar um grupo do Microsoft Entra, atribuir funções e entrar no Azure, consulte Autorizar acesso usando credenciais de desenvolvedor
Hospedado no Azure Identidade gerida Para saber como habilitar a identidade gerenciada e atribuir funções, consulte Autorizar acesso de aplicativos hospedados no Azure usando uma identidade gerenciada
Hospedado fora do Azure (por exemplo, aplicativos locais) Service principal (Principal de serviço) Para saber como registrar o aplicativo, atribuir funções e configurar variáveis de ambiente, consulte Autorizar acesso de aplicativos locais usando uma entidade de serviço de aplicativo

Autorizar o acesso usando DefaultAzureCredential

Uma maneira fácil e segura de autorizar o acesso e se conectar ao Armazenamento de Blob é obter um token OAuth criando uma instância DefaultAzureCredential . Em seguida, você pode usar essa credencial para criar um objeto BlobServiceClient .

O exemplo a seguir cria um BlobServiceClient objeto autorizado usando DefaultAzureCredential:

public BlobServiceClient GetBlobServiceClient(string accountName)
{
    BlobServiceClient client = new(
        new Uri($"https://{accountName}.blob.core.windows.net"),
        new DefaultAzureCredential());

    return client;
}

Se você souber exatamente qual tipo de credencial usará para autenticar usuários, poderá obter um token OAuth usando outras classes na biblioteca de cliente do Azure Identity para .NET. Essas classes derivam da classe TokenCredential .

Para saber mais sobre cada um desses mecanismos de autorização, consulte Autorizar acesso a dados no Armazenamento do Azure.

Compilar a sua aplicação

À medida que você cria aplicativos para trabalhar com recursos de dados no Armazenamento de Blobs do Azure, seu código interage principalmente com três tipos de recursos: contas de armazenamento, contêineres e blobs. Para saber mais sobre esses tipos de recursos, como eles se relacionam entre si e como os aplicativos interagem com os recursos, consulte Compreender como os aplicativos interagem com os recursos de dados do Armazenamento de Blobs.

Os guias a seguir mostram como acessar dados e executar ações específicas usando a biblioteca de cliente do Armazenamento do Azure para .NET:

Guia Description
Acrescentar dados a blobs Saiba como criar um blob de acréscimo e, em seguida, anexar dados a esse blob.
Configurar uma política de repetição Implemente políticas de repetição para operações de cliente.
Copiar blobs Copie um blob de um local para outro.
Criar um contêiner Crie contêineres.
Crie uma SAS de delegação de utilizador Crie uma SAS de delegação de usuário para um contêiner ou blob.
Criar e gerenciar concessões de blob Estabeleça e gerencie um bloqueio em um blob.
Criar e gerenciar concessões de contêiner Estabeleça e gerencie um bloqueio em um contêiner.
Excluir e restaurar blobs Exclua blobs e, se a exclusão suave estiver habilitada, restaure os blobs excluídos.
Excluir e restaurar contêineres Exclua contêineres e, se a exclusão suave estiver habilitada, restaure os contêineres excluídos.
Baixar blobs Baixe blobs usando cadeias de caracteres, fluxos e caminhos de arquivo.
Localizar blobs usando tags Defina e recupere tags e use tags para localizar blobs.
Listar blobs Liste blobs de maneiras diferentes.
Listar contêineres Liste contêineres em uma conta e as várias opções disponíveis para personalizar uma listagem.
Gerenciar propriedades e metadados Obtenha e defina propriedades e metadados para blobs.
Gerenciar propriedades e metadados Obtenha e defina propriedades e metadados para contêineres.
Ajuste de desempenho para transferências de dados Otimize o desempenho para operações de transferência de dados.
Definir ou alterar a camada de acesso de um blob Defina ou altere a camada de acesso para um blob de bloco.
Carregar blobs Saiba como carregar blobs usando cadeias de caracteres, fluxos, caminhos de arquivo e outros métodos.