Partage via


Bien démarrer avec les outils de développement du stockage Azure Stack Hub

L’infrastructure Microsoft Azure Stack Hub fournit un ensemble de services de stockage incluant le stockage d’objets blob, de tables et de files d’attente.

Utilisez cet article comme un guide de démarrage concernant l’utilisation des outils de développement du stockage Azure Stack Hub. Des informations plus détaillées et des exemples de code sont disponibles dans les didacticiels correspondants du Stockage Azure.

Notes

Le stockage Azure Stack Hub et le stockage Azure présentent quelques différences, notamment certaines exigences propres à chaque plateforme. Par exemple, Azure Stack Hub a des bibliothèques clientes spécifiques, de même que des exigences en matière de suffixe de point de terminaison. Pour plus d’informations, consultez Stockage Azure Stack Hub : différences et considérations.

Bibliothèques clientes Azure

Par conséquent, pour les bibliothèques clientes de stockage, vous devez connaître la version qui est compatible avec l’API REST. Vous devez également préciser le point de terminaison Azure Stack Hub dans votre code.

Mise à jour 2301 et plus récente

Bibliothèque cliente Version prise en charge par Azure Stack Hub Lien Spécification du point de terminaison
.NET Commun : 12.9.0
Blob : 12.10.0
File d’attente : 12.8.0
Package NuGet :
Courant : https://www.nuget.org/packages/Azure.Storage.common/12.9.0
Objet blob : https://www.nuget.org/packages/Azure.Storage.Blobs/12.10.0
File d’attente : https://www.nuget.org/packages/Azure.Storage.queues/12.8.0

Version de GitHub :
Courant : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.9.0/sdk/storage/Azure.Storage.Common
Objet blob : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.10.0/sdk/storage/Azure.Storage.Blobs
File d’attente : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.8.0/sdk/storage/Azure.Storage.Queues
Fichier app.config
Java Commun : 12.12.0
Blob : 12.14.3
File d’attente : 12.11.3
Package Maven :
Courant : https://mvnrepository.com/artifact/com.azure/azure-storage-common/12.12.0
Objet blob : https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.14.3
File d’attente : https://mvnrepository.com/artifact/com.azure/azure-storage-queue/12.11.3

Version de GitHub :
Courant : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-common_12.12.0/sdk/storage/azure-storage-common
Objet blob : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-blob_12.14.3/sdk/storage/azure-storage-blob
File d’attente : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-queue_12.11.3/sdk/storage/azure-storage-queue
Configuration de la chaîne de connexion
Node.js 2.8.3 Lien NPM :
https://www.npmjs.com/package/azure-storage
(Exécuter : npm install azure-storage@2.8.3)

Version de GitHub :
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Déclaration d’instance de service
C++ Blob : 12.2.0
File d’attente : 12.0.0
Version de GitHub :
Objet blob : https://github.com/Azure/azure-sdk-for-cpp/tree/azure-storage-blobs_12.2.0
File d’attente : https://github.com/Azure/azure-sdk-for-cpp/tree/azure-storage-queues_12.0.0
Configuration de la chaîne de connexion
PHP 1.2.0 Version de GitHub :
Courant : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Objet blob : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
File d’attente :
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

Installer via Composer (pour en savoir plus, voir les détails ci-dessous.)
Configuration de la chaîne de connexion
Python Blob : 12.9.0
File d’attente : 12.1.6
Version de GitHub :
Blob :
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-blob_12.9.0/sdk/storage/azure-storage-blob
File d’attente :
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-queue_12.1.6/sdk/storage/azure-storage-queue
Déclaration d’instance de service
Ruby 1.0.1 Package RubyGems :
Courant :
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Objet blob : https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
File d’attente : https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table : https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Version de GitHub :
Courant : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Objet blob : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
File d’attente : 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
Configuration de la chaîne de connexion

Notes

Il existe une vulnérabilité de gravité élevée dans l’ancienne version de la bibliothèque cliente .NET et Java, en raison des dépendances vis-à-vis d’une version vulnérable du package Jackson. Il est fortement recommandé d’utiliser la dernière version prise en charge de la bibliothèque cliente .NET et Java pour éviter le problème de sécurité.

Installer le client PHP via Composer - actuel

Pour installer via Composer : (prenez l’objet blob en guise d’exemple).

  1. Créez un fichier nommé composer.json à la racine du projet avec le code suivant :

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Téléchargez composer.phar à la racine du projet.

  3. Exécutez : php composer.phar install.

