Acessar servidores HTTP em execução em uma estação de trabalho

Por padrão, é possível acessar as portas HTTP 80 e as portas 1024 para 65535 na sua estações de trabalho no seu navegador. É possível restringir as portas que você acessa suas estações de trabalho definindo allowedPorts na configuração da estação de trabalho.

As estações de trabalho em execução têm uma propriedade host que pode ser usada para se conectar usando HTTP em um navegador remoto. Para encontrar a propriedade host, consulte os detalhes de uma estação de trabalho em execução pela API, pela CLI do Google Cloud, pelo console do Google Cloud ou imprimindo a variável de ambiente $WEB_HOST, que é definida automaticamente na estação de trabalho. O URL se conecta na porta 80 por padrão.

Formato de URL padrão da estação de trabalho

Por padrão, o URL da propriedade host usa o seguinte formato:

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

Os marcadores de posição representam o seguinte:

  • PORT: o número da porta, que é 80 por padrão.
  • WORKSTATION_NAME: o nome da estação de trabalho.
  • CLUSTER_ID: o identificador do cluster gerado aleatoriamente
  • cloudworkstations.dev: o nome de domínio padrão de uma estação de trabalho.

    Os URLs para domínios personalizados usam um formato diferente. Para saber mais sobre como configurar domínios personalizados nas estações de trabalho do Cloud, consulte Configurar domínios personalizados para as estações de trabalho do Cloud.

Conecte-se a uma porta diferente alterando o URL

Para se conectar em uma porta diferente, especifique um número de porta diferente como prefixo. Por exemplo, o URL a seguir se conecta à porta 9900:

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

Neste exemplo, observe o seguinte:

  • 9900: representa o número da porta.
  • myworkstation: representa o ID da estação de trabalho.
  • cluster-12345abcde: representa o identificador do cluster.
  • cloudworkstations.dev: representa o nome de domínio padrão de uma estação de trabalho.

Esses URLs exigem autenticação do usuário. Para acessar esses URLs, é necessário fazer login e ter o papel do IAM de usuário do Cloud Workstations, roles/workstations.user, ou a permissão workstations.workstations.use.

Como se conectar a um app HTTP no console do Google Cloud

Você pode se conectar a um app HTTP executado em uma estação de trabalho pela console do Google Cloud.

Para qualquer estação de trabalho em execução que você tenha permissão para usar, será exibida uma Botão Iniciar. Por padrão, esse botão se conecta na porta 80. Você pode clicar na seta de expansão arrow_drop_down ao lado de Iniciar para conferir opções de conexão alternativas. A opção Conectar ao app da Web na porta permite especificar uma porta diferente para se conectar.

Como se conectar a um app HTTP no editor básico

Para se conectar a um app em execução na estação de trabalho pelo editor básico, siga uma destas instruções:

  • Clique nos links de localhost no terminal. O editor básico redireciona automaticamente os links de localhost para os URLs corretos.

    1. Para abrir uma janela de terminal, clique em menu Menu > Terminal > Novo terminal. Como alternativa, pressione Control + Shift + ` (ou Command + Shift +` no macOS).

    2. No prompt de comando, execute o comando a seguir para exibir o link do host local:

      echo http://localhost:PORT
      

      Substitua PORT por um número de porta, como 80 ou 8080.

    3. Mantenha a tecla Control pressionada (ou Command no macOS) e clique o link localhost.
      Isso abre PORT-WORKSTATION-HOSTNAME no navegador.

  • Use a janela do navegador: acesse https://PORT-WORKSTATION-HOSTNAME, em que PORT é o número da porta e WORKSTATION-HOSTNAME é sua estação de trabalho nome do host.

Como restringir o acesso à porta de uma estação de trabalho

Para restringir as portas que podem ser acessadas nas estações de trabalho, defina allowedPorts nas configurações da estação de trabalho.

Para restringir uma única porta, defina os campos PortRange first e last com o mesmo número de porta.

Por padrão, as portas 22, 80 e 1024-65535 são permitidas.

Para criar uma configuração de estação de trabalho com acesso restrito à porta 80 e 8080 para 8100, execute o seguinte comando da 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

Solicitações de pré-lançamento do CORS

Por padrão, o serviço de estações de trabalho garante que todas as solicitações para a estação de trabalho sejam autenticadas com um cookie ou cabeçalho de autenticação.

As solicitações simuladas de Compartilhamento de recursos entre origens (CORS) não incluem cookies. ou cabeçalhos personalizados e, por isso, são considerados não autenticados e bloqueados pelo de estações de trabalho. Os administradores podem permitir solicitações de simulação de CORS não autenticadas por para da estação de trabalho, passando a ser responsabilidade do na estação de trabalho para validar a solicitação.

Para permitir solicitações simuladas de CORS não autenticadas, execute o seguinte: Comando da Google Cloud CLI:

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