Compartir a través de


Introducción a las herramientas de desarrollo de Azure Stack Hub Storage

Microsoft Azure Stack Hub proporciona un conjunto de servicios de almacenamiento que incluye almacenamiento de blobs, tablas y colas.

Utilice este artículo como guía de introducción a las herramientas de desarrollo de Azure Stack Hub Storage. Puede encontrar información más detallada y código de ejemplo en los tutoriales correspondientes de Azure Storage.

Nota:

Hay diferencias entre Azure Stack Hub Storage y el almacenamiento de Azure, incluidos los requisitos específicos de cada plataforma. Por ejemplo, hay bibliotecas cliente y requisitos de sufijos de puntos de conexión que son específicos de Azure Stack Hub. Para más información, consulte Azure Stack Hub Storage: diferencias y consideraciones.

Bibliotecas cliente de Azure

En lo que respecta a las bibliotecas de cliente de almacenamiento, debe conocer cuál es la versión compatible con la API REST. También debe especificar el punto de conexión de Azure Stack Hub en el código.

Actualización 2301 y versiones más recientes

Biblioteca cliente Versión compatible de Azure Stack Hub Vínculo Especificación de punto de conexión
.NET Comunes: 12.9.0
Blob: 12.10.0
Queue: 12.8.0
Paquete NuGet:
Común: https://www.nuget.org/packages/Azure.Storage.common/12.9.0
Blob: https://www.nuget.org/packages/Azure.Storage.Blobs/12.10.0
Queue: https://www.nuget.org/packages/Azure.Storage.queues/12.8.0

Versión de GitHub:
Común: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.9.0/sdk/storage/Azure.Storage.Common
Blob: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.10.0/sdk/storage/Azure.Storage.Blobs
Queue: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.8.0/sdk/storage/Azure.Storage.Queues
archivo app.config
Java Comunes: 12.12.0
Blob: 12.14.3
Cola: 12.11.3
Paquete Maven:
Común: https://mvnrepository.com/artifact/com.azure/azure-storage-common/12.12.0
Blob: https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.14.3
Queue: https://mvnrepository.com/artifact/com.azure/azure-storage-queue/12.11.3

Versión de GitHub:
Común: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-common_12.12.0/sdk/storage/azure-storage-common
Blob: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-blob_12.14.3/sdk/storage/azure-storage-blob
Queue: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-queue_12.11.3/sdk/storage/azure-storage-queue
Configuración de la cadena de conexión
Node.js 2.8.3 Vínculo NPM:
https://www.npmjs.com/package/azure-storage
(Ejecutar: npm install azure-storage@2.8.3)

Versión de GitHub:
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Declaración de instancia de servicio
C++ Blob: 12.2.0
Cola: 12.0.0
Versión de GitHub:
Blob: https://github.com/Azure/azure-sdk-for-cpp/tree/azure-storage-blobs_12.2.0
Queue: https://github.com/Azure/azure-sdk-for-cpp/tree/azure-storage-queues_12.0.0
Configuración de la cadena de conexión
PHP 1.2.0 Versión de GitHub:
Común: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Blob: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
Cola:
https://github.com/Azure/azure-storage-php/releases/tag/v1.1.1-queue
Table: https://github.com/Azure/azure-storage-php/releases/tag/v1.1.0-table

Instalación mediante Composer (para obtener más información, vea los siguientes detalles).
Configuración de la cadena de conexión
Python Blob: 12.9.0
Cola: 12.1.6
Versión de GitHub:
Blob:
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-blob_12.9.0/sdk/storage/azure-storage-blob
Cola:
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-queue_12.1.6/sdk/storage/azure-storage-queue
Declaración de instancia de servicio
Ruby 1.0.1 Paquete de RubyGems:
Común:
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Blob: https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
Queue: https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table: https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Versión de GitHub:
Común: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Blob: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
Queue: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-queue
Table: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-table
Configuración de la cadena de conexión

Nota:

Hay una vulnerabilidad de gravedad alta en la versión anterior de la biblioteca cliente de .NET y Java, debido a las dependencias de una versión vulnerable del paquete de Jackson. Se recomienda encarecidamente usar la versión compatible más reciente de la biblioteca cliente de .NET y Java para evitar problemas de seguridad.

Instalación del cliente PHP a través de compositor: actual

Para instalar a través de Composer: (usaremos el blob como ejemplo).

  1. Cree un archivo llamado composer.json en la raíz del proyecto con el código siguiente:

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Descargue composer.phar en la raíz del proyecto.

  3. Ejecute php composer.phar install.