Spécifier la version de l’API

Pour utiliser la nouvelle bibliothèque cliente .NET (Commun : v12.9.0 / Blob : v12.10.0 / File d’attente : v12.8.0) et la bibliothèque cliente Java (Commun : v12.12.0 / Blob : v12.13.0 / File d’attente : v12.10.0), vous devez spécifier explicitement serviceVersion dans chaque classe cliente (y compris BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient et QueueClient), car la version par défaut dans la classe cliente n’est actuellement pas prise en charge par Azure Stack Hub.

Exemples

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

Mises à jour 2008 et ultérieures

Bibliothèque cliente Version prise en charge par Azure Stack Hub Lien Spécification du point de terminaison
.NET Commun : 12.9.0
Blob : 12.10.0
File d’attente : 12.8.0
Package NuGet :
Courant : https://www.nuget.org/packages/Azure.Storage.common/12.9.0
Objet blob : https://www.nuget.org/packages/Azure.Storage.Blobs/12.10.0
File d’attente : https://www.nuget.org/packages/Azure.Storage.queues/12.8.0

Version de GitHub :
Courant : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.9.0/sdk/storage/Azure.Storage.Common
Objet blob : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.10.0/sdk/storage/Azure.Storage.Blobs
File d’attente : https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.8.0/sdk/storage/Azure.Storage.Queues
Fichier app.config
Java Commun : 12.12.0
Blob : 12.13.0
File d’attente : 12.10.0
Package Maven :
Courant : https://mvnrepository.com/artifact/com.azure/azure-storage-common/12.12.0
Objet blob : https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.13.0
File d’attente : https://mvnrepository.com/artifact/com.azure/azure-storage-queue/12.10.0

Version de GitHub :
Courant : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-common_12.12.0/sdk/storage/azure-storage-common
Objet blob : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-blob_12.13.0/sdk/storage/azure-storage-blob
File d’attente : https://github.com/Azure/azure-sdk-for-java/tree/azure-storage-queue_12.10.0/sdk/storage/azure-storage-queue
Configuration de la chaîne de connexion
Node.js 2.8.3 Lien NPM :
https://www.npmjs.com/package/azure-storage
(Exécuter : npm install azure-storage@2.8.3)

Version de GitHub :
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Déclaration d’instance de service
C++ 7.2.0 Version de GitHub :
https://github.com/Azure/azure-storage-cpp/releases/tag/v7.2.0
Configuration de la chaîne de connexion
PHP 1.2.0 Version de GitHub :
Courant : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Objet blob : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
File d’attente :
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

Installer via Composer (pour en savoir plus, voir les détails ci-dessous.)
Configuration de la chaîne de connexion
Python Blob : 12.3.1
File d’attente : 12.1.6
Version de GitHub :
Blob :
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-blob_12.3.1/sdk/storage/azure-storage-blob
File d’attente :
https://github.com/Azure/azure-sdk-for-python/tree/azure-storage-queue_12.1.6/sdk/storage/azure-storage-queue
Déclaration d’instance de service
Ruby 1.0.1 Package RubyGems :
Courant :
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Objet blob : https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
File d’attente : https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table : https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Version de GitHub :
Courant : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Objet blob : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
File d’attente : 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
Configuration de la chaîne de connexion

Installer le client PHP via Composer - actuel

Pour installer via Composer : (prenez l’objet blob en guise d’exemple).

  1. Créez un fichier nommé composer.json à la racine du projet avec le code suivant :

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Téléchargez composer.phar à la racine du projet.

  3. Exécutez : php composer.phar install.

Spécifier la version de l’API

Pour utiliser la nouvelle bibliothèque cliente .NET (Commun : v12.9.0 / Blob : v12.10.0 / File d’attente : v12.8.0) et la bibliothèque cliente Java (Commun : v12.12.0 / Blob : v12.13.0 / File d’attente : v12.10.0), vous devez spécifier explicitement serviceVersion dans chaque classe cliente (y compris BlobServiceClient, BlobContainerClient, BlobClient, QueueServiceClient et QueueClient), car la version par défaut dans la classe cliente n’est actuellement pas prise en charge par Azure Stack Hub.

Exemples

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

mise à jour 2005

