Partager via


Path - Lease

Chemin du bail
Créez et gérez un bail pour restreindre l’accès en écriture et supprimer l’accès au chemin d’accès. Cette opération prend en charge les requêtes HTTP conditionnelles. Pour plus d’informations, consultez Spécification des en-têtes conditionnels pour les opérations du service Blob.

POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}
POST https://{accountName}.{dnsSuffix}/{filesystem}/{path}?timeout={timeout}

Paramètres URI

Nom Dans Obligatoire Type Description
accountName
path True

string

Nom du compte de stockage Azure.

dnsSuffix
path True

string

Suffixe DNS pour le point de terminaison Azure Data Lake Storage.

filesystem
path True

string

Identificateur du système de fichiers.

Modèle d’expression régulière: ^[$a-z0-9](?!.*--)[-a-z0-9]{1,61}[a-z0-9]$

path
path True

string

Chemin d’accès au fichier ou au répertoire.

timeout
query

integer

int32

Valeur de délai d’expiration d’opération facultative en secondes. La période commence lorsque la demande est reçue par le service. Si la valeur du délai d’expiration s’écoule avant la fin de l’opération, l’opération échoue.

En-tête de la demande

Nom Obligatoire Type Description
x-ms-lease-action True

PathLeaseAction

Il existe cinq actions de bail : « acquérir », « arrêter », « modifier », « renouveler » et « libérer ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’interruption de bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’interruption et de la libération, ne peut être effectuée dans le dossier. Lorsqu'un bail est correctement résilié, la réponse indique l'intervalle en secondes avant qu'un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renew » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

x-ms-lease-duration

integer

int32

La durée du bail est requise pour acquérir un bail et spécifie la durée du bail en secondes. La durée du bail doit être comprise entre 15 et 60 secondes ou -1 pour un bail infini.

x-ms-lease-break-period

integer

int32

La durée de la période d’interruption de bail est facultative pour rompre un bail et spécifie la période d’arrêt du bail en secondes. La durée de l’arrêt de bail doit être comprise entre 0 et 60 secondes.

x-ms-lease-id

string

Obligatoire lorsque « x-ms-lease-action » est « renew », « change » ou « release ». Pour les actions de renouvellement et de mise en production, cela doit correspondre à l’ID de bail actuel.

Modèle d’expression régulière: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

x-ms-proposed-lease-id

string

Obligatoire lorsque « x-ms-lease-action » est « acquire » ou « change ». Un bail sera acquis avec cet ID de bail si l’opération réussit.

Modèle d’expression régulière: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

If-Match

string

facultatif. Spécifiez une valeur ETag. Spécifiez cet en-tête pour exécuter l'opération uniquement si l'ETag de la ressource correspond à la valeur spécifiée. L’ETag doit être spécifié entre guillemets.

If-None-Match

string

facultatif. Valeur ETag ou valeur générique spéciale (« * »). Spécifiez cet en-tête pour exécuter l'opération uniquement si l'ETag de la ressource ne correspond pas à la valeur spécifiée. L’ETag doit être spécifié entre guillemets.

If-Modified-Since

string

facultatif. Valeur de date et heure. Spécifiez cet en-tête pour effectuer l’opération uniquement si la ressource a été modifiée depuis la date et l’heure spécifiées.

If-Unmodified-Since

string

facultatif. Valeur de date et heure. Spécifiez cet en-tête pour effectuer l’opération uniquement si la ressource n’a pas été modifiée depuis la date et l’heure spécifiées.

x-ms-client-request-id

string

Un UUID enregistré dans les journaux d’analyse pour la résolution des problèmes et la corrélation.

Modèle d’expression régulière: ^[{(]?[0-9a-f]{8}[-]?([0-9a-f]{4}[-]?){3}[0-9a-f]{12}[)}]?$

x-ms-date

string

Spécifie la date/heure en temps universel coordonné (UTC) pour la requête. Cela est obligatoire lors de l’utilisation de l’autorisation de clé partagée.