Especificación de la versión de la API

Para usar la nueva biblioteca cliente de .NET (Común: v12.9.0 / Blob: v12.10.0 / Queue: v12.8.0) y la biblioteca cliente de Java (Común: v12.12.0 / Blob: v12.13.0 / Queue: v12.10.0), debe especificar explícitamente el valor de serviceVersion en cada clase del cliente (incluido en BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient y QueueClient), ya que Azure Stack Hub no admite la versión predeterminada de la clase del cliente.

Ejemplos

.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();

Actualización de 2008 y versiones más recientes

Biblioteca cliente Versión compatible de Azure Stack Hub Vínculo Especificación de punto de conexión
.NET Comunes: 12.9.0
Blob: 12.10.0
Queue: 12.8.0
Paquete NuGet:
Común: https://www.nuget.org/packages/Azure.Storage.common/12.9.0
Blob: https://www.nuget.org/packages/Azure.Storage.Blobs/12.10.0
Queue: https://www.nuget.org/packages/Azure.Storage.queues/12.8.0

Versión de GitHub:
Común: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.9.0/sdk/storage/Azure.Storage.Common
Blob: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.10.0/sdk/storage/Azure.Storage.Blobs
Queue: https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.8.0/sdk/storage/Azure.Storage.Queues
archivo app.config
Java Comunes: 12.12.0
Blob: 12.13.0
Queue: 12.10.0
Paquete Maven:
Común: https://mvnrepository.com/artifact/com.azure/azure-storage-common/12.12.0
Blob: https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.13.0
Queue: https://mvnrepository.com/artifact/com.azure/azure-storage-queue/12.10.0

Versión de GitHub:
Común: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-common_12.12.0/sdk/storage/azure-storage-common
Blob: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-blob_12.13.0/sdk/storage/azure-storage-blob
Queue: https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-queue_12.10.0/sdk/storage/azure-storage-queue
Configuración de la cadena de conexión
Node.js 2.8.3 Vínculo NPM:
https://www.npmjs.com/package/azure-storage
(Ejecutar: npm install azure-storage@2.8.3)

Versión de GitHub:
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Declaración de instancia de servicio
C++ 7.2.0 Versión de GitHub:
https://github.com/Azure/azure-storage-cpp/releases/tag/v7.2.0
Configuración de la cadena de conexión
PHP 1.2.0 Versión de GitHub:
Común: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Blob: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
Cola:
https://github.com/Azure/azure-storage-php/releases/tag/v1.1.1-queue
Table: https://github.com/Azure/azure-storage-php/releases/tag/v1.1.0-table

Instalación mediante Composer (para obtener más información, vea los siguientes detalles).
Configuración de la cadena de conexión
Python Blob: 12.3.1
Cola: 12.1.6
Versión de GitHub:
Blob:
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-blob_12.3.1/sdk/storage/azure-storage-blob
Cola:
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-queue_12.1.6/sdk/storage/azure-storage-queue
Declaración de instancia de servicio
Ruby 1.0.1 Paquete de RubyGems:
Común:
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Blob: https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
Queue: https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table: https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Versión de GitHub:
Común: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Blob: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
Queue: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-queue
Table: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-table
Configuración de la cadena de conexión

Instalación del cliente PHP a través de compositor: actual

Para instalar a través de Composer: (usaremos el blob como ejemplo).

  1. Cree un archivo llamado composer.json en la raíz del proyecto con el código siguiente:

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Descargue composer.phar en la raíz del proyecto.

  3. Ejecute php composer.phar install.

Especificación de la versión de la API

Para usar la nueva biblioteca cliente de .NET (Común: v12.9.0 / Blob: v12.10.0 / Queue: v12.8.0) y la biblioteca cliente de Java (Común: v12.12.0 / Blob: v12.13.0 / Queue: v12.10.0), debe especificar explícitamente el valor de serviceVersion en cada clase del cliente (incluido en BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient y QueueClient), ya que Azure Stack Hub no admite la versión predeterminada de la clase del cliente.

Ejemplos

.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();

Actualización 2005

Biblioteca cliente Versión compatible de Azure Stack Hub Vínculo Especificación de punto de conexión
.NET 11.0.0 Paquete NuGet:
Común: https://www.nuget.org/packages/Microsoft.Azure.Storage.Common/11.0.0
Blob: https://www.nuget.org/packages/Microsoft.Azure.Storage.Blob/11.0.0
Cola:
https://www.nuget.org/packages/Microsoft.Azure.Storage.Queue/11.0.0

