Partager via


Créer une SAP de compte

Important

Pour une sécurité optimale, Microsoft recommande d’utiliser l’ID Microsoft Entra avec des identités managées pour autoriser les demandes sur les données d’objet blob, de file d’attente et de table, dans la mesure du possible. L’autorisation avec l’ID Microsoft Entra et les identités managées offre une sécurité et une facilité d’utilisation supérieures sur l’autorisation de clé partagée. Pour plus d’informations, consultez Autoriser avec microsoft Entra ID. Pour en savoir plus sur les identités managées, consultez Qu’est-ce que les identités managées pour les ressources Azure.

Pour les ressources hébergées en dehors d’Azure, telles que les applications locales, vous pouvez utiliser des identités managées via Azure Arc. Par exemple, les applications s’exécutant sur des serveurs avec Azure Arc peuvent utiliser des identités managées pour se connecter aux services Azure. Pour plus d’informations, consultez s’authentifier sur des ressources Azure avec des serveurs avec Azure Arc.

Pour les scénarios où les signatures d’accès partagé (SAP) sont utilisées, Microsoft recommande d’utiliser une SAP de délégation d’utilisateur. Une SAP de délégation d’utilisateur est sécurisée avec les informations d’identification Microsoft Entra au lieu de la clé de compte. Pour en savoir plus sur les signatures d’accès partagé, consultez Créer une SAP de délégation d’utilisateur.

Depuis la version 2015-04-05, Stockage Azure prend en charge la création d’un nouveau type de signature d’accès partagé (SAP) au niveau du compte de stockage. En créant une SAP de compte, vous pouvez :

  • Déléguer l’accès aux opérations de niveau de service qui ne sont pas actuellement disponibles avec une SAP spécifique au service, telles que les opérations de Get/Set Service Properties et de Get Service Stats.

  • Déléguer l’accès à plusieurs services dans un compte de stockage à la fois. Par exemple, vous pouvez déléguer l’accès aux ressources dans Stockage Blob Azure et Azure Files à l’aide d’une SAP de compte.

  • Déléguer l’accès aux opérations d’écriture et de suppression pour les conteneurs, les files d’attente, les tables et les partages de fichiers, qui ne sont pas disponibles avec une SAP spécifique à un objet.

  • Spécifiez une adresse IP ou une plage d’adresses IP à partir de laquelle accepter les demandes.

  • Spécifiez le protocole HTTP à partir duquel accepter les demandes (HTTPS ou HTTP/HTTPS).

Les stratégies d’accès stockées ne sont actuellement pas prises en charge pour une SAP de compte.

Attention

Les signatures d’accès partagé sont des clés qui accordent des autorisations aux ressources de stockage, et vous devez les protéger comme vous le feriez pour protéger une clé de compte. Il est important de protéger une SAP contre une utilisation malveillante ou involontaire. Utilisez la discrétion pour distribuer une SAP et disposer d’un plan en place pour révoquer une SAP compromise. Les opérations qui utilisent des signatures d’accès partagé doivent être effectuées uniquement sur une connexion HTTPS, et les URI SAP doivent être distribués uniquement sur une connexion sécurisée, telle que HTTPS.

Autoriser une SAP de compte

Vous sécurisez une SAP de compte à l’aide d’une clé de compte de stockage. Lorsque vous créez une SAP de compte, votre application cliente doit posséder la clé de compte.

Pour utiliser les informations d’identification Microsoft Entra pour sécuriser une SAP pour un conteneur ou un objet blob, créer une SAP de délégation d’utilisateur.

Construire un URI SAP de compte

L’URI SAP du compte se compose de l’URI vers la ressource pour laquelle la SAP délègue l’accès, suivie d’un jeton SAP. Le jeton SAP est la chaîne de requête qui inclut toutes les informations requises pour autoriser une demande à la ressource. Il spécifie le service, la ressource et les autorisations disponibles pour l’accès, ainsi que la période pendant laquelle la signature est valide.

Spécifier les paramètres SAP du compte

Les paramètres obligatoires et facultatifs pour le jeton SAP sont décrits dans le tableau suivant :

