Introdução ao Armazenamento de Blobs do Azure e Go
Este artigo mostra como se conectar ao Armazenamento de Blobs do Azure usando o módulo de cliente do Armazenamento de Blobs do Azure para Go. Uma vez conectado, seu código pode operar em contêineres, blobs e recursos do serviço de Armazenamento de Blobs.
Documentação | de referência da API Pacote de código-fonte | da biblioteca (pkg.go.dev)
Pré-requisitos
- Subscrição do Azure - crie uma gratuitamente
- Conta de armazenamento do Azure - criar uma conta de armazenamento
- Ir 1.18+
Configure o seu projeto
Esta seção orienta você na preparação de um projeto para trabalhar com o módulo de cliente de Armazenamento de Blob do Azure para Go.
A partir do seu GOPATH, instale o módulo azblob usando o seguinte comando:
go get github.com/Azure/azure-sdk-for-go/sdk/storage/azblob
Para autenticar com o Microsoft Entra ID (recomendado), instale o azidentity
módulo usando o seguinte comando:
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Em seguida, abra o arquivo de código e adicione os caminhos de importação necessários. Neste exemplo, adicionamos o seguinte ao nosso arquivo .go :
import (
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
)
Informações do módulo do cliente Blob:
- azblob: contém os métodos que você pode usar para operar no serviço, contêineres e blobs.
Autorize o acesso e conecte-se ao Armazenamento de Blobs
Para conectar um aplicativo ao Armazenamento de Blob, crie um objeto cliente usando azblob. NewClient. 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.
Para saber mais sobre como criar e gerenciar objetos de cliente, incluindo práticas recomendadas, consulte Criar e gerenciar objetos de cliente que interagem com recursos de dados.
Você pode autorizar um objeto cliente usando um token de autorização do Microsoft Entra (recomendado), uma chave de acesso de conta ou uma assinatura de acesso compartilhado (SAS).
Para autorizar com o Microsoft Entra ID, você precisa usar uma entidade de segurança. Os artigos a seguir fornecem orientação sobre diferentes cenários de autenticação:
- Autenticação em ambientes de desenvolvimento
- Autenticação em aplicativos hospedados no Azure
- Autenticação com uma entidade de serviço
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 o objeto cliente usando azblob. NewClient.
func getServiceClientTokenCredential(accountURL string) *azblob.Client {
// Create a new service client with token credential
credential, err := azidentity.NewDefaultAzureCredential(nil)
handleError(err)
client, err := azblob.NewClient(accountURL, credential, nil)
handleError(err)
return client
}
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 o módulo de cliente de Armazenamento de Blob do Azure para Go:
Guia | Description |
---|---|
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. |
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 (blobs) | Gerencie propriedades e metadados do contêiner. |
Gerenciar propriedades e metadados (contêineres) | Gerencie propriedades e metadados do contêiner. |
Carregar blobs | Saiba como carregar blobs usando cadeias de caracteres, fluxos, caminhos de arquivo e outros métodos. |
Nota
Os exemplos de código neste guia destinam-se a ajudá-lo a começar a usar o Azure Blob Storage and Go. Você deve modificar o tratamento de erros e Context
os valores para atender às necessidades do seu aplicativo.