En este documento, se describe cómo autenticar y configurar el acceso a la API dentro de una
estación de trabajo, lo que incluye cómo
acceder con la IU de Workstations para
autenticar la CLI de gcloud y proporcionar credenciales a las
credenciales predeterminadas de la aplicación (ADC).
Autentícate como usuario con Google Cloud CLI
Después de iniciar Cloud Workstations, puedes acceder a los servicios de Google Cloud y a la API con
tus cuentas de usuario a través de la CLI de gcloud.
Para autenticar la CLI de gcloud y proporcionar credenciales de usuario a las credenciales predeterminadas de la aplicación (ADC), elige una de las siguientes opciones:
Acceso de usuarios con la IU de Workstations
Cuando accedes a través de la consola de Google Cloud , se autentica automáticamente la
CLI degcloud y se proporcionan tus credenciales de usuario a las
credenciales predeterminadas de la aplicación (ADC)
en el entorno de tu estación de trabajo.
Habilita el acceso a la IU en tus recursos de estación de trabajo
Antes de poder usar esta función, asegúrate de que la configuración de tu estación de trabajo y el clúster estén configurados para admitir el acceso a la IU:
-
En la consola de Google Cloud , ve a la sección
Configuración del entorno de la configuración de tu estación de trabajo. En
Autenticación, selecciona la casilla de verificación Habilitar el envío de credenciales
(o establece
enable_pushing_credentials: trueen la API). -
Establece la URL base de la consola en el clúster
en tu extremo de la consola de Google Cloud (por ejemplo,
https://console.cloud.google.com/) con la CLI degcloud:gcloud beta workstations clusters update CLUSTER_NAME \ --region=REGION \ --console-base-url="https://console.cloud.google.com/"
Accede desde tu estación de trabajo
Para acceder a tu estación de trabajo y autenticarla, sigue estos pasos:
- En el editor de Code OSS para Cloud Workstations, haz clic en Accede a tu estación de trabajo. Se abrirá una ventana de acceso a la consola de Google Cloud .
- En la consola de Google Cloud , verifica los detalles de tu estación de trabajo (como el ID de la estación de trabajo) y los detalles de la cuenta y, luego, haz clic en Continuar.
- Haz clic en Confirmar para completar el acceso.
-
Después de que aparezca el mensaje de confirmación, cierra la ventana del navegador y
regresa al editor.
Tus credenciales ahora están disponibles para la CLI de
gcloudy las credenciales predeterminadas de la aplicación (ADC) en el entorno de tu estación de trabajo.
Tu sesión de acceso vence después de una hora. Cuando tu sesión esté por vencer, el botón de acceso en el editor de Code OSS para Cloud Workstations mostrará EMAIL (Google) - Expiring soon (donde EMAIL es tu dirección de correo electrónico) o Workstation sign in expiring soon. Para actualizar tus credenciales, haz clic en el botón y sigue las indicaciones en la consola de Google Cloud .
Accede con la CLI de gcloud
Si el acceso a la IU no está habilitado para tu configuración o clúster, puedes
acceder de forma manual con la CLI de gcloud desde una terminal dentro de tu estación de trabajo:
- Abre una terminal en tu estación de trabajo. La forma de abrir una ventana de terminal depende del IDE que uses. Por ejemplo, si usas el editor base de Cloud Workstations, abre una terminal seleccionando Terminal > Nueva terminal o presionando Control + Mayúsculas +`.
- Autentícate con el siguiente comando:
gcloud auth login --no-launch-browser
- Sigue las instrucciones que proporciona el comando para autenticarte en Google Cloud.
- Especifica el ID del proyecto de Google Cloud con el siguiente comando:
gcloud config set project PROJECT_ID
-
Habilita las credenciales predeterminadas de la aplicación
para poder llamar a los servicios de Google Cloud .
gcloud auth application-default login
- Tus credenciales de la CLI de
gcloudahora se guardan y están disponibles cuando usas tu estación de trabajo en sesiones futuras.
Emite una solicitud HTTP a una estación de trabajo
Para emitir una solicitud HTTP a una estación de trabajo, necesitas un token de acceso para una cuenta que tenga el rol de usuario de Cloud Workstations en esa estación de trabajo:
- Genera un token de acceso con el método de la API generateAccessToken.
- Agrega un encabezado HTTP llamado
Authorizationcon el valorBearer $TOKEN.
Conéctate a la estación de trabajo en tu navegador
Cuando abres la URL de tu estación de trabajo en el navegador, se autentica automáticamente a través de un redireccionamiento al servidor de estaciones de trabajo y se recupera un token de acceso generado por el método de la API generateAccessToken. Esto redirecciona de vuelta a tu estación de trabajo y establece una cookie de autenticación que es válida para tu sesión actual de la estación de trabajo.
Para omitir este redireccionamiento, usa el parámetro de URL _workstationAccessToken:
- Genera un token de acceso con el método de API generateAccessToken.
- Abre la URL de tu estación de trabajo en el navegador y agrega un parámetro de URL
con el siguiente formato:
_workstationAccessToken=TOKEN.
Esto establece una cookie de autenticación en tu navegador que permite el acceso a tu sesión actual de la estación de trabajo. Omitir el redireccionamiento puede ser útil cuando las políticas de red bloquean el acceso al servidor de la estación de trabajo o cuando se usan iframes para mostrar la estación de trabajo en otros sitios.
Usar la identidad de una cuenta de servicio
Si las políticas de seguridad de tu organización impiden que las cuentas de usuario tengan los permisos necesarios, también puedes actuar en nombre de una cuenta de servicio. Para actuar en nombre de la cuenta de servicio especificada en la configuración de tu estación de trabajo, puedes especificar el campo Permisos de la cuenta de servicio.
gcloud workstations configs create CONFIG \
--cluster=CLUSTER \
--region=REGION \
--project=PROJECT \
--service-account=SERVICE_ACCOUNT \
--service-account-scopes=https://www.googleapis.com/auth/cloud-platform
iam.serviceAccounts.actAs en la cuenta de
servicio. Para obtener más información sobre cómo especificar permisos para la cuenta de servicio, consulta
Permisos de acceso.
¿Qué sigue?
- Obtén más información sobre la asistencia de SSH.
- Consulta una lista de parámetros de configuración de la estación de trabajo.
- Control de acceso con Identity and Access Management y Cloud Workstations