Paramètre de requête SAP Description
api-version facultatif. Spécifie la version du service de stockage à utiliser pour exécuter la requête effectuée à l’aide de l’URI SAP du compte. Pour plus d’informations, consultez Autoriser les demandes à l’aide d’une signature d’accès partagé.
SignedVersion (sv) Obligatoire. Spécifie la version du service de stockage signé à utiliser pour autoriser les demandes effectuées avec cette SAP de compte. Elle doit être définie sur la version 2015-04-05 ou ultérieure. Pour plus d’informations, consultez Autoriser les demandes à l’aide d’une signature d’accès partagé.
SignedServices (ss) Obligatoire. Spécifie les services signés accessibles avec la SAP du compte. Valeurs possibles :

- Blob (b)
- File d’attente (q)
- Table (t)
- Fichier (f)

Vous pouvez combiner des valeurs pour fournir l’accès à plusieurs services. Par exemple, ss=bf spécifie l’accès aux points de terminaison Stockage Blob et Azure Files.
SignedResourceTypes (srt) Obligatoire. Spécifie les types de ressources signés accessibles avec la SAP de compte.

- Service (s) : accès aux API au niveau du service (par exemple, Get/Set Service Properties, Get Service Stats, List Containers/Queues/Tables/Shares).
- Conteneur (c) : accès aux API au niveau du conteneur (par exemple, Créer/Supprimer un conteneur, Créer/Supprimer une file d’attente, Créer/Supprimer une table, Créer/Supprimer un partage, Répertorier des objets blob/fichiers et répertoires).
- Objet (o) : accès aux API au niveau de l’objet pour les objets blob, les messages de file d’attente, les entités de table et les fichiers (par exemple, Put Blob, Query Entity, Get Messages, Create File).

Vous pouvez combiner des valeurs pour fournir l’accès à plusieurs types de ressources. Par exemple, srt=sc spécifie l’accès aux ressources de service et de conteneur.
SignedPermissions (sp) Obligatoire. Spécifie les autorisations signées pour la SAP du compte. Les autorisations sont valides uniquement si elles correspondent au type de ressource signé spécifié. S’ils ne correspondent pas, ils sont ignorés.

- Lecture (r) : valide pour tous les types de ressources signés (Service, Conteneur et Objet). Autorise les autorisations de lecture au type de ressource spécifié.
- Écriture (w) : valide pour tous les types de ressources signées (Service, Conteneur et Objet). Autorise l’accès en écriture pour le type de ressource spécifié, ce qui permet à un utilisateur de créer et de mettre à jour des ressources.
- Supprimer (d) : valide pour les types de ressources Conteneur et Objet, à l’exception des messages de file d’attente.
- Supprimer la version (x) : valide pour le type de ressource Objet blob uniquement.
- Suppression permanente (y) : valide pour le type de ressource Objet blob uniquement.
- Liste (l) : valide uniquement pour les types de ressources de service et de conteneur.
- Ajouter (a) : valide pour les types de ressources Object suivants uniquement : messages de file d’attente, entités de table et objets blob d’ajout.
- Créer (c) : valide pour les types de ressources conteneur et les types de ressources Objet suivants : objets blob et fichiers. Les utilisateurs peuvent créer de nouvelles ressources, mais peuvent ne pas remplacer les ressources existantes.
- Mise à jour (u) : valide pour les types de ressources Objet suivants uniquement : messages de file d’attente et entités de table.
- Traiter (p) : valide pour le type de ressource Objet suivant uniquement : messages de file d’attente.
- Balise (t) : valide pour le type de ressource Objet suivant uniquement : objets blob. Autorise les opérations d’étiquette d’objet blob.
- Filtre (f) : valide pour le type de ressource Objet suivant uniquement : objet blob. Autorise le filtrage par balise d’objet blob.
- Définir une stratégie d’immuabilité (i) : valide pour le type de ressource Objet suivant uniquement : objet blob. Autorise la stratégie d’immuabilité définie/suppression et la conservation légale sur un objet blob.
SignedStart (st) facultatif. Heure à laquelle la SAP devient valide, exprimée dans l’un des formats UTC ISO 8601 acceptés. S’il est omis, l’heure de début est supposée être l’heure à laquelle le service de stockage reçoit la demande. Pour plus d’informations sur les formats UTC acceptés, consultez valeurs DateTime de mise en forme.
SignedExpiry (se) Obligatoire. Heure à laquelle la signature d’accès partagé devient non valide, exprimée dans l’un des formats UTC ISO 8601 acceptés. Pour plus d’informations sur les formats UTC acceptés, consultez valeurs DateTime de mise en forme.
SignedIP (sip) facultatif. Spécifie une adresse IP ou une plage d’adresses IP à partir de laquelle accepter les demandes. Lorsque vous spécifiez une plage, gardez à l’esprit que la plage est inclusive. Seules les adresses IPv4 sont prises en charge.