Bibliothèque cliente Version prise en charge par Azure Stack Hub Lien Spécification du point de terminaison
.NET 11.0.0 Package NuGet :
Courant : https://www.nuget.org/packages/Microsoft.Azure.Storage.Common/11.0.0
Objet blob : https://www.nuget.org/packages/Microsoft.Azure.Storage.Blob/11.0.0
File d’attente :
https://www.nuget.org/packages/Microsoft.Azure.Storage.Queue/11.0.0

Version de GitHub :
https://github.com/Azure/azure-storage-net/releases/tag/v11.0.0
Fichier app.config
Java 12.0.0-préversion.3 Package Maven :
https://mvnrepository.com/artifact/com.azure/azure-storage-blob/12.0.0-preview.3

Version de GitHub :
https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/storage
Configuration de la chaîne de connexion
Node.js 2.8.3 Lien NPM :
https://www.npmjs.com/package/azure-storage
(Exécuter : npm install azure-storage@2.8.3)

Version de GitHub :
https://github.com/Azure/azure-storage-node/releases/tag/v2.8.3
Déclaration d’instance de service
C++ 7.1.0 Version de GitHub :
https://github.com/Azure/azure-storage-cpp/releases/tag/v7.1.0
Configuration de la chaîne de connexion
PHP 1.2.0 Version de GitHub :
Courant : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-common
Objet blob : https://github.com/Azure/azure-storage-php/releases/tag/v1.2.0-blob
File d’attente :
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

Installer via Composer (pour en savoir plus, voir les détails ci-dessous.)
Configuration de la chaîne de connexion
Python 2.1.0 Version de GitHub :
Courant :
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
File d’attente :
https://github.com/Azure/azure-storage-python/releases/tag/v2.1.0-queue
Déclaration d’instance de service
Ruby 1.0.1 Package RubyGems :
Courant :
https://rubygems.org/gems/azure-storage-common/versions/1.0.1
Objet blob : https://rubygems.org/gems/azure-storage-blob/versions/1.0.1
File d’attente : https://rubygems.org/gems/azure-storage-queue/versions/1.0.1
Table : https://rubygems.org/gems/azure-storage-table/versions/1.0.1

Version de GitHub :
Courant : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-common
Objet blob : https://github.com/Azure/azure-storage-ruby/releases/tag/v1.0.1-blob
File d’attente : 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
Configuration de la chaîne de connexion

Installer le client PHP via Composer - actuel

Pour installer via Composer : (prenez l’objet blob en guise d’exemple).

  1. Créez un fichier nommé composer.json à la racine du projet avec le code suivant :

    {
      "require": {
      "Microsoft/azure-storage-blob":"1.2.0"
      }
    }
    
  2. Téléchargez composer.phar à la racine du projet.

  3. Exécutez : php composer.phar install.

Déclaration de point de terminaison

Un point de terminaison Azure Stack Hub comprend deux parties : le nom d’une région et le domaine Azure Stack Hub. Dans le Kit de développement Azure Stack, le point de terminaison par défaut est local.azurestack.external. Contactez votre administrateur cloud si vous ne connaissez pas votre point de terminaison.

Exemples

.NET

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans le fichier app.config :

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

Java

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans la configuration de la chaîne de connexion :

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

Node.js

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans l’instance de déclaration :

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

C++

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans la configuration de la chaîne de connexion :

const utility::string_t storage_connection_string(U("DefaultEndpointsProtocol=https;
AccountName=your_storage_account;
AccountKey=your_storage_account_key;
EndpointSuffix=local.azurestack.external"));

PHP

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans la configuration de la chaîne de connexion :

$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

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans l’instance de déclaration :

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

Ruby

Pour Azure Stack Hub, le suffixe de point de terminaison est spécifié dans la configuration de la chaîne de connexion :

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

Stockage d'objets blob

Les didacticiels du stockage Blob Azure suivants sont applicables à Azure Stack Hub. Notez l’exigence particulière d’un suffixe de point de terminaison pour Azure Stack Hub, décrit dans la précédente section Exemples.

Stockage de files d'attente

Les didacticiels du stockage File d’attente Azure suivants sont applicables à Azure Stack Hub. Notez l’exigence particulière d’un suffixe de point de terminaison pour Azure Stack Hub, décrit dans la précédente section Exemples.

Stockage de tables

Les didacticiels du stockage Table Azure suivants sont applicables à Azure Stack Hub. Notez l’exigence particulière d’un suffixe de point de terminaison pour Azure Stack Hub, décrit dans la précédente section Exemples.

Étapes suivantes