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 blob, tabela e fila.
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.
Nota
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 cliente do Azure
Para as bibliotecas de cliente de armazenamento, esteja ciente 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
Nota
Há uma vulnerabilidade de alta gravidade na versão antiga do .NET e da biblioteca de cliente Java, devido às dependências de uma versão vulnerável do pacote Jackson. É altamente recomendável usar a versão suportada mais recente da biblioteca de cliente .NET e Java para evitar problemas de segurança.
Instale o cliente PHP via 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.
Execução:
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 a 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 é suportada atualmente pelo Azure Stack Hub.
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
Instale o cliente PHP via 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.
Execução:
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 a 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 é suportada atualmente pelo Azure Stack Hub.
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
Instale o cliente PHP via 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.
Execução:
php composer.phar install
.
Declaração de ponto final
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 Kit de Desenvolvimento do Azure Stack, o ponto de extremidade padrão é local.azurestack.external. Entre em contato com o administrador da nuvem se não tiver certeza sobre seu endpoint.
Exemplos
.NET
Para o Azure Stack Hub, o sufixo de 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 de 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 de 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 de 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 de 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 de 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 de 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 Blob 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 através do .NET
- Como utilizar o Armazenamento de blobs do Java
- Como utilizar o Armazenamento de blobs do Node.js
- Como usar o armazenamento de Blob a partir de C++
- Como utilizar o Armazenamento de blobs do PHP
- Como usar o armazenamento de Blob do Azure a partir do Python
- Como utilizar o Armazenamento de blobs do Ruby
Armazenamento de filas
Os seguintes tutoriais de armazenamento de fila 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 filas do Azure através do .NET
- Como utilizar o Armazenamento de filas do Java
- Como utilizar o Armazenamento de filas do Node.js
- Como usar o armazenamento em fila do C++
- Como utilizar o Armazenamento de filas do PHP
- Como utilizar o Armazenamento de filas do Python
- Como utilizar o Armazenamento de filas do Ruby
Armazenamento de tabelas
Os seguintes tutoriais de armazenamento de Tabela 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 através do .NET
- Como utilizar o Armazenamento de tabelas do Java
- Como utilizar o Armazenamento de Tabelas do Azure a partir de Node.js
- Como usar o armazenamento de tabela do C++
- Como utilizar o Armazenamento de tabelas do PHP
- Como usar o armazenamento de tabelas em Python
- Como utilizar o Armazenamento de tabelas do Ruby