Par exemple, sip=198.51.100.0 ou sip=198.51.100.10-198.51.100.20.
SignedProtocol (spr) facultatif. Spécifie le protocole autorisé pour une requête effectuée avec la SAP du compte. Les valeurs possibles sont à la fois HTTPS et HTTP (https,http) ou HTTPS uniquement (https). La valeur par défaut est https,http.

Notez que HTTP n’est pas une valeur autorisée uniquement.
SignedEncryptionScope (ses) facultatif. Indique l’étendue de chiffrement à utiliser pour chiffrer le contenu de la requête. Ce champ est pris en charge avec la version 2020-12-06 et ultérieure.
Signature (sig) Obligatoire. La partie signature de l’URI est utilisée pour autoriser la demande effectuée avec la signature d’accès partagé.

La chaîne à signer est une chaîne unique construite à partir des champs qui doivent être vérifiés pour autoriser la requête. La signature est un code d’authentification de message basé sur le hachage (HMAC) calculé sur la chaîne à signer et la clé à l’aide de l’algorithme SHA256, puis encodé à l’aide de l’encodage Base64.

Spécifier le champ signedVersion

Le champ signedVersion (sv) contient la version du service de la signature d’accès partagé. Cette valeur spécifie la version de l’autorisation de clé partagée utilisée par cette signature d’accès partagé (dans le champ signature). La valeur spécifie également la version du service pour les demandes effectuées avec cette signature d’accès partagé.

Pour plus d’informations sur la version utilisée lorsque vous exécutez des demandes via une signature d’accès partagé, consultez Contrôle de version pour les services stockage Azure.

Pour plus d’informations sur la façon dont ce paramètre affecte l’autorisation des demandes effectuées avec une signature d’accès partagé, consultez Déléguer l’accès avec une signature d’accès partagé.

Nom du champ Paramètre de requête. Description
signedVersion sv Obligatoire. Pris en charge dans la version 2015-04-05 et versions ultérieures. Version du service de stockage à utiliser pour autoriser et gérer les demandes que vous effectuez avec cette signature d’accès partagé. Pour plus d’informations, consultez Contrôle de version pour les services stockage Azure.

Spécifier une adresse IP ou une plage d’adresses IP

À compter de la version 2015-04-05, le champ facultatif signedIp (sip) spécifie une adresse IP publique ou une plage d’adresses IP publiques à partir desquelles accepter les demandes. Si l’adresse IP à partir de laquelle la requête provient ne correspond pas à l’adresse IP ou à la plage d’adresses spécifiée sur le jeton SAP, la demande n’est pas autorisée. Seules les adresses IPv4 sont prises en charge.

Lorsque vous spécifiez une plage d’adresses IP, gardez à l’esprit que la plage est inclusive. Par exemple, la spécification de sip=198.51.100.0 ou de sip=198.51.100.10-198.51.100.20 sur la SAP limite la requête à ces adresses IP.

Le tableau suivant décrit s’il faut inclure le champ signedIp sur un jeton SAP pour un scénario spécifié, en fonction de l’environnement client et de l’emplacement du compte de stockage.

Environnement client Emplacement du compte de stockage Recommandation
Client s’exécutant dans Azure Dans la même région que le client Une SAP fournie au client dans ce scénario ne doit pas inclure d’adresse IP sortante pour le champ signedIp. Les requêtes effectuées à partir de la même région qui utilisent une SAP avec une adresse IP sortante spécifiée échouent.

