Accede a los servidores HTTP que se ejecutan en una estación de trabajo

De forma predeterminada, puedes acceder a los puertos HTTP 80 y a los puertos 1024 a 65535 en tus estaciones de trabajo desde tu navegador. Para restringir los puertos a los que puedes acceder en las estaciones de trabajo, configura allowedPorts en la configuración de la estación de trabajo.

Las estaciones de trabajo en ejecución tienen una propiedad host que puedes usar para conectarte a través de HTTP desde un navegador remoto. Para encontrar la propiedad host, obtén detalles de una estación de trabajo en ejecución a través de la API, Google Cloud CLI, la consola de Google Cloud o imprime la variable de entorno $WEB_HOST, que se establece automáticamente en tu estación de trabajo. La URL se conecta al puerto 80 de forma predeterminada.

Formato de URL predeterminado de la estación de trabajo

La URL de la propiedad host usa el siguiente formato de forma predeterminada:

https://PORT-WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev

Los marcadores de posición representan lo siguiente:

  • PORT: Es el número de puerto, que es el puerto 80 de forma predeterminada.
  • WORKSTATION_NAME: El nombre de la estación de trabajo.
  • CLUSTER_ID: Es el identificador del clúster generado de forma aleatoria.
  • cloudworkstations.dev: Es el nombre de dominio predeterminado de una estación de trabajo.

    Las URLs de los dominios personalizados usan un formato diferente. Para obtener más información sobre la configuración de dominios personalizados en Cloud Workstations, consulta Configura dominios personalizados para Cloud Workstations.

Cambia la URL para conectarte a otro puerto

Para conectarte a otro puerto, especifica un número de puerto diferente como prefijo. Por ejemplo, la siguiente URL se conecta al puerto 9900:

https://9900-myworkstation.cluster-12345abcde.cloudworkstations.dev

En este ejemplo, ten en cuenta lo siguiente:

  • 9900: Representa el número de puerto.
  • myworkstation: Representa el ID de la estación de trabajo.
  • cluster-12345abcde: Representa el identificador del clúster.
  • cloudworkstations.dev: Representa el nombre de dominio predeterminado de una estación de trabajo.

Estas URLs requieren la autenticación del usuario. Para acceder a estas URLs, debes haber accedido y tener el rol de IAM de usuario de Cloud Workstations, roles/workstations.user, o el permiso workstations.workstations.use.

Cómo conectarse a una app HTTP desde la consola de Google Cloud

Puedes conectarte a una app HTTP que se ejecuta en una estación de trabajo desde la consola de Google Cloud.

En cada estación de trabajo en ejecución para la que tengas permisos de uso, verás un botón Launch. De forma predeterminada, este botón se conecta en el puerto 80. Puedes hacer clic en la flecha del arrow_drop_downexpandidor junto a Launch para ver opciones de conexión alternativas. La opción Conéctate a la app web en el puerto te permite especificar un puerto diferente al que conectarte.

Cómo conectarse a una app HTTP desde el editor de base

Para conectarte a una app que se ejecuta en tu estación de trabajo desde el editor de base, sigue cualquiera de estas instrucciones:

  • Haz clic en los vínculos de localhost en la terminal. El editor base redirecciona automáticamente los vínculos de localhost a las URLs correctas.

    1. Para abrir una ventana de la terminal, haz clic en menú Menu > Terminal > New Terminal. También puedes presionar Control + Mayúsculas +` (o Comando + Mayúsculas +` en macOS).

    2. En el símbolo del sistema, ejecuta el siguiente comando para mostrar el vínculo de localhost:

      echo http://localhost:PORT
      

      Reemplaza PORT por un número de puerto, como 80 o 8080.

    3. Mantén presionada la tecla Control (o Comando en macOS) y, luego, haz clic en el vínculo localhost.
      Se abrirá PORT-WORKSTATION-HOSTNAME en tu navegador.

  • Usa la ventana del navegador: Navega a https://PORT-WORKSTATION-HOSTNAME, en la que PORT es el número de puerto y WORKSTATION-HOSTNAME es el nombre de host de la estación de trabajo.

Cómo restringir el acceso a los puertos de una estación de trabajo

Para restringir los puertos a los que se puede acceder en una estación de trabajo, configura allowedPorts en la configuración de la estación de trabajo.

Para restringir un solo puerto, establece los campos PortRange first y last en el mismo número de puerto.

De forma predeterminada, se permiten los puertos 22, 80 y 1024-65535.

Para crear una configuración de estación de trabajo con acceso de puerto restringido a 80 y 8080 a 8100, ejecuta el siguiente comando de Google Cloud CLI:

    gcloud beta workstations configs create CONFIG \
        --cluster=CLUSTER \
        --region=REGION \
        --project=PROJECT \
        --allowed-ports=first=80,last=80 \
        --allowed-ports=first=8080,last=8100

Solicitudes de comprobación previa de CORS

De forma predeterminada, el servicio de estaciones de trabajo se asegura de que todas las solicitudes a la estación de trabajo se autentiquen con una cookie o un encabezado de autenticación.

Las solicitudes de verificación previa del uso compartido de recursos entre dominios (CORS) no incluyen cookies ni encabezados personalizados, por lo que se consideran no autenticadas y el servicio de estaciones de trabajo las bloquea. De manera opcional, los administradores pueden permitir solicitudes de comprobación previa de CORS no autenticadas en la estación de trabajo, donde se convierte en responsabilidad del servidor de destino de la estación de trabajo validar la solicitud.

Para permitir solicitudes de verificación previa de CORS no autenticadas, ejecuta el siguiente comando de Google Cloud CLI:

    gcloud beta workstations configs update CONFIG \
        --cluster=CLUSTER \
        --region=REGION \
        --project=PROJECT \
        --allow-unauthenticated-cors-preflight-requests