Skip to main content

Command Palette

Search for a command to run...

Utilisation du protocole SFTP sur Azure Blob Storage

Published
3 min read
Utilisation du protocole SFTP sur Azure Blob Storage

Le support natif du protocole SFTP (SSH File Transfer Protocol) par Azure Blob Storage permet de combiner la robustesse du stockage objet avec les méthodes de transfert de fichiers traditionnelles. Contrairement à un serveur Linux classique, l'authentification repose sur une structure d'identifiant spécifique.

1. Architecture de l'identifiant utilisateur

C'est le point le plus critique de la configuration. Azure utilise un système de noms d'utilisateurs composés pour router la session SSH vers la bonne instance de stockage.

La structure "Dot-Notation"

L'identifiant n'est pas simplement le nom créé dans le portail, mais une concaténation :

[NomDuCompteStockage].[NomUtilisateurLocal]

  • Nom du compte de stockage : Votre ressource Azure (ex: starkindustries).

  • Nom de l'utilisateur local : L'entité créée dans l'onglet "SFTP" du compte de stockage (ex: jarvis).

  • Résultat : starkindustries.jarvis

Cas du ciblage par conteneur

Si vous n'avez pas défini de "Home Directory" (répertoire personnel) pour l'utilisateur, ou si vous voulez forcer la connexion à un conteneur spécifique, le format devient : nomducompte.nomconteneur.nomutilisateur

2. Prérequis et Limitations Techniques

Avant de tenter une connexion, assurez-vous que les paramètres suivants sont respectés :

  1. Espace de noms hiérarchique (HNS) : La fonctionnalité SFTP nécessite que l'option "Enable hierarchical namespace" soit activée sur le compte de stockage.

  2. Point de terminaison : L'adresse de connexion est toujours le point de terminaison Blob : nomducompte.blob.core.windows.net.

  3. Authentification : Azure supporte les mots de passe générés ou les clés publiques SSH.

3. Matrice de Connexion (Tableau de référence)

Voici comment remplir les champs dans un client comme FileZilla ou WinSCP :

Champ

Valeur

Protocole

SFTP (Port 22)

Hôte

monstockage.blob.core.windows.net

Utilisateur

monstockage.monutilisateur

Authentification

Clé SSH (.ppk/.pem) ou Mot de passe

4. Exemple de connexion via CLI (OpenSSH)

Pour les administrateurs utilisant le terminal, la commande doit être formatée ainsi (attention aux guillemets si des caractères spéciaux sont présents) :

sftp monstockage.monutilisateur@monstockage.blob.core.windows.net

5. Pourquoi ne peut-on pas omettre le nom du compte ?

Il est crucial de comprendre qu'Azure n'héberge pas un serveur SFTP dédié par client, mais une passerelle massivement multi-entités.

  • Si vous envoyez juste monutilisateur, la passerelle Azure ne sait pas vers quel compte de stockage (parmi les millions existants) diriger la requête.

  • Le préfixe nomducompte. sert de sélecteur de routage au niveau de la couche réseau d'Azure.

6. Bonnes pratiques de sécurité

  • Désactiver l'accès public : Utilisez des points de terminaison privés (Private Endpoints) ou restreignez l'accès aux adresses IP de votre entreprise via le pare-feu du compte de stockage.

  • Privilégier les clés SSH : Le mot de passe généré par Azure est complexe, mais la clé SSH reste la norme industrielle pour l'automatisation.

  • Permissions granulaires : Lors de la création de l'utilisateur local, limitez ses droits (Lecture, Écriture, Liste, Suppression) au strict nécessaire pour chaque conteneur.


Liens utiles :

Voici les ressources officielles de Microsoft pour approfondir et voir des exemples concrets :