Utilisez plutôt un réseau virtuel Azure pour gérer les restrictions de sécurité réseau. Les demandes adressées au stockage Azure à partir de la même région ont toujours lieu sur une adresse IP privée. Pour plus d’informations, consultez Configurer Pare-feu et réseaux virtuels dans Stockage Azure.
Client s’exécutant dans Azure Dans une autre région du client Une SAP fournie au client dans ce scénario peut inclure une adresse IP publique ou une plage d’adresses pour le champ signedIp. Une requête effectuée avec la SAP doit provenir de l’adresse IP ou de la plage d’adresses spécifiée.
Client s’exécutant localement ou dans un autre environnement cloud Dans n’importe quelle région Azure Une SAP fournie au client dans ce scénario peut inclure une adresse IP publique ou une plage d’adresses pour le champ signedIp. Une requête effectuée avec la SAP doit provenir de l’adresse IP ou de la plage d’adresses spécifiée.

Si la requête passe par un proxy ou une passerelle, fournissez l’adresse IP sortante publique de ce proxy ou passerelle pour le champ signedIp.

Spécifier le protocole HTTP

À compter de la version 2015-04-05, le champ facultatif signedProtocol (spr) spécifie le protocole autorisé pour une demande effectuée avec la SAP. Les valeurs possibles sont à la fois HTTPS et HTTP (https,http) ou HTTPS uniquement (https). La valeur par défaut est https,http. Notez que HTTP n’est pas une valeur autorisée.

Spécifier l’étendue de chiffrement

En utilisant le champ signedEncryptionScope sur l’URI, vous pouvez spécifier l’étendue de chiffrement que l’application cliente peut utiliser. Il applique le chiffrement côté serveur avec l’étendue de chiffrement spécifiée lorsque vous chargez des objets blob (PUT) avec le jeton SAP. GET et HEAD ne seront pas limités et exécutés comme précédemment.

Le tableau suivant décrit comment faire référence à une étendue de chiffrement signée sur l’URI :

Nom du champ Paramètre de requête. Description
signedEncryptionScope ses facultatif. Indique l’étendue de chiffrement à utiliser pour chiffrer le contenu de la requête.

Ce champ est pris en charge avec la version 2020-12-06 ou ultérieure. Si vous ajoutez le ses avant la version prise en charge, le service retourne le code de réponse d’erreur 403 (Interdit).

Si vous définissez l’étendue de chiffrement par défaut pour le système de conteneurs ou de fichiers, le paramètre de requête ses respecte la stratégie de chiffrement de conteneur. S’il existe une incompatibilité entre le paramètre de requête ses et l’en-tête x-ms-default-encryption-scope, et que l’en-tête x-ms-deny-encryption-scope-override est défini sur true, le service retourne le code de réponse d’erreur 403 (Interdit).

Lorsque vous fournissez l’en-tête x-ms-encryption-scope et le paramètre de requête ses dans la requête PUT, le service retourne le code de réponse d’erreur 400 (demande incorrecte) s’il existe une incompatibilité.

Construire la chaîne de signature

Pour construire la chaîne de signature pour une SAP de compte, commencez par construire la chaîne à signer à partir des champs qui composent la requête, puis encodez la chaîne sous la forme UTF-8 et calculez la signature à l’aide de l’algorithme HMAC-SHA256.

Remarque

Les champs inclus dans la chaîne à signer doivent être décodés par URL.

Pour construire la chaîne à signer pour une SAP de compte, utilisez le format suivant :

StringToSign = accountname + "\n" +  
    signedpermissions + "\n" +  
    signedservice + "\n" +  
    signedresourcetype + "\n" +  
    signedstart + "\n" +  
    signedexpiry + "\n" +  
    signedIP + "\n" +  
    signedProtocol + "\n" +  
    signedversion + "\n"  
  

La version 2020-12-06 ajoute la prise en charge du champ d’étendue de chiffrement signé. Pour construire la chaîne à signer pour une SAP de compte, utilisez le format suivant :

StringToSign = accountname + "\n" +  
    signedpermissions + "\n" +  
    signedservice + "\n" +  
    signedresourcetype + "\n" +  
    signedstart + "\n" +  
    signedexpiry + "\n" +  
    signedIP + "\n" +  
    signedProtocol + "\n" +  
    signedversion + "\n" +
    signedEncryptionScope + "\n"  
  

