Par défaut, vous pouvez vous connecter aux ports HTTP 80 et aux ports 1024 à 65535 sur vos stations de travail depuis votre navigateur. Vous pouvez limiter les ports auxquels vous pouvez vous connecter sur vos stations de travail en définissant allowedPorts dans la configuration de la station de travail.
Les stations de travail en cours d'exécution possèdent une propriété host que vous pouvez utiliser pour vous connecter via HTTP à partir d'un navigateur distant. Vous pouvez trouver la propriété host en obtenant les détails d'une station de travail en cours d'exécution via l'API, Google Cloud CLI, la console Google Cloud ou en imprimant la variable d'environnement $WEB_HOST, qui est automatiquement définie dans votre station de travail.
L'URL se connecte par défaut au port 80.
Format d'URL de station de travail par défaut
L'URL de la propriété host utilise par défaut le format suivant :
https://PORT-WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev
Les espaces réservés représentent les éléments suivants :
PORT: numéro de port, qui est le port80par défaut.WORKSTATION_NAME: nom de la station de travail.CLUSTER_ID: identifiant de cluster généré de manière aléatoire.cloudworkstations.dev: nom de domaine par défaut d'une station de travail.Les URL des domaines personnalisés utilisent un format différent. Pour en savoir plus sur la configuration de domaines personnalisés dans Cloud Workstations, consultez Configurer des domaines personnalisés pour Cloud Workstations.
Se connecter à un autre port en modifiant l'URL
Pour vous connecter sur un autre port, spécifiez un autre numéro de port comme préfixe. Par exemple, l'URL suivante se connecte au port 9900 :
https://9900-myworkstation.cluster-12345abcde.cloudworkstations.dev
Dans cet exemple, notez les points suivants :
9900: représente le numéro de port.myworkstation: représente l'ID de la station de travail.cluster-12345abcde: représente l'identifiant du cluster.cloudworkstations.dev: représente le nom de domaine par défaut d'une station de travail.
Ces URL nécessitent l'authentification de l'utilisateur. Pour ouvrir ces URL, vous devez être connecté et disposer du rôle IAM "Utilisateur Cloud Workstations" (roles/workstations.user) ou de l'autorisation workstations.workstations.use.
Si votre cluster de stations de travail est configuré avec des ports d'accès direct, au lieu d'encoder le port en tant que préfixe, vous pouvez vous connecter à un port configuré en ajoutant :PORT au nom d'hôte de la station de travail.
Par exemple, après avoir configuré le port 9900 en tant que port d'accès direct, l'URL suivante se connecte également au port 9900 :
https://myworkstation.cluster-12345abcde.cloudworkstations.dev:9900
Se connecter à une application HTTP depuis la console Google Cloud
Vous pouvez vous connecter à une application HTTP exécutée sur une station de travail à partir de la consoleGoogle Cloud .
Pour toute station de travail en cours d'exécution que vous êtes autorisé à utiliser, un bouton Lancer s'affiche. Par défaut, ce bouton se connecte sur le port 80. Vous pouvez cliquer sur la flèche de développement arrow_drop_down à côté de Lancer pour afficher d'autres options de connexion. L'option Se connecter à l'application Web sur le port vous permet de spécifier un autre port auquel vous connecter.
Se connecter à une application HTTP depuis l'éditeur de base
Pour vous connecter à une application exécutée sur votre poste de travail à partir de l'éditeur de base Cloud Workstations, suivez l'une de ces instructions :
Cliquez sur les liens localhost dans le terminal. L'éditeur de base redirige automatiquement les liens localhost vers les URL appropriées.
Pour ouvrir une fenêtre de terminal, cliquez sur menu Menu > Terminal > New Terminal (Nouveau terminal). Vous pouvez également appuyer sur Ctrl+Maj+` (ou Cmd+Maj+` sous macOS).
À l'invite de commande, exécutez la commande suivante pour afficher le lien localhost :
echo http://localhost:PORTRemplacez
PORTpar un numéro de port, tel que80ou8080.Maintenez la touche Ctrl (ou Commande sous macOS) enfoncée, puis cliquez sur le lien localhost.
PORT-WORKSTATION_HOSTNAMEs'ouvre dans votre navigateur.
Utilisez la fenêtre du navigateur : accédez à
https://PORT-WORKSTATION_HOSTNAME, oùPORTest le numéro de port etWORKSTATION_HOSTNAMEest le nom d'hôte de votre poste de travail.
Configurer les ports d'accès direct
Par défaut, lorsque vous vous connectez à un port de station de travail en encodant le port en tant que préfixe dans l'URL, votre requête se connecte à la passerelle du cluster via le port HTTPS 443, et la passerelle transfère la requête à PORT sur votre station de travail.
Pour vous connecter directement à un port de station de travail à l'aide du format d'URL https://WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev:PORT standard, vous devez configurer le port en tant que port d'accès direct sur le cluster de stations de travail.
Pour définir des ports d'accès direct sur un cluster de stations de travail existant, exécutez la commande Google Cloud CLI suivante :
gcloud beta workstations clusters update CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--direct-access-ports=80,8080
Vous ne pouvez configurer que le port 80 et les ports de la plage 1024 à 65535 en tant que ports d'accès direct. Vous ne pouvez pas non plus spécifier plus de huit ports d'accès direct par cluster de stations de travail.
Restreindre l'accès aux ports d'une station de travail
Pour limiter les ports auxquels il est possible de se connecter sur une station de travail, définissez allowedPorts dans les configurations de la station de travail.
Pour limiter un seul port, définissez les champs PortRange first et last sur le même numéro de port.
Par défaut, les ports 22, 80 et 1024 à 65535 sont autorisés.
Pour créer une configuration de station de travail avec un accès restreint aux ports 80 et 8080 à 8100, exécutez la commande Google Cloud CLI suivante :
gcloud workstations configs create CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--allowed-ports=first=80,last=80 \
--allowed-ports=first=8080,last=8100
Requêtes CORS préliminaires
Par défaut, Cloud Workstations s'assure que toutes les requêtes HTTP/HTTPS adressées à la station de travail sont authentifiées à l'aide d'un cookie ou d'un en-tête d'authentification.
Les requêtes préliminaires CORS (Cross-Origin Resource Sharing) n'incluent pas de cookies ni d'en-têtes personnalisés. Elles sont donc considérées comme non authentifiées et bloquées par Cloud Workstations. Les administrateurs peuvent éventuellement autoriser les requêtes CORS préliminaires non authentifiées à accéder à la station de travail, où il incombe au serveur de destination de la station de travail de valider la requête.
Pour autoriser les requêtes préliminaires CORS non authentifiées, exécutez la commande Google Cloud CLI suivante :
gcloud beta workstations configs update CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--allow-unauthenticated-cors-preflight-requests
Désactiver le remplacement de localhost dans les réponses HTTP
Pour permettre aux applications en cours de développement de s'exécuter correctement sur la station de travail, Cloud Workstations remplace les références à localhost, 127.0.0.1 et 0.0.0.0 par le nom d'hôte de la station de travail dans les réponses HTTP de la station de travail.
Cela peut interférer avec certaines applications. Pour désactiver ce comportement, exécutez la commande Google Cloud CLI suivante :
gcloud beta workstations configs update CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--disable-localhost-replacement