Descubre las novedades de Firebase en Google I/O 2022. Más información

Administra el acceso a proyectos con Firebase IAM

Identity and Access Management (IAM) le permite otorgar acceso granular a recursos específicos de Firebase y Google y evita el acceso no deseado a otros recursos. IAM le permite adoptar el principio de seguridad de privilegios mínimos , por lo que otorga solo el acceso necesario a sus recursos.

Para obtener una descripción detallada de IAM, lea la documentación de Google Cloud IAM .

Descripción general de Firebase IAM

Firebase ofrece opciones de IAM adicionales que son específicas para los proyectos de Firebase y los miembros de su proyecto.

Cuando un miembro del proyecto autenticado solicita una acción en Firebase, IAM toma una decisión de autorización sobre si el miembro del proyecto tiene permiso para realizar la operación solicitada en el recurso . Si el miembro del proyecto puede realizar la solicitud depende de la función asignada al miembro del proyecto. Cada rol es una colección de permisos, y cuando asigna un rol a un miembro del proyecto, le está otorgando a ese miembro del proyecto todos los permisos para ese rol.

miembros del proyecto

Con Firebase IAM, asigna roles (y sus permisos inherentes) a los miembros de su proyecto. Los miembros del proyecto pueden ser de los siguientes tipos :

  • cuenta Google
  • cuenta de servicio
  • grupo de google

roles

Los permisos se otorgan a los miembros de su proyecto a través de roles . Un rol es una colección de permisos . Cuando asigna una función a un miembro del proyecto, otorga a ese miembro del proyecto todos los permisos que contiene la función.

Firebase IAM admite los siguientes tipos de funciones:

  • Roles básicos: roles fundamentales de propietario , editor y espectador (anteriormente llamados roles "primitivos").

  • Roles predefinidos: roles seleccionados específicos de Firebase que permiten un control de acceso más granular que los roles básicos. Firebase ofrece:

    • Roles de nivel de Firebase : roles que otorgan acceso completo de lectura/escritura o solo lectura a todos los productos de Firebase.

    • Roles de categoría de producto : roles que otorgan acceso completo de lectura/escritura o solo lectura a grupos de productos. Están estructurados en torno a Google Analytics y categorías generales de productos.

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

  • Funciones personalizadas : Funciones totalmente personalizadas que usted crea para personalizar un conjunto de permisos que cumplan con los requisitos específicos de su organización.

Latencia de cambio de rol

Si cambia la asignación de funciones de un miembro del proyecto, el cambio puede tardar hasta 5 minutos en surtir efecto.

Gestionar los miembros del proyecto y sus roles.

Ver miembros del proyecto y sus funciones

Puede ver muchos de los miembros de su proyecto y sus funciones en la pestaña Usuarios y permisos de > Configuración del proyecto en Firebase console. Tenga en cuenta lo siguiente:
  • La consola de Firebase solo enumera los miembros del proyecto a los que se les asignó una función básica (Propietario, Editor, Visor) o una función predefinida de Firebase . Los miembros del proyecto que aparecen en esta pestaña son los únicos miembros del proyecto que tienen acceso al proyecto de Firebase en Firebase console.
  • La consola de Firebase no enumera los miembros del proyecto que son cuentas de servicio. Vea estos miembros del proyecto en la página de IAM de Google Cloud Console.
Como alternativa, puede ver todos los miembros de su proyecto y sus funciones en la página de IAM de Google Cloud Console.

Asignar un rol a un miembro del proyecto

Para administrar las funciones asignadas a cada miembro del proyecto, debe ser propietario del proyecto de Firebase (o tener asignada una función con el permiso resourcemanager.projects.setIamPolicy ).

Estos son los lugares donde puede asignar y administrar roles:

Si el Propietario de su proyecto ya no puede realizar las tareas de un Propietario (por ejemplo, la persona dejó su empresa) y su proyecto no se administra a través de una organización de Google Cloud (consulte el siguiente párrafo), puede comunicarse con el Soporte de Firebase para tener un Propietario temporal asignado.

Tenga en cuenta que si un proyecto de Firebase es parte de una organización de Google Cloud, es posible que no tenga propietario. Si no puede encontrar un propietario para su proyecto de Firebase, comuníquese con la persona que administra su organización de Google Cloud para asignar un propietario para el proyecto.