googleapis / googleapis/google-cloud-python

Generate id_token from default credentials

Abierto
#15,222 5 comentarios 26 reacciones 1 asignado Reclamado por @arithmetic1728 Ver en GitHub
priority: p2 type: feature request
Lenguaje dominante
Python
Estrellas
5.4k
Forks
1.8k
Merge medio
3 d 4 h
PR fusionados (30 d)
122

Descripción

**Is your feature request related to a problem? Please describe.**

Currently, `google.auth.default()` generates `Credentials` that contain `.token` that is an access token.
We'd like to also generate `id_token` with the appropriate audience starting from default credentials.

This would allow us to submit requests that use `id_token` uniformly among different environments:
- Local Service Account key
- Cloud Functions
- Cloud Run
- App Engine
- GKE Workload Identity

**Describe the solution you'd like**

It would be great to add a method to `google.auth.credentials.Credentials` that allows `id_token` generation, e.g.
```py
credentials.id_token(audience='https://example.org')
```

**Describe alternatives you've considered**
So far, we had to rely on piece-meal approaches, like this example from https://github.com/apache/airflow/blob/master/airflow/providers/google/common/utils/id_token_credentials.py

This unnecessarily increases the complexity of third-party apps, and we have to re-implement the same logic in each one of them.

It would be preferable to incorporate such logic into this library instead.

**Additional context**

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.