158

On the latest version of Firebase (Announced during Google I/O 2016), how do I add other people to my project or app whom I want to collaborate with? I came across IAM roles through Settings > Permissions. Is this the right way? If I add person there and assign a role, say Editor, will he/she be notified about it through email? Will a request be sent or will they be added directly to that role?

Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807
Abhilash Kishore
  • 2,063
  • 2
  • 15
  • 31
  • I'm having problems adding a collaborator with the answer below. Has anyone seen this problem before? http://i.imgur.com/2CFQZqD.jpg – mitrenegade Jun 05 '16 at 02:06

5 Answers5

276

To give people access to your Firebase project, take these steps:

  1. Select your project in the new Firebase Console
  2. In the top left, next to the project name, click the settings/cog wheel icon From the firebase console
  3. Click Users and Permissions
  4. Click Add member
  5. Enter the email address of the user to add and select the appropriate role as per your requirement
  6. Click the second Add member button

The newly added users will get an email with the subject [Firebase] Invitation to join project and an option to Accept Invite in the body. Be certain to let them know that you added them so that they can accept the invite.

Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807
  • 3
    If you have Google Cloud Storage buckets in the same project, does this give role give the user access to these buckets as well? If so, any way to restrict access only to Firebase? – Yrlec Sep 14 '16 at 14:22
  • 1
    @Frank: Does the user being invited have to be a registered Firebase user? – Kashif Oct 17 '16 at 13:13
  • 3
    I've been through nearly all of the Console and most of the docs and never came across a reference to this IAM system. Why is this not documented anywhere? – odigity Nov 26 '16 at 10:22
  • 11
    I have added a new member with roles mentioned in the others section which includes for example "Firebase Rules System", but when I login using the member ID, I am not able to see the project for which I had been given role. – Manish Patiyal Nov 29 '16 at 10:54
  • 15
    Google IAM doesn't offer any Firebase-specific permissions. I had to add a developer as an **Editor** for the *entire* project. Is there any plan to offer more fine-grained access control? E.g., will I ever be able to let my dev access only Firebase Analytics and Config? – markvgti Jun 02 '17 at 09:27
  • 3
    We're aware that role-based access to specific Firebase features would be useful to a lot of our developers. But as usual, we don't commend on whether or when this will be implemented. – Frank van Puffelen Jun 02 '17 at 09:36
  • 1
    @FrankvanPuffelen What next to do after someone has added me to their firebase. How do I access the project? It is not clear anywhere what the permitted member needs to do next. – Abhinav Raja Sep 11 '17 at 16:28
  • 1
    @AbhinavRaja you direct your browser to: https://console.firebase.google.com and you should see the project appear in your projects list. Click on it and you are in. – Mike S. Oct 30 '17 at 17:20
  • 1
    The answer here from @Franklin Antony is the absolutely most sueful one as it points out in google cloud console the role you need to use is under "Project" and is "Editor" which igves acces to the whole Firebase project **nothing** to do 'firebase rules system" – Maks Mar 07 '18 at 02:13
  • There is no Users and Permissions in Settings of my Firebase project – Konstantin Konopko Apr 11 '18 at 10:21
  • 1
    It's really unfortunate that Editor access to Firebase gives the user Editor access to the entire GCP project. This is unacceptable for most business use cases. Firebase just had a big push for being 'business ready' at Google I/O, but without a separate "Firebase Editor" permission, it's a big problem for many businesses. – Splaktar Jun 08 '18 at 18:40
  • The ability to give people access to specific Firebase features is rolling out at the moment. If you don't have the option to give granular access permission in a few weeks, [reach out to Firebase support](https://firebase.google.com/support/contact/troubleshooting/) for personalized help in troubleshooting. – Frank van Puffelen Jun 08 '18 at 18:54
  • @FrankvanPuffelen is this still the correct way to add collaborators? – Abhilash Kishore Nov 30 '18 at 19:16
  • @FrankvanPuffelen We are having different environments for one of our solutions. We've created different firebase databases as part of single project. We would like to add access control to these databases depending on users e.g. prod firebase database will be accessible to only few users where as other environment's firebase database will be accessible to all the users. Would this be possible to achieve with the latest release of firebase? – kk. Oct 09 '19 at 14:39
  • Access control is for all databases in a project, you can't control it per database. If that is required, you should put different environments into separate projects. Please open a new question in the future. – Frank van Puffelen Oct 09 '19 at 14:55
  • This is a great change however why does access to 'Quality' also need access to 'Analytics'? It seems a bit restricting to have to give access to revenue/sales data to anyone that wants to see just crashlytics logs. – Guykun Oct 30 '19 at 13:49
14

UPDATE 6/18/2018 - changes to Cloud Console and Google's functionality, the original solution may no longer work as shared in comments. For a recent project, I was able to add other users and permissions via Firebase console as indicated below.

Manage users in Firebase Console


Old Solution

Originally you had to choose Editor but you do not have to any more. There are new roles added to Google Cloud IAM in the other section, namely the Firebase Rules System role.

Firebase Rules Admin Role

Assign Role To User

If you add a user to a Google Cloud project using IAM and assign them this role, they can access Firebase project by visiting:

The authorized project(s) should appear and they can access, without access to the rest of the Google Cloud project.

Mike S.
  • 4,806
  • 1
  • 33
  • 35
  • 1
    I was able to add the `Firebase Rules System` role to a user, thanks to your suggestion. However, I couldn't find it in the main list of roles. Any idea why? – HondaGuy Dec 18 '17 at 20:43
  • 7
    This doesn't work for me. I added a Firebase user this way, thinking it was the right way to do so, but in the end, when the added user wanted to see the project, going in the firebase console, the project was not showed. Any other tips ? – Johan Chouquet Jan 08 '18 at 10:08
  • 1
    @HondaGuy I'm unsure as the Gcloud admin console has been changing lately. Check the `Other` section in the `Roles` dropdown and mouseover it. Try a couple times perhaps. I still see it in my console. @JohanChouquet if it doesn't work for you, you can set `Editor` role for the user and they will see it. I know that was advertised as beta so I suspect Google has option to remove or change until GA – Mike S. Jan 18 '18 at 16:32
  • 1
    This solution previously worked for me, but have now discovered that the user added can no longer access the Firebase project. They must have changed the permissions on that role. Have had to add the user as Editor role to the whole Google Cloud project now, which gives a lot of access to other parts of the project they don't need :( – cometfish Apr 04 '18 at 22:45
  • Right, this is no longer a valid answer as this permission only covers the rules system but does not give them access to the general Firebase project. – Splaktar Jun 08 '18 at 18:37
  • Google is famous for changing their features with little regard to breaking changes. I'll add notice at top of answer to warn others just in case. – Mike S. Jun 18 '18 at 18:18
11

In latest version of the console adding is in a bit different.

  1. Go To Your Project -> Project Overview -> Users and Permissions . This will open up new Pop Up.

  2. Now click on the +Add to add the Members.

  3. Now Add Email Id of the member. Now below that choose from the dropdown Project -> Collaborator as shown below and Save. Thats all! You are done.


enter image description here

FAntony
  • 534
  • 7
  • 22
9

If you're adding a Project owner, an invite will be sent to the new user. However, no email invites are sent for the Project Editor/Viewer roles.

Sriram
  • 1,174
  • 2
  • 9
  • 11
7

From Users and Permissions tab, now, at I/O 2019, it was announced a new option to give permissions.

You can now assign to a specific collaborator, access to Analytics, Develop, Quality and Grow, each one with Admin privileges or View privileges.

enter image description here

Gastón Saillén
  • 12,319
  • 5
  • 67
  • 77