x-ms-version

string

Spécifie la version du protocole REST utilisé pour le traitement de la demande. Cela est obligatoire lors de l’utilisation de l’autorisation de clé partagée.

Réponses

Nom Type Description
200 OK

L’action « renouveler », « modifier » ou « libérer » a réussi.

En-têtes

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
201 Created

Un nouveau bail a été créé. L’action « acquérir » a réussi.

En-têtes

  • Date: string
  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-id: string
202 Accepted

L’action de « rupture » du bail a réussi.

En-têtes

  • ETag: string
  • Last-Modified: string
  • x-ms-request-id: string
  • x-ms-version: string
  • x-ms-lease-time: string
Other Status Codes

DataLakeStorageError

Une erreur est survenue. Les status HTTP possibles, le code et les chaînes de message sont répertoriés ci-dessous :

  • 400 Requête incorrecte, ContentLengthMustBeZero, « L’en-tête de requête Content-Length doit être égal à zéro ».
  • 400 Demande incorrecte, InvalidAuthenticationInfo, « Les informations d’authentification ne sont pas fournies dans le format correct. Vérifiez la valeur de l’en-tête d’autorisation. »
  • 400 Requête incorrecte, InvalidFlushPosition, « Les données chargées ne sont pas contiguës ou la valeur du paramètre de requête de position n’est pas égale à la longueur du fichier après l’ajout des données chargées . »
  • 400 Requête incorrecte, InvalidHeaderValue, « La valeur de l’un des en-têtes HTTP n’est pas au format correct ».
  • 400 Requête incorrecte, InvalidHttpVerb, « Le verbe HTTP spécifié n’est pas valide , il n’est pas reconnu par le serveur ».
  • 400 Requête incorrecte, InvalidInput, « Une des entrées de demande n’est pas valide ».
  • 400 Requête incorrecte, InvalidPropertyName, « Un nom de propriété ne peut pas être vide ».
  • 400 Requête incorrecte, InvalidPropertyName, « Le nom de la propriété contient des caractères non valides ».
  • 400 Requête incorrecte, InvalidQueryParameterValue, « La valeur de l’un des paramètres de requête spécifiés dans l’URI de requête n’est pas valide . »
  • 400 Requête incorrecte, InvalidResourceName, « Le nom de ressource spécifié contient des caractères non valides ».
  • 400 Requête incorrecte, InvalidSourceUri, « L’URI source n’est pas valide ».
  • 400 Requête incorrecte, InvalidUri, « L’URI de demande n’est pas valide ».
  • 400 Requête incorrecte, MissingRequiredHeader, « Un en-tête HTTP obligatoire pour cette requête n’est pas spécifié ».
  • 400 Requête incorrecte, MissingRequiredQueryParameter, « Un paramètre de requête obligatoire pour cette requête n’est pas spécifié . »
  • 400 Requête incorrecte, MultipleConditionHeadersNotSupported, « Les en-têtes de condition multiples ne sont pas pris en charge ».
  • 400 Requête incorrecte, OutOfRangeInput, « L’une des entrées de requête est hors de portée ».
  • 400 Requête incorrecte, OutOfRangeQueryParameterValue, « L’un des paramètres de requête spécifiés dans l’URI de requête se trouve en dehors de la plage autorisée ».
  • 400 Requête incorrecte, UnsupportedHeader, « L’un des en-têtes spécifiés dans la demande n’est pas pris en charge ».
  • 400 Requête incorrecte, UnsupportedQueryParameter, « L’un des paramètres de requête spécifiés dans l’URI de requête n’est pas pris en charge ».
  • 400 Requête incorrecte, UnsupportedRestVersion, « La version rest spécifiée n’est pas prise en charge ».
  • 403 Forbidden, AccountIsDisabled, « Le compte spécifié est désactivé ».
  • 403 Interdit, AuthorizationFailure, « Cette demande n’est pas autorisée à effectuer cette opération ».
  • 403 Forbidden, InsufficientAccountPermissions, « Le compte auquel vous accédez ne dispose pas des autorisations suffisantes pour exécuter cette opération ».
  • 404 Introuvable, FilesystemNotFound, « Le système de fichiers spécifié n’existe pas ».
  • 404 Introuvable, PathNotFound, « Le chemin spécifié n’existe pas ».
  • 404 Introuvable, RenameDestinationParentPathNotFound, « Le répertoire parent du chemin de destination n’existe pas ».
  • 404 Introuvable, ResourceNotFound, « La ressource spécifiée n’existe pas ».
  • 404 Introuvable, SourcePathNotFound, « Le chemin source d’une opération de renommage n’existe pas ».
  • 405 Method Not Allowed, UnsupportedHttpVerb, « La ressource ne prend pas en charge le verbe HTTP spécifié ».
  • 409 Conflict, DestinationPathIsBeingDeleted, « Le chemin de destination spécifié est marqué à supprimer ».
  • 409 Conflict, DirectoryNotEmpty, « La valeur du paramètre de requête récursive doit être true pour supprimer un répertoire non vide ».
  • 409 Conflict, FilesystemAlreadyExists, « Le système de fichiers spécifié existe déjà ».
  • 409 Conflit, FilesystemBeingDeleted, « Le système de fichiers spécifié est en cours de suppression ».
  • 409 Conflict, InvalidDestinationPath, « Le chemin spécifié, ou un élément du chemin d’accès, existe et son type de ressource n’est pas valide pour cette opération . » * 409 Conflict, InvalidFlushOperation, « La ressource a été créée ou modifiée par l’API de service Blob et ne peut pas être écrite par l’API service Data Lake Storage . »
  • 409 Conflict, InvalidRenameSourcePath, « Le répertoire source ne peut pas être identique au répertoire de destination, ni la destination ne peut être un sous-répertoire du répertoire source . »
  • 409 Conflict, InvalidSourceOrDestinationResourceType, « Le type de ressource source et de destination doit être identique ».
  • 409 Conflit, LeaseAlreadyPresent, « Il y a déjà un bail présent. »
  • 409 Conflict, LeaseIdMismatchWithLeaseOperation, « L’ID de bail spécifié ne correspond pas à l’ID de bail de la ressource avec l’opération de bail spécifiée. »
  • 409 Conflit, LeaseIsAlreadyBroken, « Le bail a déjà été rompu et ne peut pas être rompu à nouveau. »
  • 409 Conflict, LeaseIsBreakingAndCannotBeAcquired, « L’ID de bail correspond, mais le bail est actuellement en état de rupture et ne peut pas être acquis tant qu’il n’est pas rompu. »
  • 409 Conflict, LeaseIsBreakingAndCannotBeChanged, « L’ID de bail correspond, mais le bail est actuellement dans un état cassant et ne peut pas être modifié. »
  • 409 Conflict, LeaseIsBrokenAndCannotBeRenewed, « L’ID de bail correspond, mais le bail a été rompu explicitement et ne peut pas être renouvelé. »
  • 409 Conflict, LeaseNameMismatch, « Le nom de bail spécifié ne correspond pas au nom de bail existant. »
  • 409 Conflict, LeaseNotPresentWithLeaseOperation, « L’ID de bail n’est pas présent avec l’opération de bail spécifiée ».
  • 409 Conflict, PathAlreadyExists, « Le chemin spécifié existe déjà ».
  • 409 Conflict, PathConflict, « Le chemin spécifié, ou un élément du chemin d’accès, existe et son type de ressource n’est pas valide pour cette opération. »
  • 409 Conflit, SourcePathIsBeingDeleted, « Le chemin d’accès source spécifié est marqué pour être supprimé . »
  • 409 Conflict, ResourceTypeMismatch, « Le type de ressource spécifié dans la demande ne correspond pas au type de la ressource ».
  • 412 La condition préalable a échoué, ConditionNotMet, « La condition spécifiée à l’aide d’en-têtes conditionnels HTTP n’est pas remplie. »
  • 412 La condition préalable a échoué, LeaseIdMismatch, « L’ID de bail spécifié ne correspondait pas à l’ID de bail de la ressource . »
  • 412 La condition préalable a échoué, LeaseIdMissing, « Il existe actuellement un bail sur la ressource et aucun ID de bail n’a été spécifié dans la demande. »
  • 412 La condition préalable a échoué, LeaseNotPresent, « Il n’existe actuellement aucun bail sur la ressource ».
  • 412 La condition préalable a échoué, LeaseLost, « Un ID de bail a été spécifié, mais le bail de la ressource a expiré. »
  • 412 La condition préalable a échoué, SourceConditionNotMet, « La condition source spécifiée à l’aide d’en-têtes conditionnels HTTP n’est pas remplie. »
  • 413 Entité de requête trop grande, RequestBodyTooLarge, « Le corps de la demande est trop grand et dépasse la limite maximale autorisée. »
  • 416 Plage demandée non satisfiable, InvalidRange, « La plage spécifiée n’est pas valide pour la taille actuelle de la ressource . »
  • 500 Erreur interne du serveur, InternalError, « Le serveur a rencontré une erreur interne. Relancez la demande. »
  • 500 Erreur interne du serveur, OperationTimedOut, « L’opération n’a pas pu être terminée dans le délai autorisé ».
  • 503 Service indisponible, ServerBusy, « La sortie dépasse la limite du compte ».
  • 503 Service indisponible, ServerBusy, « L’entrée dépasse la limite du compte ».
  • 503 Service indisponible, ServerBusy, « Les opérations par seconde dépassent la limite du compte ».
  • 503 Service indisponible, ServerBusy : « Le serveur ne peut actuellement pas recevoir de demandes. Veuillez relancez la requête. »

