New-AzSftpCertificate
Cette applet de commande fait partie d’un module en préversion . Les versions en préversion ne sont pas recommandées pour une utilisation dans les environnements de production. Pour plus d’informations, consultez https://aka.ms/azps-refstatus.
Générez des certificats SSH pour l’authentification SFTP à l’aide de Microsoft Entra informations d’identification.
Syntaxe
Default (Par défaut)
New-AzSftpCertificate
[-CertificatePath <String>]
[-PrivateKeyFile <String>]
[-SshClientFolder <String>]
[-Force]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
FromPublicKey
New-AzSftpCertificate
-PublicKeyFile <String>
[-CertificatePath <String>]
[-SshClientFolder <String>]
[-Force]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
FromPrivateKey
New-AzSftpCertificate
-PrivateKeyFile <String>
[-CertificatePath <String>]
[-SshClientFolder <String>]
[-Force]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
LocalUser
New-AzSftpCertificate
-LocalUser <String>
[-CertificatePath <String>]
[-PrivateKeyFile <String>]
[-SshClientFolder <String>]
[-Force]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
L’applet de commande New-AzSftpCertificate génère des certificats SSH pour l’authentification SFTP à l’aide de vos informations d’identification de Microsoft Entra actuelles. Cette applet de commande fournit les mêmes méthodes d’authentification et ensembles de paramètres que le module Az.Ssh, ce qui garantit la cohérence entre les modules Azure PowerShell.
L’applet de commande prend en charge quatre modes d’authentification qui s’alignent sur le module SSH :
Default Mode (authentification Microsoft Entra) : lorsqu'aucun fichier de clé spécifique n'est fourni, l'applet de commande génère automatiquement une nouvelle paire de clés SSH et crée un certificat signé par l'autorité de certification approuvée de Microsoft Entra. Il s’agit de l’approche la plus simple pour bien démarrer avec l’authentification SFTP.
FromPublicKey Mode : lorsqu’un fichier de clé publique est fourni, l’applet de commande génère un certificat pour cette clé spécifique à l’aide de Microsoft Entra informations d’identification. Cela est utile lorsque vous disposez déjà de clés publiques SSH et que vous souhaitez les utiliser pour stockage Azure l’accès SFTP.
FromPrivateKey Mode : lorsqu’un fichier de clé privée est fourni, l’applet de commande génère la clé publique correspondante et crée un certificat à l’aide de Microsoft Entra informations d’identification. Cela est utile lorsque vous disposez de clés privées existantes et que vous souhaitez créer des certificats pour eux.
Mode LocalUser : lorsqu’un utilisateur local est spécifié, l’applet de commande génère un certificat adapté à l’authentification de l’utilisateur local sur les comptes de stockage. Cela peut être combiné avec des clés privées existantes ou générer de nouvelles clés, correspondant aux fonctionnalités de certificat utilisateur local du module SSH.
Les certificats générés sont généralement valides pendant 1 heure et peuvent être utilisés avec n’importe quel client SFTP qui prend en charge l’authentification par certificat SSH. Les certificats sont signés par l'autorité de certification approuvée de Microsoft Entra et sont acceptés par stockage Azure comptes où votre identité Microsoft Entra dispose des autorisations appropriées.
Vous devez être connecté à Azure avec un compte disposant d’autorisations RBAC appropriées (par exemple, contributeur aux données blob de stockage ou propriétaire des données blob de stockage) sur les comptes de stockage cibles.
Exemples
Exemple 1 : Générer un certificat avec la génération automatique de clés
New-AzSftpCertificate
Cette commande génère une nouvelle paire de clés SSH et crée un certificat signé par Microsoft Entra. La paire de clés et le certificat sont enregistrés dans le répertoire temporaire système avec des noms de fichiers générés automatiquement. Il s’agit du moyen le plus simple de bien démarrer avec l’authentification SFTP.
Exemple 2 : Générer un certificat avec un chemin personnalisé
New-AzSftpCertificate -CertificatePath "C:\certs\azure-sftp.cert"
Cette commande génère une nouvelle paire de clés SSH et crée un certificat, en enregistrant le certificat dans le chemin spécifié. Les clés privées et publiques seront enregistrées dans le même répertoire avec des noms correspondants (azure-sftp et azure-sftp.pub).
Exemple 3 : Générer un certificat à partir d’une clé privée existante
New-AzSftpCertificate -PrivateKeyFile "C:\keys\id_rsa" -CertificatePath "C:\certs\id_rsa.cert"
Cette commande génère un certificat à partir d’une clé privée SSH existante. L’applet de commande dérive automatiquement la clé publique de la clé privée et crée un certificat signé par Microsoft Entra. Cela est utile lorsque vous disposez de clés privées existantes et que vous souhaitez créer des certificats pour eux.
Exemple 4 : Générer un certificat à partir d’une clé publique existante
New-AzSftpCertificate -PublicKeyFile "C:\keys\id_rsa.pub" -CertificatePath "C:\certs\id_rsa.cert"
Cette commande génère un certificat à partir d’une clé publique SSH existante. Cela est utile lorsque vous souhaitez créer des certificats pour les clés publiques existantes déjà configurées sur les comptes de stockage.
Exemple 5 : Générer un certificat pour l’authentification utilisateur locale
New-AzSftpCertificate -LocalUser "sftpuser" -CertificatePath "C:\certs\localuser.cert"
Cette commande génère un certificat adapté à l’authentification utilisateur locale sur les comptes de stockage. Une nouvelle paire de clés est générée et le certificat est configuré pour l’utilisateur local spécifié. Cela s’aligne sur les fonctionnalités d’authentification des utilisateurs locaux du module SSH.
Exemple 6 : Générer un certificat pour l’utilisateur local avec une clé privée existante
New-AzSftpCertificate -LocalUser "sftpuser" -PrivateKeyFile "C:\keys\existing_key" -CertificatePath "C:\certs\localuser.cert"
Cette commande génère un certificat pour l’authentification utilisateur locale à l’aide d’une clé privée existante. Cela est utile lorsque vous souhaitez utiliser des clés spécifiques pour l’authentification utilisateur locale sur les comptes de stockage.
Exemple 7 : Générer un certificat avec des chemins automatiques
$cert = New-AzSftpCertificate
Write-Host "Certificate: $($cert.CertificatePath)"
Write-Host "Private Key: $($cert.PrivateKeyPath)"
Write-Host "Valid Until: $($cert.ValidUntil)"
Cette commande génère un certificat avec des chemins automatiques de génération de clés et de fichiers temporaires. L’objet retourné contient tous les chemins d’accès de fichier et les informations de certificat, ce qui facilite l’utilisation par programme.
Exemple 8 : Générer un certificat et utiliser avec Connect-AzSftp
# Generate certificate for local user
$cert = New-AzSftpCertificate -LocalUser "sftpuser" -CertificatePath "C:\certs\sftp-auth.cert"
# Use the certificate to connect to storage account
$process = Connect-AzSftp -StorageAccount "mystorageaccount" -LocalUser "sftpuser" -PrivateKeyFile $cert.PrivateKeyPath
# Display connection info
Write-Host "SFTP connection established using certificate: $($cert.CertificatePath)"
Write-Host "Process ID: $($process.Id)"
Cet exemple illustre le flux de travail complet de génération d’un certificat et l’utilise immédiatement pour la connexion SFTP, montrant l’intégration entre les deux applets de commande.
Exemple 9 : Générer un certificat avec un emplacement client SSH personnalisé
New-AzSftpCertificate -CertificatePath "C:\certs\custom-cert.pub" -SshClientFolder "C:\Program Files\OpenSSH"
Cette commande génère un certificat à l’aide d’exécutables SSH à partir d’un emplacement spécifique. Cela est utile lorsque vous avez installé plusieurs implémentations SSH ou lorsque ssh-keygen n’est pas dans le chemin d’accès par défaut.
Paramètres
-CertificatePath
Chemin d’accès à l’écriture d’un certificat SSH.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Fichier de sortie, o |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Cf |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-DefaultProfile
Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.
Propriétés du paramètre
| Type: | IAzureContextContainer |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | AzContext, AzureRmContext, AzureCredential |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Force
Force l’exécution de la commande sans demander la confirmation de l’utilisateur pour remplacer les paires de clés SSH existantes.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LocalUser
Nom d’utilisateur d’un utilisateur local dans le compte de stockage cible.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
LocalUser
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-PrivateKeyFile
Chemin d’accès au fichier de clé privée.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | i |
Jeux de paramètres
Default
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
LocalUser
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-PublicKeyFile
Chemin d’accès au fichier de clé publique.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | p |
Jeux de paramètres
FromPublicKey
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-SshClientFolder
Répertoire contenant des exécutables SSH (ssh-keygen).
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Wi |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.