Introdução às ferramentas de desenvolvimento de armazenamento do Azure Stack Hub
O Microsoft Azure Stack Hub fornece um conjunto de serviços de armazenamento que inclui armazenamento de blobs, tabelas e filas.
Use este artigo como um guia para começar a usar as ferramentas de desenvolvimento de armazenamento do Azure Stack Hub. Você pode encontrar informações mais detalhadas e código de exemplo nos tutoriais de armazenamento do Azure correspondentes.
Observação
Há diferenças entre o armazenamento do Azure Stack Hub e o armazenamento do Azure, incluindo requisitos específicos para cada plataforma. Por exemplo, há bibliotecas de cliente específicas e requisitos de sufixo de ponto de extremidade para o Azure Stack Hub. Para obter mais informações, consulte Armazenamento do Azure Stack Hub: diferenças e considerações.
Bibliotecas de clientes do Azure
Para as bibliotecas de cliente de armazenamento, lembre-se da versão compatível com a API REST. Você também deve especificar o ponto de extremidade do Azure Stack Hub em seu código.
Atualização 2301 e mais recente
Observação
Há uma vulnerabilidade de alta gravidade na versão antiga do .NET e da biblioteca de clientes Java, devido às dependências de uma versão vulnerável do pacote Jackson. É altamente recomendável usar a versão mais recente com suporte do .NET e da biblioteca de clientes Java para evitar problemas de segurança.
Instalar o cliente PHP por meio do Composer - atual
Para instalar via Composer: (tome o blob como exemplo).
Crie um arquivo chamado composer.json na raiz do projeto com o seguinte código:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
Baixe composer.phar para a raiz do projeto.
Execute:
php composer.phar install
.
Especificar a versão da API
Para usar a nova biblioteca de cliente .NET (Comum: v12.9.0 / Blob: v12.10.0 / Fila: v12.8.0) e a biblioteca de cliente Java (Comum: v12.12.0 / Blob: v12.13.0 / Fila: v12.10.0), você deve especificar explicitamente o serviceVersion em cada classe de cliente (incluindo BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient e QueueClient), porque a versão padrão na classe de cliente não tem suporte no Azure Stack Hub no momento.
Exemplos
.NET
BlobClientOptions options = new BlobClientOptions(BlobClientOptions.ServiceVersion.V2019_07_07);
BlobServiceClient client = new BlobServiceClient("<connection_string>", options);
Java
BlobServiceVersion version = BlobServiceVersion.V2019_07_07;
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder()
.endpoint("<your_endpoint>")
.sasToken("<your_SAS_token>")
.serviceVersion(version)
.buildClient();
Atualização de 2008 e mais recente
Instalar o cliente PHP por meio do Composer - atual
Para instalar via Composer: (tome o blob como exemplo).
Crie um arquivo chamado composer.json na raiz do projeto com o seguinte código:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
Baixe composer.phar para a raiz do projeto.
Execute:
php composer.phar install
.
Especificar a versão da API
Para usar a nova biblioteca de cliente .NET (Comum: v12.9.0 / Blob: v12.10.0 / Fila: v12.8.0) e a biblioteca de cliente Java (Comum: v12.12.0 / Blob: v12.13.0 / Fila: v12.10.0), você deve especificar explicitamente o serviceVersion em cada classe de cliente (incluindo BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient e QueueClient), porque a versão padrão na classe de cliente não tem suporte no Azure Stack Hub no momento.
Exemplos
.NET
BlobClientOptions options = new BlobClientOptions(BlobClientOptions.ServiceVersion.V2019_07_07);
BlobServiceClient client = new BlobServiceClient("<connection_string>", options);
Java
BlobServiceVersion version = BlobServiceVersion.V2019_07_07;
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder()
.endpoint("<your_endpoint>")
.sasToken("<your_SAS_token>")
.serviceVersion(version)
.buildClient();
Atualização de 2005
Instalar o cliente PHP por meio do Composer - atual
Para instalar via Composer: (tome o blob como exemplo).
Crie um arquivo chamado composer.json na raiz do projeto com o seguinte código:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
Baixe composer.phar para a raiz do projeto.
Execute:
php composer.phar install
.
Declaração de ponto de extremidade
Um ponto de extremidade do Azure Stack Hub inclui duas partes: o nome de uma região e o domínio do Azure Stack Hub. No Azure Stack Development Kit, o ponto de extremidade padrão é local.azurestack.external. Entre em contato com o administrador da nuvem se não tiver certeza sobre o endpoint.
Exemplos
.NET
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado no arquivo app.config:
<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;
EndpointSuffix=local.azurestack.external;" />
Java
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na configuração da cadeia de conexão:
public static final String storageConnectionString =
"DefaultEndpointsProtocol=http;" +
"AccountName=your_storage_account;" +
"AccountKey=your_storage_account_key;" +
"EndpointSuffix=local.azurestack.external";
Node.js
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na instância de declaração:
var blobSvc = azure.createBlobService('myaccount', 'mykey',
'myaccount.blob.local.azurestack.external');
C++
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na configuração da cadeia de conexão:
const utility::string_t storage_connection_string(U("DefaultEndpointsProtocol=https;
AccountName=your_storage_account;
AccountKey=your_storage_account_key;
EndpointSuffix=local.azurestack.external"));
PHP
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na configuração da cadeia de conexão:
$connectionString = 'BlobEndpoint=https://<storage account name>.blob.local.azurestack.external/;
QueueEndpoint=https:// <storage account name>.queue.local.azurestack.external/;
TableEndpoint=https:// <storage account name>.table.local.azurestack.external/;
AccountName=<storage account name>;AccountKey=<storage account key>'
Python
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na instância de declaração:
block_blob_service = BlockBlobService(account_name='myaccount',
account_key='mykey',
endpoint_suffix='local.azurestack.external')
Ruby
Para o Azure Stack Hub, o sufixo do ponto de extremidade é especificado na configuração da cadeia de conexão:
set
AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;
AccountName=myaccount;
AccountKey=mykey;
EndpointSuffix=local.azurestack.external
Armazenamento de Blobs
Os seguintes tutoriais de armazenamento de Blobs do Azure são aplicáveis ao Azure Stack Hub. Observe o requisito de sufixo de ponto de extremidade específico para o Azure Stack Hub descrito na seção Exemplos anterior.
- Introdução ao armazenamento de Blobs do Azure usando o .NET
- Como usar o Armazenamento de Blob do Java
- Como usar o armazenamento de Blob do Node.js
- Como usar o armazenamento de Blob por meio do C++
- Como usar o Armazenamento de Blob do PHP
- Como usar o Armazenamento de Blobs do Azure do Python
- Como usar o Armazenamento de blob no Ruby
Armazenamento de filas
Os seguintes tutoriais de armazenamento de filas do Azure são aplicáveis ao Azure Stack Hub. Observe o requisito de sufixo de ponto de extremidade específico para o Azure Stack Hub descrito na seção Exemplos anterior.
- Introdução ao armazenamento de Fila do Azure usando o .NET
- Como usar o Armazenamento de Fila no Java
- Como usar o Armazenamento de Filas do Node.js
- Como usar o armazenamento de Fila por meio do C++
- Como usar o Armazenamento de Fila do PHP
- Como usar o Armazenamento de fila do Python
- Como usar o Armazenamento de fila do Ruby
Armazenamento de tabela
Os seguintes tutoriais de armazenamento de Tabelas do Azure são aplicáveis ao Azure Stack Hub. Observe o requisito de sufixo de ponto de extremidade específico para o Azure Stack Hub descrito na seção Exemplos anterior.
- Introdução ao armazenamento de Tabelas do Azure usando o .NET
- Como usar o Armazenamento de Tabela do Java
- Como usar o armazenamento de Tabela do Azure com Node.js
- Como usar o armazenamento de tabelas do C++
- Como usar o Armazenamento de Tabela do PHP
- Como usar o armazenamento de tabelas em Python
- Como usar o Armazenamento de Tabela do Ruby