En-têtes

  • x-ms-request-id: string
  • x-ms-version: string

Définitions

Nom Description
DataLakeStorageError
Error

Objet de réponse d’erreur de service.

PathLeaseAction

Il existe cinq actions de bail : « acquérir », « arrêter », « modifier », « renouveler » et « libérer ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’interruption de bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’interruption et de la libération, ne peut être effectuée dans le dossier. Lorsqu'un bail est correctement résilié, la réponse indique l'intervalle en secondes avant qu'un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renew » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

DataLakeStorageError

Nom Type Description
error

Error

Objet de réponse d’erreur de service.

Error

Objet de réponse d’erreur de service.

Nom Type Description
code

string

Code d’erreur du service.

message

string

Message d’erreur du service.

PathLeaseAction

Il existe cinq actions de bail : « acquérir », « arrêter », « modifier », « renouveler » et « libérer ». Utilisez « acquire » et spécifiez « x-ms-proposed-lease-id » et « x-ms-lease-duration » pour acquérir un nouveau bail. Utilisez « break » pour rompre un bail existant. Lorsqu’un bail est rompu, la période d’interruption de bail est autorisée à s’écouler, pendant laquelle aucune opération de bail, à l’exception de l’interruption et de la libération, ne peut être effectuée dans le dossier. Lorsqu'un bail est correctement résilié, la réponse indique l'intervalle en secondes avant qu'un nouveau bail puisse être acquis. Utilisez « change » et spécifiez l’ID de bail actuel dans « x-ms-lease-id » et le nouvel ID de bail dans « x-ms-proposed-lease-id » pour modifier l’ID de bail d’un bail actif. Utilisez « renew » et spécifiez « x-ms-lease-id » pour renouveler un bail existant. Utilisez « release » et spécifiez « x-ms-lease-id » pour libérer un bail.

Nom Type Description
acquire

string

break

string

change

string

release

string

renew

string