Autorisations SAP de compte par opération

Les tableaux des sections suivantes répertorient différentes API pour chaque service et les types de ressources signés et les autorisations signées prises en charge pour chaque opération.

Service d’objets blob

Le tableau suivant répertorie les opérations de service Blob et indique le type de ressource signé et les autorisations signées à spécifier lorsque vous déléguerez l’accès à ces opérations.

Opération Service signé Type de ressource signé Autorisation signée
Répertorier les conteneurs Blob (b) Service (s) Liste (l)
Obtenir les propriétés du service Blob Blob (b) Service (s) Lecture (r)
Définir les propriétés du service Blob Blob (b) Service (s) Écriture (w)
Obtenir les statistiques du service Blob Blob (b) Service (s) Lecture (r)
Créer un conteneur Blob (b) Conteneur (c) Create(c) ou Write (w)
Obtenir les propriétés du conteneur Blob (b) Conteneur (c) Lecture (r)
Obtenir des métadonnées de conteneur Blob (b) Conteneur (c) Lecture (r)
Définir des métadonnées de conteneur Blob (b) Conteneur (c) Écriture (w)
Conteneur de baux Blob (b) Conteneur (c) Écrire (w) ou supprimer (d)1
Supprimer un conteneur Blob (b) Conteneur (c) Supprimer (d)1
Rechercher des objets blob par balises dans le conteneur Blob (b) Conteneur (c) Filtre (f)
Répertorier les objets blob Blob (b) Conteneur (c) Liste (l)
Put Blob (créer un objet blob de blocs) Blob (b) Object (o) Créer (c) ou écrire (w)
Put Blob (remplacer l’objet blob de blocs existant) Blob (b) Object (o) Écriture (w)
Put Blob (créer un objet blob de pages) Blob (b) Object (o) Créer (c) ou écrire (w)
Put Blob (remplacer l’objet blob de pages existant) Blob (b) Object (o) Écriture (w)
Obtenir un objet blob Blob (b) Object (o) Lecture (r)
Obtenir les propriétés d’objet blob Blob (b) Object (o) Lecture (r)
Définir les propriétés de l’objet blob Blob (b) Object (o) Écriture (w)
Obtenir les métadonnées d’objet blob Blob (b) Object (o) Lecture (r)
Définir des métadonnées d’objet blob Blob (b) Object (o) Écriture (w)
Obtenir des balises d’objet blob Blob (b) Object (o) Balises (t)
Définir des balises d’objet blob Blob (b) Object (o) Balises (t)
Rechercher des objets blob par balises Blob (b) Object (o) Filtre (f)
Supprimer un objet blob Blob (b) Object (o) Supprimer (d)1
Supprimer la version d’objet blob Blob (b) Object (o) Supprimer la version (x)2
Supprimer définitivement l’instantané / version Blob (b) Object (o) Suppression définitive (y)3
Objet blob de bail Blob (b) Object (o) Écrire (w) ou supprimer (d)1
Blob d’instantanés Blob (b) Object (o) Créer (c) ou écrire (w)
Copier un objet blob (destination est un nouvel objet blob) Blob (b) Object (o) Créer (c) ou écrire (w)
Copier un objet blob (la destination est un objet blob existant) Blob (b) Object (o) Écriture (w)
Copie incrémentielle Blob (b) Object (o) Créer (c) ou écrire (w)
Abandonner l’objet blob de copie Blob (b) Object (o) Écriture (w)
Put Block Blob (b) Object (o) Écriture (w)
Placer la liste de blocs (créer un objet blob) Blob (b) Object (o) Écriture (w)
Placer la liste de blocs (mettre à jour l’objet blob existant) Blob (b) Object (o) Écriture (w)
Obtenir la liste des blocs Blob (b) Object (o) Lecture (r)
Put Page Blob (b) Object (o) Écriture (w)
Obtenir des plages de pages Blob (b) Object (o) Lecture (r)
Ajouter un bloc Blob (b) Object (o) Ajouter (a) ou écrire (w)
Effacer la page Blob (b) Object (o) Écriture (w)

