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 detallada y ejemplos, consulta las guías de Autenticación de solicitudes de Cloud Run. Los temas que se tratan 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 v2 también usan el rol de invocador de Cloud Run (roles/run.invoker).

Para invocar una función autenticada, el 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

Las funciones de Cloud Run admiten 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, una aplicación o una 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 conceitos básicos de IAM.

Para invocar una función autenticada, el principal debe tener el permiso de IAM de invocador:

Para otorgar estos permisos, sigue los pasos de la guía de Autenticación de servicio a servicio de Cloud Run.

Si quieres obtener permiso para crear, actualizar o realizar otras acciones administrativas en una función, la principal debe tener una función adecuada. 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.

Solo la fuente del evento a la que están suscritas las funciones controladas por eventos puede invocarlas. Sin embargo, las funciones de HTTP pueden ser invocadas por diferentes tipos de identidad que se originan en diferentes lugares, como un desarrollador que prueba la función o otro 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.