Créer un répertoire
L’opération Create Directory
crée un répertoire sous le partage ou le répertoire parent spécifié. La ressource de répertoire inclut les propriétés de ce répertoire. Il n’inclut pas de liste des fichiers ou des sous-répertoires contenus dans le répertoire.
Disponibilité du protocole
Protocole de partage de fichiers activé | Disponible |
---|---|
SMB | |
NFS |
Demander
Vous pouvez construire la requête Create Directory
comme suit. Nous vous recommandons d’utiliser HTTPS.
Méthode | URI de requête | Version HTTP |
---|---|---|
PUT |
https://myaccount.file.core.windows.net/myshare/myparentdirectorypath/mydirectory?restype=directory |
HTTP/1.1 |
Remplacez les composants de chemin d’accès dans l’URI de requête par vos propres composants, comme indiqué dans le tableau suivant :
Composant Path | Description |
---|---|
myaccount |
Nom de votre compte de stockage. |
myshare |
Nom de votre partage de fichiers. |
myparentdirectorypath |
Optionnel. Chemin d’accès au répertoire parent où mon répertoire doit être créé. Si le chemin du répertoire parent est omis, le répertoire est créé dans le partage spécifié. Si le répertoire parent est spécifié, il doit déjà exister dans le partage avant de pouvoir créer mydirectory. |
mydirectory |
Nom du répertoire à créer. |
Pour plus d’informations sur les restrictions de nommage de chemin d’accès, consultez Partages de noms et de référence, répertoires, fichiers et métadonnées.
Paramètres d’URI
Vous pouvez spécifier les paramètres supplémentaires suivants sur l’URI de requête.
Paramètre | Description |
---|---|
timeout |
Optionnel. Le paramètre timeout est exprimé en secondes. Pour plus d’informations, consultez Définir des délais d’attente pour les opérations de service de fichiers. |
Corps de la demande
Aucun.
En-têtes de requête
Les en-têtes de requête obligatoires et facultatifs sont décrits dans le tableau suivant :
Paramètre | Description |
---|---|
Authorization |
Obligatoire. Spécifie le schéma d’autorisation, le nom du compte et la signature. Pour plus d’informations, consultez Autoriser les demandes vers le stockage Azure. |
Date ou x-ms-date |
Obligatoire. Spécifie l’heure UTC (Temps universel coordonné) de la requête. Pour plus d’informations, consultez Autoriser les demandes vers le stockage Azure. |
x-ms-version |
Obligatoire pour toutes les demandes autorisées. Spécifie la version de l’opération à utiliser pour cette requête. Pour plus d’informations, consultez Contrôle de version pour les services stockage Azure. |
x-ms-meta-name:value |
Optionnel. Version 2015-02-21 ou ultérieure. Paire nom-valeur à associer au répertoire en tant que métadonnées. Les noms de métadonnées doivent respecter les règles d’affectation de noms pour les identificateurs C# . |
x-ms-file-permission: { inherit ¦ <SDDL> ¦ <binary> } |
Dans la version 2019-02-02 à 2021-04-10, cet en-tête est requis si x-ms-file-permission-key n’est pas spécifié. Depuis la version 2021-06-08, les deux en-têtes sont facultatifs. Cette autorisation est le descripteur de sécurité pour le répertoire spécifié dans le Langage de définition du descripteur de sécurité (SDDL) ou (version 2024-11-04 ou ultérieure) au format de descripteur de sécurité binaire en base64 format de descripteur de sécurité binaire. Vous pouvez spécifier le format à utiliser avec l’en-tête x-ms-file-permission-format . Cet en-tête peut être utilisé si la taille des autorisations est supérieure à 8 kibioctets (KiB). Sinon, vous pouvez utiliser x-ms-file-permission-key . S’il est spécifié, il doit avoir un propriétaire, un groupe et liste de contrôle d’accès discrétionnaire (DACL). Vous pouvez transmettre une valeur de inherit pour hériter du répertoire parent.Remarque: vous pouvez spécifier x-ms-file-permission ou x-ms-file-permission-key . Si aucun en-tête n’est spécifié, la valeur par défaut de inherit est utilisée. |
x-ms-file-permission-format: { sddl ¦ binary } |
Optionnel. Version 2024-11-04 ou ultérieure. Spécifie si la valeur passée dans x-ms-file-permission est au format SDDL ou au format binaire. Si x-ms-file-permission-key est défini sur inherit , cet en-tête ne doit pas être défini. Si x-ms-file-permission-key est défini sur une autre valeur que inherit et si cet en-tête n’est pas défini, la valeur par défaut de sddl est utilisée. |
x-ms-file-permission-key: <PermissionKey> |
Clé de l’autorisation à définir pour le répertoire. Dans la version 2019-02-02 à 2021-04-10, cet en-tête est requis si x-ms-file-permission n’est pas spécifié. Depuis la version 2021-06-08, les deux en-têtes sont facultatifs. Vous pouvez créer cette clé à l’aide de l’API Create-Permission .Remarque: vous pouvez spécifier x-ms-file-permission ou x-ms-file-permission-key . Si aucun en-tête n’est spécifié, la valeur par défaut de inherit est utilisée pour l’en-tête x-ms-file-permission . |
x-ms-file-attributes |
Obligatoire : version 2019-02-02 à 2021-04-10. Facultatif : version 2021-06-08 et ultérieure. Attributs du système de fichiers à définir dans le répertoire. Consultez la liste des attributs disponibles . La valeur par défaut est Directory. |
x-ms-file-creation-time: { now ¦ <DateTime> } |
Obligatoire : version 2019-02-02 à 2021-04-10. Facultatif : version 2021-06-08 et ultérieure. Propriété temps universel coordonné (UTC) pour le répertoire. Vous pouvez utiliser une valeur de now pour indiquer l’heure de la demande. La valeur par défaut est now . |
x-ms-file-last-write-time: { now ¦ <DateTime> } |
Obligatoire : version 2019-02-02 à 2021-04-10. Facultatif : version 2021-06-08 ou ultérieure. Propriété utc (Temps universel coordonné) pour le répertoire. Vous pouvez utiliser une valeur de now pour indiquer l’heure de la demande. La valeur par défaut est now . |
x-ms-client-request-id |
Optionnel. Fournit une valeur opaque générée par le client avec une limite de caractères de 1 kibioctet (KiB) enregistrée dans les journaux lors de la configuration de la journalisation. Nous vous recommandons vivement d’utiliser cet en-tête pour mettre en corrélation les activités côté client avec les demandes reçues par le serveur. Pour plus d’informations, consultez Monitor Azure Files. |
x-ms-file-change-time: { now ¦ <DateTime> } |
Optionnel. La propriété temps universel coordonné (UTC) pour le répertoire, au format ISO 8601. Version 2021-06-08 et ultérieure. Vous pouvez utiliser une valeur de now pour indiquer l’heure de la demande. La valeur par défaut est now . |
x-ms-file-request-intent |
Obligatoire si Authorization en-tête spécifie un jeton OAuth. La valeur acceptable est backup . Cet en-tête spécifie que les Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action ou Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action doivent être accordés s’ils sont inclus dans la stratégie RBAC affectée à l’identité autorisée à l’aide de l’en-tête Authorization . Disponible pour la version 2022-11-02 et ultérieure. |
x-ms-allow-trailing-dot: { <Boolean> } |
Optionnel. Version 2022-11-02 et ultérieure. La valeur booléenne spécifie si un point de fin présent dans l’URL de requête doit être supprimé ou non. Pour plus d’informations, consultez nommage et référencement de partages, répertoires, fichiers et métadonnées. |
Exemple de requête
PUT https://myaccount.file.core.windows.net/myshare/myparentdirectorypath/mydirectory? restype=directory HTTP/1.1
Request headers:
x-ms-version: 2014-02-14
x-ms-date: Mon, 27 Jan 2014 22:50:32 GMT
x-ms-meta-Category: Images
Authorization: SharedKey myaccount:Z5043vY9MesKNh0PNtksNc9nbXSSqGHueE00JdjidOQ=
Réponse
La réponse inclut un code d’état HTTP et un ensemble d’en-têtes de réponse.
Code d’état
Une opération réussie retourne le code d’état 201 (créé).
Pour plus d’informations sur les codes d’état, consultez Les codes d’état et d’erreur.
En-têtes de réponse
La réponse de cette opération inclut les en-têtes décrits dans le tableau suivant. La réponse peut également inclure des en-têtes HTTP standard supplémentaires. Tous les en-têtes standard sont conformes à la spécification de protocole HTTP/1.1
En-tête de réponse | Description |
---|---|
ETag |
Contient une valeur qui représente la version du répertoire, entre guillemets. |
Last-Modified |
Retourne la date et l’heure de la dernière modification du répertoire. Le format de date suit RFC 1123. Pour plus d’informations, consultez Représenter les valeurs de date/heure dans les en-têtes. Toute opération qui modifie le répertoire ou ses propriétés met à jour l’heure de dernière modification. Les opérations sur les fichiers n’affectent pas l’heure de dernière modification du répertoire. |
x-ms-request-id |
Identifie de manière unique la demande qui a été effectuée et peut être utilisée pour résoudre les problèmes de la demande. Pour plus d’informations, consultez Résoudre les problèmes d’opérations d’API. |
x-ms-version |
Indique la version d’Azure Files utilisée pour exécuter la requête. |
Date |
Valeur de date/heure UTC générée par le service, qui indique l’heure à laquelle la réponse a été lancée. |
x-ms-request-server-encrypted: true/false |
Version 2017-04-17 ou ultérieure. La valeur de cet en-tête est définie sur true si le contenu de la requête est correctement chiffré à l’aide de l’algorithme spécifié et false sinon. |
x-ms-file-permission-key |
Clé de l’autorisation du répertoire. |
x-ms-file-attributes |
Attributs du système de fichiers dans le répertoire. Consultez la liste des attributs disponibles . |
x-ms-file-creation-time |
Valeur de date/heure UTC qui représente la propriété d’heure de création du répertoire. |
x-ms-file-last-write-time |
Valeur de date/heure UTC qui représente la dernière propriété d’heure d’écriture pour le répertoire. |
x-ms-file-change-time |
Date/heure UTC qui représente la propriété d’heure de modification du répertoire. |
x-ms-file-file-id |
ID de fichier du répertoire. |
x-ms-file-parent-id |
ID de fichier parent du répertoire. |
x-ms-client-request-id |
Peut être utilisé pour résoudre les demandes et les réponses correspondantes. La valeur de cet en-tête est égale à la valeur de l’en-tête x-ms-client-request-id s’il est présent dans la requête et que la valeur ne contient pas plus de 1024 caractères ASCII visibles. Si l’en-tête x-ms-client-request-id n’est pas présent dans la requête, cet en-tête n’est pas présent dans la réponse. |
Corps de la réponse
Aucun.
Exemple de réponse
Response status:
HTTP/1.1 201 Created
Response headers:
Transfer-Encoding: chunked
Date: Mon, 27 Jan 2014 23:00:12 GMT
ETag: "0x8CB14C3E29B7E82"
Last-Modified: Mon, 27 Jan 2014 23:00:06 GMT
x-ms-version: 2014-02-14
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
Autorisation
Seul le propriétaire du compte peut appeler cette opération.
Attributs du système de fichiers
Attribut | Attribut de fichier Win32 | Définition |
---|---|---|
ReadOnly | FILE_ATTRIBUTE_READONLY | Répertoire en lecture seule. |
Caché | FILE_ATTRIBUTE_HIDDEN | Le répertoire est masqué. Il n’est pas inclus dans une liste d’annuaires ordinaire. |
Système | FILE_ATTRIBUTE_SYSTEM | Répertoire dont le système d’exploitation utilise une partie ou utilise exclusivement. |
Aucun | FILE_ATTRIBUTE_NORMAL | Répertoire qui n’a pas d’autres attributs définis. Cet attribut est valide uniquement lorsqu’il est utilisé seul. |
Répertoire | FILE_ATTRIBUTE_DIRECTORY | Handle qui identifie un répertoire. |
Archiver | FILE_ATTRIBUTE_ARCHIVE | Répertoire qui est un répertoire d’archive. Les applications utilisent généralement cet attribut pour marquer les fichiers à des fins de sauvegarde ou de suppression. |
Hors-ligne | FILE_ATTRIBUTE_OFFLINE | Les données d’un répertoire ne sont pas disponibles immédiatement. Cet attribut de système de fichiers est présenté principalement pour assurer la compatibilité avec Windows. Azure Files ne le prend pas en charge avec les options de stockage hors connexion. |
NotContentIndexed | FILE_ATTRIBUTE_NOT_CONTENT_INDEXED | Le répertoire ne doit pas être indexé par le service d’indexation de contenu. |
NoScrubData | FILE_ATTRIBUTE_NO_SCRUB_DATA | Le flux de données utilisateur qui n’est pas à lire par le scanneur d’intégrité des données en arrière-plan. Cet attribut de système de fichiers est présenté principalement pour assurer la compatibilité avec Windows. |
Remarques
Si un répertoire portant le même nom est supprimé lorsque Create Directory
est appelé, le serveur retourne le code d’état 409 (Conflit) et fournit des informations d’erreur supplémentaires qui indiquent que le répertoire est supprimé.
Si un répertoire ou un fichier portant le même nom existe déjà, l’opération échoue avec le code d’état 409 (Conflit). Si le répertoire parent n’existe pas, l’opération échoue avec le code d’état 412 (Échec de la condition préalable).
Il n’est pas possible de créer une hiérarchie d’annuaires avec une seule opération de Create Directory
. Vous ne pouvez créer le répertoire que si son parent immédiat existe déjà, comme spécifié dans le chemin d’accès. Si le répertoire parent n’existe pas, l’opération échoue avec le code d’état 412 (Échec de la condition préalable).
Create Directory
n’est pas pris en charge sur un instantané de partage, qui est une copie en lecture seule d’un partage. Une tentative d’exécution de cette opération sur un instantané de partage échoue avec 400 (InvalidQueryParameterValue)
Voir aussi
Opérations de sur les répertoires