Avant de commencer
- Si ce n'est pas déjà fait, créez une paire de clés SSH.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Trusted Cloud by S3NS .
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée. Après vous être connecté, initialisez Google Cloud CLI en exécutant la commande suivante :
gcloud init
- Set a default region and zone.
Terraform
Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez les Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Pour en savoir plus, consultez Set up authentication for a local development environment.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Trusted Cloud .
Ajouter des clés SSH aux VM qui utilisent des clés SSH basées sur des métadonnées
Les VM stockent les clés SSH dans les métadonnées de projet et d'instance Compute Engine. Si OS Login est activé pour une VM, l'agent invité de la VM ignore les clés stockées dans les métadonnées.
Vous pouvez utiliser des clés SSH stockées dans les métadonnées du projet pour accéder à toutes les VM d'un projet. Vous pouvez utiliser des clés SSH stockées dans les métadonnées d'instance pour accéder à des VM individuelles.
Compute Engine ne supprime pas automatiquement les clés SSH expirées des métadonnées au moment de l'expiration, mais ces clés ne peuvent pas être utilisées pour établir de nouvelles connexions aux VM. Si vous souhaitez supprimer des clés expirées des métadonnées, consultez la section Supprimer les clés SSH des VM qui utilisent des clés basées sur les métadonnées.
Vous pouvez ajouter une clé SSH publique aux métadonnées de projet ou d'instance de VM à l'aide de la console Trusted Cloud , de gcloud CLI ou de REST. Vous ne pouvez pas définir de valeurs de métadonnées zonales pour les clés SSH.
Ajouter des clés SSH aux métadonnées du projet
Vous pouvez ajouter une clé SSH publique aux métadonnées de projet pour accéder à toutes les VM d'un projet, à l'exception des VM qui bloquent les clés SSH à l'échelle du projet. Pour en savoir plus sur le blocage des clés SSH à l'échelle du projet, consultez la section Bloquer des clés SSH pour les VM qui utilisent des clés SSH basées sur les métadonnées.
Console
Pour ajouter une clé SSH publique aux métadonnées du projet à l'aide de la consoleTrusted Cloud , procédez comme suit :
Dans la console Trusted Cloud , accédez à la page Métadonnées.
Accéder à la page "Métadonnées"
Cliquez sur l'onglet Clés SSH.
Cliquez sur Modifier.
Cliquez sur Ajouter un élément.
Dans le champ Clé SSH qui s'ouvre, ajoutez votre clé SSH publique. La clé doit être dans l'un des formats suivants :
- Format d'une clé sans délai d'expiration :
KEY_VALUE USERNAME
- Format d'une clé avec un délai d'expiration :
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter à des VM en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Cliquez sur Enregistrer.
gcloud
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Si les métadonnées de projet contiennent des clés SSH, vous devez les rajouter chaque fois que vous ajoutez une clé SSH à l'aide de gcloud CLI. Si vous n'ajoutez pas à nouveau vos clés existantes, l'ajout d'une nouvelle clé efface les clés existantes.
Pour ajouter une clé SSH publique aux métadonnées du projet à l'aide de gcloud CLI, procédez comme suit :
Si votre projet possède déjà des clés SSH publiques à l'échelle du projet, récupérez-les à partir des métadonnées et ajoutez-les dans un nouveau fichier :
Exécutez la commande
gcloud compute project-info describe
pour obtenir les clés SSH du projet :gcloud compute project-info describe \ --format="value(commonInstanceMetadata[items][ssh-keys])"
Le résultat ressemble à ce qui suit :
username:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ... username:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...
Copiez la valeur de métadonnées
ssh-keys
.Créez et ouvrez un fichier texte sur votre poste de travail local.
Dans le fichier, collez la liste de clés que vous venez de copier.
Ajoutez votre nouvelle clé à la fin de la liste, dans l'un des formats suivants :
- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Enregistrez et fermez le fichier.
Exécutez la commande
gcloud compute project-info add-metadata
pour définir la valeurssh-keys
à l'échelle du projet :gcloud compute project-info add-metadata --metadata-from-file=ssh-keys=KEY_FILE
Remplacez
KEY_FILE
par l'un des éléments suivants :- Chemin d'accès au fichier que vous avez créé à l'étape précédente, si le projet comportait des clés SSH existantes.
- Chemin d'accès à votre nouveau fichier de clé SSH publique, si le projet ne disposait pas de clés SSH existantes.
Terraform
Pour ajouter une clé SSH publique aux métadonnées de votre projet, utilisez la ressource
google_compute_project_metadata
.REST
S'il existe déjà des clés SSH dans les métadonnées du projet, vous devez les ajouter à nouveau aux métadonnées de projet chaque fois que vous ajoutez une nouvelle clé SSH à l'aide de l'API Compute Engine. Si vous n'ajoutez pas à nouveau vos clés existantes, l'ajout d'une nouvelle clé efface les clés existantes.
Pour ajouter une clé SSH publique aux métadonnées du projet à l'aide de l'API Compute Engine, procédez comme suit :
Récupérez les valeurs
fingerprint
etssh-keys
des métadonnées à l'aide de la méthodeprojects.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
Remplacez
PROJECT_ID
par l'ID du projet.La réponse est semblable à ce qui suit :
... "fingerprint": "utgYE_XWtE8=", "items": [ { "key": "ssh-keys", "value": "cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF...\nbaklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"}" } ] ...
Ajoutez la nouvelle valeur
ssh-keys
à l'aide de la méthodeprojects.setCommonInstanceMetadata
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/setCommonInstanceMetadata { "items": [ { "key": "ssh-keys", "value": "EXISTING_SSH_KEYS\nNEW_SSH_KEY" } ] "fingerprint": "FINGERPRINT" }
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet.EXISTING_SSH_KEYS
: valeur de la cléssh-keys
de la réponse de la requêteprojects.get
FINGERPRINT
: valeur defingerprint
à partir de la réponse de la requêteprojects.get
NEW_SSH_KEY
: nouvelle clé SSH, dans l'un des formats suivants :- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Ajouter des clés SSH aux métadonnées d'une instance
Vous pouvez ajouter une clé SSH publique aux métadonnées d'instance lorsque vous créez une VM ou après la création d'une VM.
Ajouter des clés SSH aux métadonnées d'une instance lors de la création d'une VM
Vous pouvez ajouter des clés SSH aux métadonnées d'une instance lors de la création de la VM à l'aide de la consoleTrusted Cloud , de gcloud CLI ou de l'API Compute Engine.
Console
Pour créer une instance et ajouter simultanément une clé SSH publique aux métadonnées d'instance à l'aide de la console Trusted Cloud , procédez comme suit :
Dans la console Trusted Cloud , accédez à la page Créer une instance.
Pour ajouter une clé SSH publique aux métadonnées d'instance, procédez comme suit :
Dans le menu de navigation, cliquez sur Sécurité.
Développez la section Gérer l'accès.
Pour désactiver OS Login, décochez la case Contrôler l'accès aux VM à l'aide des autorisations IAM.
Si vous souhaitez autoriser les clés SSH publiques dans les métadonnées du projet à accéder à l'instance, décochez la case Bloquer les clés SSH à l'échelle du projet.
Dans la section Ajouter des clés SSH générées manuellement, cliquez sur Ajouter un élément.
Ajoutez votre clé publique dans la zone de texte. La compression doit être dans l'un des formats suivants :
- Format d'une clé sans délai d'expiration :
KEY_VALUE USERNAME
- Format d'une clé avec un délai d'expiration :
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter à des VM en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Facultatif : spécifiez d'autres options de configuration. Pour en savoir plus, consultez Options de configuration lors de la création d'une instance.
Pour créer et démarrer l'instance, cliquez sur Créer.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Pour créer une VM et ajouter simultanément une clé SSH publique aux métadonnées d'instance à l'aide de gcloud CLI, utilisez la commande
gcloud compute instances create
:gcloud compute instances create VM_NAME \ --metadata=ssh-keys=PUBLIC_KEY
Remplacez les éléments suivants :
VM_NAME
: nom de la nouvelle VMPUBLIC_KEY
: clé SSH publique, dans l'un des formats suivants :- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Vous pouvez ajouter plusieurs clés SSH à l'aide de l'option
--metadata-from-file=ssh-keys=FILE_PATH
. Dans le fichier, ajoutez une liste de noms d'utilisateur et de clés SSH publiques dans l'un des formats précédents.PROJECT_ID
: ID du projetZONE
: zone de la VM- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
Terraform
Pour ajouter une clé SSH publique aux métadonnées de votre instance, utilisez la ressource
google_compute_instance
.REST
Pour créer une VM et ajouter simultanément une clé SSH publique aux métadonnées d'instance à l'aide de Compute Engine, envoyez une requête
POST
à la méthodeinstances.insert
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Remplacez les éléments suivants :
Dans le corps de la requête, indiquez les noms d'utilisateur et les clés SSH publiques dans la propriété
items
:... { "items": [ { "key": "ssh-keys", "value": "PUBLIC_KEY" } ] } ...
Remplacez
PUBLIC_KEY
par votre clé publique, dans l'un des formats suivants :Remplacez les éléments suivants :
Vous pouvez ajouter plusieurs clés SSH en ajoutant
\n
entre les clés.Ajouter des clés SSH aux métadonnées d'une instance après la création d'une VM
Vous pouvez ajouter des clés SSH aux métadonnées d'instance après la création de la VM à l'aide de la consoleTrusted Cloud , de gcloud CLI ou de l'API Compute Engine.
Console
Pour ajouter une clé SSH publique aux métadonnées d'instance à l'aide de la consoleTrusted Cloud , procédez comme suit :
Dans la console Trusted Cloud , accédez à la page Instances de VM.
Cliquez sur le nom de la VM pour laquelle vous souhaitez ajouter une clé SSH.
Cliquez sur Modifier.
Sous Clés SSH, cliquez sur Ajouter un élément.
Ajoutez votre clé publique dans la zone de texte. La compression doit être dans l'un des formats suivants :
- Format d'une clé sans délai d'expiration :
KEY_VALUE USERNAME
- Format d'une clé avec un délai d'expiration :
KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter à des VM en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
Cliquez sur Enregistrer.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Si les métadonnées d'instance contiennent des clés SSH, vous devez les rajouter chaque fois que vous ajoutez une clé SSH à l'aide de gcloud CLI. Si vous n'ajoutez pas à nouveau vos clés existantes, l'ajout d'une nouvelle clé efface les clés existantes.
Pour ajouter une clé SSH publique aux métadonnées d'instance à l'aide de gcloud CLI, procédez comme suit :
Si votre VM possède déjà des clés SSH publiques au niveau de l'instance, récupérez-les à partir des métadonnées et ajoutez-les à un nouveau fichier :
Exécutez la commande
gcloud compute instances describe
pour obtenir les métadonnées de la VM :gcloud compute instances describe VM_NAME
Remplacez VM_NAME par le nom de la VM pour laquelle vous devez ajouter ou supprimer des clés SSH publiques.
Le résultat ressemble à ce qui suit :
... metadata: ...
- key: ssh-keys
value: |- cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... baklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"} ...Copiez la valeur de métadonnées
ssh-keys
.Créez et ouvrez un fichier texte sur votre poste de travail local.
Dans le fichier, collez la liste de clés que vous venez de copier.
Ajoutez votre nouvelle clé à la fin de la liste, dans l'un des formats suivants :
- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Enregistrez et fermez le fichier.
Exécutez la commande
gcloud compute instances add-metadata
pour définir la valeurssh-keys
:gcloud compute instances add-metadata VM_NAME --metadata-from-file ssh-keys=KEY_FILE
Remplacez les éléments suivants :
VM_NAME
: VM pour laquelle vous souhaitez supprimer la clé SSH.KEY_FILE
par l'un des éléments suivants :- Chemin d'accès au fichier que vous avez créé à l'étape précédente, si la VM disposait de clés SSH.
- Chemin d'accès à votre nouveau fichier de clé SSH publique, si le projet ne disposait pas de clés SSH existantes.
Récupérez les valeurs
fingerprint
etssh-keys
des métadonnées à l'aide de la méthodeinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet.ZONE
: zone de la VM pour laquelle vous ajoutez une clé SSH.VM_NAME
: VM pour laquelle vous ajoutez une clé SSH.
La réponse est semblable à ce qui suit :
... "fingerprint": "utgYE_XWtE8=", "items": [ { "key": "ssh-keys", "value": "cloudysanfrancisco:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF...\nbaklavainthebalkans:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQDx3FNVC8... google-ssh {"userName":"baklavainthebalkans","expireOn":"2021-06-14T16:59:03+0000"}" } ] ...
Ajoutez la nouvelle valeur
ssh-keys
à l'aide de la méthodeinstances.setMetadata
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMetadata { "items": [ { "key": "ssh-keys", "value": "EXISTING_SSH_KEYS\nNEW_SSH_KEY" } ] "fingerprint": "FINGERPRINT" }
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet.EXISTING_SSH_KEYS
: valeur de la cléssh-keys
de la réponse de la requêteinstances.get
FINGERPRINT
:fingerprint
à partir de la réponse de la requêteprojects.get
NEW_SSH_KEY
: nouvelle clé SSH, dans l'un des formats suivants :- Format d'une clé sans délai d'expiration :
USERNAME:KEY_VALUE
- Format d'une clé avec un délai d'expiration :
USERNAME:KEY_VALUE google-ssh {"userName":"USERNAME","expireOn":"EXPIRE_TIME"}
Remplacez les éléments suivants :
KEY_VALUE
: valeur de la clé SSH publiqueUSERNAME
: votre nom d'utilisateur. Par exemple,cloudysanfrancisco
oucloudysanfrancisco_gmail_com
.Pour les VM Linux,
USERNAME
ne peut pas être défini surroot
, sauf si vous configurez votre VM pour autoriser la connexion racine. Pour en savoir plus, consultez la section Se connecter aux instances en tant qu'utilisateur racine.Pour les VM Windows qui utilisent Active Directory (AD), le nom d'utilisateur doit être précédé du domaine AD, au format
DOMAIN\
. Par exemple, l'utilisateurcloudysanfrancisco
du domaine ADad.example.com
possède unUSERNAME
deexample\cloudysanfrancisco
.EXPIRE_TIME
: heure d'expiration de la clé, au format ISO 8601. Par exemple :2021-12-04T20:12:00+0000
.
- Format d'une clé sans délai d'expiration :
REST
Si les métadonnées d'instance contiennent des clés SSH, vous devez les rajouter chaque fois que vous ajoutez une clé SSH à l'aide de l'API Compute Engine. Si vous n'ajoutez pas à nouveau vos clés existantes, l'ajout d'une nouvelle clé efface les clés existantes.
Pour ajouter une clé SSH publique aux métadonnées d'instance à l'aide de l'API Compute Engine, procédez comme suit :
Étape suivante
- Découvrez comment vous connecter à des VM.
- Découvrez comment transférer des fichiers vers des VM.
- Découvrez comment les connexions SSH aux VM Linux fonctionnent sur Compute Engine.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/19 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/08/19 (UTC)."],[[["\u003cp\u003eThis document details how to add SSH keys to virtual machines (VMs) using OS Login or metadata-based SSH keys, which is an optional procedure as Google Cloud can create and manage them for you.\u003c/p\u003e\n"],["\u003cp\u003eYou can add SSH keys to your Google Account for VMs that use OS Login, which generates a username based on your account email, or to project and instance metadata for VMs not using OS Login.\u003c/p\u003e\n"],["\u003cp\u003eAdding SSH keys to project metadata allows access to all VMs in a project, while adding them to instance metadata grants access to specific VMs.\u003c/p\u003e\n"],["\u003cp\u003eWhen adding new SSH keys through the gcloud CLI or REST, you need to re-add any existing SSH keys, to avoid erasing them, while also providing the ability to include an expiration time for the key.\u003c/p\u003e\n"],["\u003cp\u003eMethods to add SSH Keys to VMs can be done through the Google Cloud Console, gcloud CLI, Terraform, or REST API.\u003c/p\u003e\n"]]],[],null,[]] -