Autentica para la invocación
En este documento, se proporciona información complementaria sobre cómo invocar funciones
creadas con la
API de Cloud Functions v2, por ejemplo, con
gcloud functions, la API de REST o Terraform. Para obtener información y
ejemplos detallados, consulta las guías para
autenticar solicitudes de Cloud Run. Los temas
que se abordan en las guías de Cloud Run también se aplican a las funciones creadas con la
API de Cloud Functions v2, ya que las funciones de la versión 2 también
usan el
rol de invocador de Cloud Run
(roles/run.invoker).
Para invocar una función autenticada, la principal subyacente debe cumplir con los siguientes requisitos:
- Tener permiso para invocar la función
- Proporcionar un token de ID cuando invoque la función
Cloud Run Functions admite dos tipos diferentes de identidades, que también se llaman principales:
- Cuentas de servicio: Estas son cuentas especiales que actúan como la identidad de una entidad que no es una persona, como una función, aplicación o VM. Te brindan una forma de autenticar a las entidades que no son personas.
- Cuentas de usuario: Estas cuentas representan personas, ya sea como titulares de Cuentas de Google individuales o como parte de una entidad controlada por Google, como un Grupo de Google.
Consulta la descripción general de IAM para obtener más información sobre los conceptos básicos de IAM.
Para invocar una función autenticada, la principal debe tener el permiso de IAM de invocador:
run.routes.invoke. Por lo general, esto se hace a través del rol de invocador de Cloud Run. Este permiso se debe asignar en el recurso de servicio de Cloud Run
Para otorgar estos permisos, sigue los pasos de la guía de Cloud Run sobre la autenticación de servicio a servicio.
Si quieres obtener permiso para crear, actualizar o realizar otras acciones administrativas en una función, la principal debe tener un rol adecuado. Los roles incluyen permisos que definen las acciones que la principal puede realizar. Para obtener más información, consulta Usa IAM para autorizar el acceso.
Las funciones controladas por eventos solo se pueden invocar desde la fuente del evento al que están suscritas. Sin embargo, las funciones HTTP pueden invocarse con diferentes tipos de identidades que se originan en distintos lugares, por ejemplo, un desarrollador que está probando la función o un servicio que la usa. Las identidades deben proporcionar un token de ID para la autenticación. La cuenta en uso también debe tener los permisos adecuados.