Versión de GitHub:
https://github.com/Azure/azure-storage-net/releases/tag/v11.0.0
archivo app.config
Java 12.0.0-preview.3 Paquete Maven:
https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.0.0-preview.3

Versión de GitHub:
https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/storage
Configuración de la cadena de conexión
Node.js 2.8.3 Vínculo NPM:
https://www.npmjs.com/package/azure-storage
(Ejecutar: npm install azure-storage@2.8.3)

Versión de GitHub:
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Declaración de instancia de servicio
C++ 7.1.0 Versión de GitHub:
https://github.com/Azure/azure-storage-cpp/releases/tag/v7.1.0
Configuración de la cadena de conexión
PHP 1.2.0 Versión de GitHub:
Común: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Blob: https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
Cola:
https://github.com/Azure/azure-storage-php/releases/tag/v1.1.1-queue
Table: https://github.com/Azure/azure-storage-php/releases/tag/v1.1.0-table

Instalación mediante Composer (para obtener más información, vea los siguientes detalles).
Configuración de la cadena de conexión
Python 2.1.0 Versión de GitHub:
Común:
https://github.com/Azure/azure-storage-python/releases/tag/v2.1.0-common
Blob:
https://github.com/Azure/azure-storage-python/releases/tag/v2.1.0-blob
Cola:
https://github.com/Azure/azure-storage-python/releases/tag/v2.1.0-queue
Declaración de instancia de servicio
Ruby 1.0.1 Paquete de RubyGems:
Común:
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Blob: https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
Queue: https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table: https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Versión de GitHub:
Común: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Blob: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
Queue: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-queue
Table: https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-table
Configuración de la cadena de conexión

Instalación del cliente PHP a través de compositor: actual

Para instalar a través de Composer: (usaremos el blob como ejemplo).

  1. Cree un archivo llamado composer.json en la raíz del proyecto con el código siguiente:

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Descargue composer.phar en la raíz del proyecto.

  3. Ejecute php composer.phar install.

Declaración de punto de conexión

Un punto de conexión de Azure Stack Hub incluye dos partes: el nombre de una región y el dominio de Azure Stack Hub. En el Kit de desarrollo de Azure Stack, el punto de conexión predeterminado es local.azurestack.external. Si no está seguro de cuál es su punto de conexión, póngase en contacto con el administrador de la nube.

Ejemplos

.NET

Para Azure Stack Hub, el sufijo del punto de conexión se especifica en el archivo app.config:

<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;
EndpointSuffix=local.azurestack.external;" />

Java

Para Azure Stack Hub, el sufijo del punto de conexión se especifica en la configuración de la cadena de conexión:

public static final String storageConnectionString =
    "DefaultEndpointsProtocol=http;" +
    "AccountName=your_storage_account;" +
    "AccountKey=your_storage_account_key;" +
    "EndpointSuffix=local.azurestack.external";

Node.js

Para Azure Stack Hub, el sufijo del punto de conexión se especifica en la instancia de la declaración:

var blobSvc = azure.createBlobService('myaccount', 'mykey',
'myaccount.blob.local.azurestack.external');

C++

Para Azure Stack Hub, el sufijo del punto de conexión se especifica en la configuración de la cadena de conexión:

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 Azure Stack Hub, el sufijo del punto de conexión se especifica en la configuración de la cadena de conexión:

$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 Azure Stack Hub, el sufijo del punto de conexión se especifica en la instancia de la declaración:

block_blob_service = BlockBlobService(account_name='myaccount',
account_key='mykey',
endpoint_suffix='local.azurestack.external')

Ruby

Para Azure Stack Hub, el sufijo del punto de conexión se especifica en la configuración de la cadena de conexión:

set
AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;
AccountName=myaccount;
AccountKey=mykey;
EndpointSuffix=local.azurestack.external

Blob Storage

Los siguientes tutoriales de Azure Blob Storage son aplicables a Azure Stack Hub. Tenga en cuenta los requisitos específicos de los sufijos de punto de conexión de Azure Stack Hub que se describen en la sección de ejemplos anterior.

Queue Storage

Los siguientes tutoriales de Azure Queue Storage son aplicables a Azure Stack Hub. Tenga en cuenta los requisitos específicos de los sufijos de punto de conexión de Azure Stack Hub que se describen en la sección de ejemplos anterior.

Almacenamiento de tablas

Los siguientes tutoriales de Azure Table Storage son aplicables a Azure Stack Hub. Tenga en cuenta los requisitos específicos de los sufijos de punto de conexión de Azure Stack Hub que se describen en la sección de ejemplos anterior.

Pasos siguientes