Saltar al contenido

Diferencia entre “gcloud auth application-default login” y “gcloud auth login”

Solución:

La diferencia son los casos de uso:

Como desarrollador, quiero interactuar con GCP a través de gcloud.
gcloud auth login

Esto obtiene sus credenciales y las almacena en ~/.config/gcloud/. Ahora puedes correr gcloud comandos desde su terminal y encontrará sus credenciales automáticamente. Cualquier código / SDK no recogerá automáticamente sus créditos en este caso.

Referencia: https://cloud.google.com/sdk/gcloud/reference/auth/login

Como desarrollador, quiero que mi código interactúe con GCP a través del SDK.
gcloud auth application-default login

Esto obtiene sus credenciales a través de un flujo web y las almacena en ‘la ubicación conocida para las credenciales predeterminadas de la aplicación’. Ahora, cualquier código / SDK que ejecute podrá encontrar las credenciales automáticamente. Este es un buen sustituto cuando desea probar localmente código que normalmente se ejecutaría en un servidor y usaría un archivo de credenciales del lado del servidor.

Referencia: https://cloud.google.com/sdk/gcloud/reference/auth/application-default/login

Editar (19/09/2019):

Como Kent contribuyó en su comentario a continuación, ‘la ubicación conocida para las credenciales predeterminadas de la aplicación’ es un archivo llamado application_default_credentials.json ubicado en su local ~/.config/gcloud/ directorio. Agregué un enlace adicional a continuación a un artículo de Theodore Sui y Daniel De Leo que entra en mayor detalle sobre los diferentes métodos de autenticación.

Artículo: https://medium.com/google-cloud/local-remote-authentication-with-google-cloud-platform-afe3aa017b95

Estoy agregando esto como respuesta porque no tengo la reputación de comentar. Creo que la respuesta de @ Himal es acertada, pero me gustaría aclarar que cuando dice código / SDK, deberíamos pensar en código o lenguaje (Java / Ruby / Python) SDK frente a gcloud SDK (que también se conoce como SDK de Cloud). Esto me confundió un poco porque tenía las mismas dudas.

Entonces, gcloud auth login -> Login to gcloud SDK

gcloud auth application-default login -> Inicie sesión en cualquier código que se ejecute en la computadora (SDK de idioma dentro de una aplicación)

También hay un obsequio en la pantalla de autenticación de OAuth en las ventanas del navegador que se abren:

gcloud auth login le pide que elija una cuenta para continuar dando acceso a ‘google cloud sdk’.

gcloud auth application-default login le pide que dé acceso a la biblioteca de autenticación de Google en su lugar.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *