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. IAM te permite adoptar el principio de seguridad de menor privilegio, de manera que solo otorgues el acceso necesario a tus recursos.
Para ver una descripción detallada de IAM, lee la documentación de IAM de Google Cloud.
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
Funciones
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.
Roles personalizados: Son roles completamente personalizados que puedes crear para adaptar un conjunto de permisos que cumplen con los requisitos específicos de tu organización.
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. Ten en cuenta lo siguiente:- Firebase console solo enumera los miembros del proyecto con un rol básico (propietario, editor, visualizador) o un rol predefinido de Firebase. Los miembros del proyecto 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 IAM de la consola de Google Cloud.
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:
- Firebase console ofrece una manera simplificada de asignar roles a los miembros del proyecto en la pestaña Usuarios y permisos de > Configuración del proyecto. En Firebase console, puedes asignar cualquiera de los roles básicos (propietario, editor, visualizador), los roles de administrador o visualizador de Firebase o cualquiera de los roles predefinidos de categoría de producto de Firebase.
- La consola de Google Cloud ofrece un amplio conjunto de herramientas para asignar roles a miembros del proyecto
en la
página IAM. En la consola de Cloud, también puedes crear
y administrar
roles personalizados, y otorgar a tus cuentas de servicio
acceso al proyecto.
Ten en cuenta que, en la consola de Google Cloud, los miembros del proyecto se denominan principales.
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 a través de una organización de Google Cloud (consulta el siguiente párrafo), puedes comunicarte con el equipo de asistencia de Firebase para consultar cómo solicitar acceso al proyecto de Firebase.
Ten en cuenta que, si un proyecto de Firebase forma parte de una organización de Google Cloud, es posible que no tenga un propietario. Si no encuentras un propietario para el proyecto de Firebase, comunícate con la persona que administra tu organización de Google Cloud para asignarle un propietario al proyecto.