Para acceder a Google Cloud, por lo general, deberás autorizar a Google Cloud CLI. En esta página, se muestran las opciones de autorización disponibles y cómo administrar las cuentas que usas para la autorización. Si usas una instancia de Compute Engine o Cloud Shell, no es necesario que autorices gcloud CLI.
Tipos de cuenta
Si deseas otorgar autorización a gcloud CLI para acceder a Google Cloud, puedes usar una cuenta de usuario o una cuenta de servicio.
Una cuenta de usuario es una cuenta de Google Cloud que permite a los usuarios finales autenticarse en tu aplicación. Para la mayoría de los casos de uso, en especial de forma interactiva con gcloud CLId, se recomienda usar una cuenta de usuario.
Una cuenta de servicio es una cuenta de Google Cloud asociada a tu proyecto de Google Cloud y no a un usuario específico. Puedes usar la cuenta de servicio integrada disponible cuando usas Cloud Functions, App Engine, Compute Engine o Google Kubernetes Engine. Se recomienda una cuenta de servicio para ejecutar secuencias de comandos de gcloud CLI en varias máquinas.
Elige un tipo de autorización
Debes autorizar a Google Cloud CLI para que administre los recursos de Google Cloud. Tanto Google Cloud CLI como Google Cloud usan OAuth2 para la autenticación y autorización.
Elige uno de los siguientes tipos de autorización:
Tipo | Descripción |
---|---|
Cuenta de usuario | Se recomienda si usas gcloud CLI desde la línea de comandos o si escribes secuencias de comandos con gcloud CLI para usarla en una sola máquina. |
Cuenta de servicio | Se recomienda si instalas y configuras gcloud CLI
como parte de un proceso de implementación de máquinas en producción o para usarla en
instancias de máquina virtual de Compute Engine en las que todos los usuarios tienen acceso
a root . |
Para obtener más información sobre la autenticación y Google Cloud, consulta Descripción general de la autenticación.
Autoriza una cuenta de usuario
Usa los siguientes comandos de gcloud CLI para autorizar el acceso con una cuenta de usuario:
Comando | Descripción |
---|---|
gcloud init
|
Autoriza el acceso y realiza otros pasos de configuración comunes. |
gcloud auth login
|
Autoriza solo el acceso. |
Durante la autorización, estos comandos obtienen credenciales de cuenta de Google Cloud y las almacenan en el sistema local. La cuenta especificada se convertirá en la cuenta activa en tu configuración. La gcloud CLI usa las credenciales almacenadas para acceder a Google Cloud. Puedes tener cualquier cantidad de cuentas con credenciales almacenadas para una sola instalación de gcloud CLI, pero solo una cuenta está activa a la vez.
Ejecuta gcloud init
gcloud init
autoriza el acceso y realiza otros pasos de configuración comunes. gcloud init
usa un flujo de autorización basado en la Web para autenticar la cuenta de usuario y otorgar permisos de acceso.
Para autorizar el acceso y realizar otros pasos de configuración comunes:
Ejecuta
gcloud init
:gcloud init
O, para evitar que el comando abra automáticamente un navegador web, el siguiente:
gcloud init --console-only
Usar la marca
--console-only
es útil si ejecutas el comando desde un sistema remoto mediantessh
y no tienes acceso a un navegador en ese sistema. Debes, entonces, abrir manualmente la URL proporcionada en un navegador en tu sistema local para completar el proceso de autorización.Sigue el flujo de autorización basado en el navegador para autenticar la cuenta y otorgar permisos de acceso.
Para obtener más información sobre gcloud init
, consulta
Inicializa la CLI de gcloud.
Ejecuta gcloud auth login
Ejecutar gcloud auth login
solo autoriza la cuenta de usuario.
Para autorizar el acceso sin realizar otros pasos de configuración, usa una de las siguientes opciones.
Si deseas autorizar la gcloud CLI en una máquina con un navegador, sigue estos pasos.
Autoriza gcloud CLI:
gcloud auth login
Sigue el flujo de autorización basado en el navegador para autenticar la cuenta y otorgar permisos de acceso.
Si deseas autorizar la gcloud CLI en una máquina que no tiene un navegador y puedes instalar la gcloud CLI en otra máquina con un navegador, usa la marca
--no-browser
.Autoriza gcloud CLI:
gcloud auth login --no-browser
Copia el comando largo que comienza con
gcloud auth login --remote-bootstrap="
.Pega y ejecuta este comando en la línea de comandos de una máquina diferente y confiable que tenga instalaciones locales de un navegador web y la herramienta de gcloud CLI versión 372.0 o posterior.
Copia el resultado de la URL larga de la máquina con el navegador web.
Pega la URL larga en la primera máquina debajo del mensaje “Enter the output of the above command” y presiona Intro para completar la autorización.
Si deseas autorizar gcloud CLI en una máquina que no tiene navegador y no puedes instalar gcloud CLI en otra máquina con un navegador, usa la marca
--no-launch-browser
. La marca--no-launch-browser
evita que el comando abra un navegador web automáticamente.Autoriza gcloud CLI:
gcloud auth login --no-launch-browser
Copia la URL larga que comienza con
https://accounts.google.com/o/oauth2/auth...
.Pega esta URL en el navegador de otra máquina de confianza que tenga un navegador web.
Copia el código de autorización de la máquina con el navegador web.
Pega el código de autorización de nuevo en la primera máquina cuando aparezca el mensaje “Enter verification code” (Ingresar código de verificación) y presiona Intro para completar la autorización.
Si ya tienes un token de acceso, usa uno de los siguientes métodos para pasarlo a gcloud CLI:
- Almacena el token de acceso en un archivo y establece su ruta a través de la marca --access-token-file.
- Almacena el token de acceso en un archivo y configura su ruta de acceso en la propiedad auth/access_token_file.
- Configura la variable de entorno
CLOUDSDK_AUTH_ACCESS_TOKEN
con el valor del token de acceso.
Autoriza una cuenta de servicio
El comando gcloud auth login
puede autorizar el acceso con una cuenta de servicio mediante un archivo de credenciales almacenado en tu sistema de archivos local. Puede ser una credencial de usuario con permiso para usar la identidad de la cuenta de servicio, un archivo de configuración de credenciales para la federación de identidades para cargas de trabajo o una clave de cuenta de servicio.
Autoriza una cuenta de servicio con la suplantación de cuentas de servicio
A fin de autorizar a gcloud CLI para que use credenciales de cuenta de servicio suplantadas, haz lo siguiente:
En la consola de Google Cloud, ve a la página Cuentas de servicio.
Elige una cuenta existente o crea una nueva con un clic en Crear cuenta de servicio.
-
Para garantizar que la cuenta principal tenga el permiso necesario para usar la identidad de otra cuenta de servicio, pídele a tu administrador que le otorgue a la cuenta principal el rol de IAM Creador de tokens de cuenta de servicio (
roles/iam.serviceAccountTokenCreator
) en la cuenta de servicio. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.Este rol predefinido contiene el permiso
iam.serviceAccounts.getAccessToken
, que se requiere para usar la identidad de otra cuenta de servicio.Es posible que tu administrador también pueda otorgar este permiso a la cuenta principal con roles personalizados o con otros roles predefinidos.
Ejecuta
gcloud auth login
para autorizar gcloud CLI con tu identidad de usuario.Para configurar gcloud CLI a fin de que use la identidad y el acceso que proporciona una cuenta de servicio de forma predeterminada, usa el comando de configuración de la CLI de gcloud:
gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL
Para dejar de usar las credenciales de la cuenta de servicio suplantadas con la gcloud CLI de forma predeterminada, desactiva la marca con el gcloud CLI config command:
gcloud config unset auth/impersonate_service_account
Autoriza una cuenta de servicio mediante la federación de identidades para cargas de trabajo
Para autorizar gcloud CLI con una cuenta de servicio que use credenciales externas de la federación de identidades para cargas de trabajo, haz lo siguiente:
En la consola de Google Cloud, ve a la página Cuentas de servicio.
Elige una cuenta existente o crea una nueva con un clic en Crear cuenta de servicio.
Crea un archivo de configuración de credenciales para la federación de identidades para cargas de trabajo siguiendo las instrucciones de tu proveedor de identidad compatible.
Para activar la cuenta de servicio, ejecuta
gcloud auth login
con la marca--cred-file
:gcloud auth login --cred-file=CONFIGURATION_FILE
Reemplaza CONFIGURATION_FILE por la ruta de acceso a un archivo de configuración de credenciales para la federación de identidades para cargas de trabajo.
Autoriza una cuenta de servicio con una clave de cuenta de servicio
Para autorizar gcloud CLI con una cuenta de servicio mediante una clave de cuenta de servicio, haz lo siguiente:
En la consola de Google Cloud, ve a la página Cuentas de servicio.
Elige una cuenta existente o crea una nueva con un clic en Crear cuenta de servicio.
Para crear claves de cuenta de servicio, consulta las instrucciones de IAM sobre cómo crear una clave de cuenta de servicio.
Para activar la cuenta de servicio, ejecuta
gcloud auth login
con la marca--cred-file
:gcloud auth login --cred-file=KEY_FILE
Reemplaza KEY_FILE por la ruta de acceso al archivo de claves de la cuenta de servicio.
Mostrar cuentas
Para mostrar una lista de las cuentas cuyas credenciales están almacenadas en el sistema local, ejecuta gcloud auth list
:
gcloud auth list
Gcloud CLI enumera las cuentas y muestra qué cuenta está activa:
Credentialed accounts: - user-1@gmail.com (active) - user-2@gmail.com
Cambiar la cuenta activa
Para cambiar la cuenta activa, ejecuta gcloud config set
:
gcloud config set account ACCOUNT
En el ejemplo anterior, [ACCOUNT]
es la dirección de correo electrónico completa de la cuenta.
También puedes cambiar de cuenta creando una configuración distinta que especifique la cuenta diferente y alternando entre configuraciones:
gcloud config configurations activate CONFIGURATION
Si quieres cambiar la cuenta que usa gcloud CLI por
invocación, anula la cuenta activa con la marca
--account
.
Establecer la duración autorizada de la sesión
Como administrador, puedes controlar por cuánto tiempo los diferentes usuarios pueden acceder a la gcloud CLId sin tener que volver a autenticarse. Por ejemplo, puedes obligar a los usuarios con privilegios elevados a que vuelvan a autenticarse con más frecuencia que los usuarios normales.
Si deseas obtener más información, consulta Establece la duración de las sesiones para los servicios de Google Cloud.
Revocar las credenciales de una cuenta
Puedes revocar credenciales cuando desees inhabilitar el acceso de la gcloud CLI a una cuenta en particular. No es necesario que revoques las credenciales para alternar entre las cuentas.
Para revocar credenciales, ejecuta: gcloud auth revoke
:
gcloud auth revoke ACCOUNT
Para revocar todo el acceso a gcloud CLI en todas las máquinas, quita gcloud CLI de la lista de apps que tienen acceso a tu cuenta.
Cómo trabajar con archivos de credenciales
Cómo encontrar tus archivos de credenciales
Para encontrar la ubicación de tus archivos de credenciales, ejecuta gcloud info
:
gcloud info
Gcloud CLI imprime información sobre la instalación. Los archivos de credenciales se almacenan en el directorio de configuración del usuario:
User Config Directory: [/home/USERNAME/.config/gcloud]
Configura credenciales predeterminadas de la aplicación
Gcloud CLI proporciona compatibilidad para administrar las credenciales predeterminadas de la aplicación (ADC) con el grupo de comandos gcloud auth application-default
. Si quieres que las credenciales de usuario estén disponibles para ADC, ejecuta gcloud auth application-default login
:
gcloud auth application-default login
Estas credenciales no se usan en gcloud CLI. Para ver más formas de configurar ADC, consulta Configura las credenciales predeterminadas de la aplicación.
unset GOOGLE_APPLICATION_CREDENTIALS
gcloud config unset auth/impersonate_service_account
gcloud auth application-default login
¿Qué sigue?
- Para obtener más información sobre la autenticación y Google Cloud, consulta Descripción general de la autenticación.
- Para obtener más información sobre cómo personalizar gcloud CLI, consulta las propiedades de gcloud CLI.
- Para obtener más información sobre cómo administrar conjuntos con nombre de propiedades de gcloud CLI, consulta las configuraciones de la CLI de gcloud.