Administra el acceso al proyecto con Firebase IAM

La Administración de identidades y accesos (IAM) te permite otorgar acceso detallado a recursos específicos de Firebase y Google, y evita el acceso no deseado a otros recursos. La IAM te permite adoptar el principio de seguridad de privilegio mínimo, de manera que solo otorgues el acceso necesario a tus recursos.

Para obtener una descripción detallada de esta función, consulta la documentación de Google Cloud IAM.

Descripción general de Firebase IAM

Firebase ofrece opciones de IAM adicionales específicas para los proyectos de la plataforma y tus miembros.

Cuando un miembro del proyecto autenticado solicita una acción en Firebase, la IAM decide la autorización según los permisos que posee el usuario para realizar la operación solicitada en el recurso. La autorización de un miembro del proyecto para ejecutar una solicitud depende del rol que tenga asignado. Los roles son conjuntos de permisos, por lo que, cuando le asignas uno a un miembro del proyecto, le otorgas todos los permisos que este conlleva.

Miembros del proyecto

Con Firebase IAM, puedes asignarles roles (y los permisos que conllevan) a tus miembros del proyecto. Los miembros del proyecto se pueden clasificar en los siguientes tipos:

  • Cuenta de Google
  • Cuenta de servicio
  • Grupo de Google

Roles

Los permisos se otorgan a los miembros de los proyectos a través de las funciones. Un rol es un conjunto de permisos y cuando asignas uno a un miembro del proyecto, le otorgas todos los permisos que este conlleva.

Firebase IAM admite los siguientes tipos de roles:

  • Funciones básicas: Son funciones fundamentales de Propietario, Editor y Visualizador.

  • Funciones predefinidas: Son funciones exclusivas de Firebase que permiten controlar el acceso de manera más detallada que las funciones básicas. Firebase ofrece lo siguiente:

    • Funciones a nivel de Firebase: Son funciones que otorgan acceso completo de lectura/escritura o de solo lectura a todos los productos de Firebase.

    • Funciones de categoría de producto: Funciones que otorgan acceso completo de lectura y escritura o de solo lectura a grupos de productos. Se estructuran en torno a Google Analytics y categorías de productos generales.

    • Funciones a nivel de producto: Funciones que otorgan acceso completo de lectura y escritura o de solo lectura a productos específicos de Firebase.

  • Funciones personalizadas: Son funciones de Firebase completamente personalizadas que puedes crear para adaptar un conjunto de permisos que cumplen con los requisitos específicos de tu organización.

Latencia del cambio de rol

Si cambias el rol asignado a un miembro del proyecto, el cambio podría tardar hasta 5 minutos en aplicarse.

Administra los miembros del proyecto y sus roles

Consulta los miembros del proyecto y sus roles

Puedes revisar muchos de los miembros de tu proyecto y sus roles en la pestaña Usuarios y permisos de  > Configuración del proyecto en Firebase console. Debes tener en cuenta lo siguiente:
  • Firebase console solo enumera los miembros del proyecto con un rol básico (propietario, editor o visualizador) o con uno predefinido de Firebase. Los miembros que aparecen en esta pestaña son los únicos que tienen acceso al proyecto de Firebase en Firebase console.
  • Firebase console no muestra los miembros del proyecto que son cuentas de servicio. Consulta estos miembros del proyecto en la página de IAM de Google Cloud Console.
Como alternativa, puedes revisar todos los miembros y sus roles en la página de IAM de Google Cloud Console.

Asigna un rol a un miembro del proyecto

Para administrar los roles que se asignaron a cada miembro, debes ser propietario del proyecto de Firebase (o tener un rol con el permiso resourcemanager.projects.setIamPolicy).

Los siguientes son los lugares en los que puedes asignar y administrar roles:

Si el propietario del proyecto ya no puede realizar sus tareas correspondientes (por ejemplo, esa persona ya no trabaja en la empresa) y tu proyecto no se administra mediante una organización de Google Cloud (consulta el siguiente párrafo), puedes comunicarte con el equipo de asistencia de Firebase para asignar un propietario temporal.

Debes considerar que si un proyecto de Firebase es parte de una organización de Google Cloud, es posible que no tenga un propietario. Si no encuentras un propietario para tu proyecto de Firebase, comunícate con la persona que administra tu organización de Google Cloud a fin de asignarle un propietario al proyecto.