1 L’autorisation Delete autorise la rupture d’un bail sur un objet blob ou un conteneur avec la version 2017-07-29 et ultérieures.
2 L’autorisation Delete Version autorise la suppression des versions d’objets blob avec la version 2019-12-12 et ultérieure.
3 L’autorisation Permanent Delete autorise la suppression définitive d’un instantané d’objet blob ou d’une version avec la version 2020-02-10 et ultérieure.

Service de file d’attente

Le tableau suivant répertorie les opérations de service file d’attente et indique le type de ressource signé et les autorisations signées à spécifier lorsque vous déléguerez l’accès à ces opérations.

Opération Service signé Type de ressource signé Autorisation signée
Obtenir les propriétés du service de file d’attente File d’attente (q) Service (s) Lecture (r)
Définir les propriétés du service de file d’attente File d’attente (q) Service (s) Écriture (w)
Répertorier les files d’attente File d’attente (q) Service (s) Liste (l)
Obtenir les statistiques du service de file d’attente File d’attente (q) Service (s) Lecture (r)
Créer une file d’attente File d’attente (q) Conteneur (c) Create(c) ou Write (w)
Supprimer la file d’attente File d’attente (q) Conteneur (c) Supprimer (d)
Obtenir les métadonnées de file d’attente File d’attente (q) Conteneur (c) Lecture (r)
Définir les métadonnées de file d’attente File d’attente (q) Conteneur (c) Écriture (w)
Put Message File d’attente (q) Object (o) Ajouter (a)
Obtenir des messages File d’attente (q) Object (o) Processus (p)
Aperçu des messages File d’attente (q) Object (o) Lecture (r)
Supprimer le message File d’attente (q) Object (o) Processus (p)
Effacer les messages File d’attente (q) Object (o) Supprimer (d)
Mettre à jour le message File d’attente (q) Object (o) Mettre à jour (u)

Service de table

Le tableau suivant répertorie les opérations de service table et indique le type de ressource signé et les autorisations signées à spécifier lorsque vous déléguerez l’accès à ces opérations.

Opération Service signé Type de ressource signé Autorisation signée
Obtenir les propriétés du service table Tableau (t) Service (s) Lecture (r)
Définir les propriétés du service table Tableau (t) Service (s) Écriture (w)
Obtenir les statistiques du service de table Tableau (t) Service (s) Lecture (r)
Tables de requête Tableau (t) Conteneur (c) Liste (l)
Créer une table Tableau (t) Conteneur (c) Créer (c) ou écrire (w)
Supprimer une table Tableau (t) Conteneur (c) Supprimer (d)
Entités de requête Tableau (t) Object (o) Lecture (r)
Insérer une entité Tableau (t) Object (o) Ajouter (a)
Insérer ou fusionner une entité Tableau (t) Object (o) Ajouter (a) et mettre à jour (u)1
Insérer ou remplacer une entité Tableau (t) Object (o) Ajouter (a) et mettre à jour (u)1
Mettre à jour l’entité Tableau (t) Object (o) Mettre à jour (u)
Entité de fusion Tableau (t) Object (o) Mettre à jour (u)
Supprimer une entité Tableau (t) Object (o) Supprimer (d)

1 autorisations Ajouter et mettre à jour sont requises pour les opérations upsert sur le service Table.

Service de fichiers

Le tableau suivant répertorie les opérations de service de fichiers et indique le type de ressource signé et les autorisations signées à spécifier lorsque vous déléguerez l’accès à ces opérations.

Opération Service signé Type de ressource signé Autorisation signée
Répertorier les partages Fichier (f) Service (s) Liste (l)
Obtenir les propriétés du service de fichiers Fichier (f) Service (s) Lecture (r)
Définir les propriétés du service de fichiers Fichier (f) Service (s) Écriture (w)
Obtenir des statistiques de partage Fichier (f) Conteneur (c) Lecture (r)
Créer un partage Fichier (f) Conteneur (c) Créer (c) ou écrire (w)
Partage d’instantanés Fichier (f) Conteneur (c) Créer (c) ou écrire (w)
Obtenir les propriétés de partage Fichier (f) Conteneur (c) Lecture (r)
Définir les propriétés de partage Fichier (f) Conteneur (c) Écriture (w)
Obtenir les métadonnées de partage Fichier (f) Conteneur (c) Lecture (r)
Définir des métadonnées de partage Fichier (f) Conteneur (c) Écriture (w)
Supprimer le partage Fichier (f) Conteneur (c) Supprimer (d)
Répertorier les répertoires et les fichiers Fichier (f) Conteneur (c) Liste (l)
Créer un répertoire Fichier (f) Object (o) Créer (c) ou écrire (w)
Obtenir les propriétés d’annuaire Fichier (f) Object (o) Lecture (r)
Obtenir les métadonnées d’annuaire Fichier (f) Object (o) Lecture (r)
Définir les métadonnées d’annuaire Fichier (f) Object (o) Écriture (w)
Supprimer le répertoire Fichier (f) Object (o) Supprimer (d)
Créer un fichier (créer) Fichier (f) Object (o) Créer (c) ou écrire (w)
Créer un fichier (remplacer l’existant) Fichier (f) Object (o) Écriture (w)
Obtenir un fichier Fichier (f) Object (o) Lecture (r)
Obtenir les propriétés du fichier Fichier (f) Object (o) Lecture (r)
Obtenir les métadonnées de fichier Fichier (f) Object (o) Lecture (r)
Définir les métadonnées de fichier Fichier (f) Object (o) Écriture (w)
Supprimer un fichier Fichier (f) Object (o) Supprimer (d)
Renommer un fichier Fichier (f) Object (o) Supprimer (d) ou écrire (w)
Plage de mise en place Fichier (f) Object (o) Écriture (w)
Plages de listes Fichier (f) Object (o) Lecture (r)
Abandonner le fichier de copie Fichier (f) Object (o) Écriture (w)
Copier un fichier Fichier (f) Object (o) Écriture (w)
Effacer la plage Fichier (f) Object (o) Écriture (w)

Exemple d’URI SAP de compte

L’exemple suivant montre un URI de service Blob avec un jeton SAP de compte ajouté à celui-ci. Le jeton SAP de compte fournit des autorisations pour le service, le conteneur et les objets. La table décompose chaque partie de l’URI :

https://blobsamples.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwlc&se=2023-05-24T09:51:36Z&st=2023-05-24T01:51:36Z&spr=https&sig=<signature>
Name Partie SAP Description
URI de ressource https://myaccount.blob.core.windows.net/?restype=service&comp=properties Point de terminaison de service, avec des paramètres permettant d’obtenir des propriétés de service (lorsqu’elles sont appelées avec GET) ou de définir des propriétés de service (lorsqu’elles sont appelées avec SET). En fonction de la valeur du champ de services signés (ss), cette SAP peut être utilisée avec Stockage Blob ou Azure Files.
Délimiteur ? Délimiteur qui précède la chaîne de requête. Le délimiteur ne fait pas partie du jeton SAP.
Version des services de stockage sv=2022-11-02 Pour les services stockage Azure version 2012-02-12 et versions ultérieures, ce paramètre indique la version à utiliser.
Services ss=b La SAP s’applique aux services Blob.
Types de ressource srt=sco La SAP s’applique aux opérations au niveau du service, au niveau du conteneur et aux opérations au niveau de l’objet.
Autorisations sp=rwlc Les autorisations accordent l’accès aux opérations de lecture, d’écriture, de liste et de création.
Heure de début st=2019-08-01T22%3A18%3A26Z Spécifié en heure UTC. Si vous souhaitez que la SAP soit valide immédiatement, omettez l’heure de début.
Heure d’expiration se=2019-08-10T02%3A23%3A26Z Spécifié en heure UTC.
Protocol spr=https Seules les requêtes qui utilisent HTTPS sont autorisées.
Signature sig=<signature> Permet d’autoriser l’accès à l’objet blob. La signature est un HMAC calculé sur une chaîne à signer et une clé à l’aide de l’algorithme SHA256, puis encodé à l’aide de l’encodage Base64.

Étant donné que les autorisations sont limitées au niveau du service, les opérations accessibles avec cette SAP sont Obtenir les propriétés du service Blob (lecture) et Définir les propriétés du service Blob (écriture). Toutefois, avec un URI de ressource différent, le même jeton SAP peut également être utilisé pour déléguer l’accès à Obtenir les statistiques du service blob (lecture).

Voir aussi