This makes sense and might be the right approach.
One thing to keep in mind is that if you are using an identity provider supported by Firebase (i.e. Google OAuth) you don't necessarily need to set up your own auth schema and use custom signed JWT tokens (i.e. custom authentication) to mark certain people as admins. In that case, you could just use
custom claims, which allow you to add meta info onto the user's auth credentials when they sign in from the Firebase client SDKs.
If you're just using the admin flag to control access to data, another alternative (again assuming you are already using a Firebase compatible provider) would be to just store data in your Firebase or Realtime Database marking which users are admins. You can reference database data as part of security rules so this is also a fine way to manage role-based access.
Also, if you're already working with App Engine, you might consider
Functions for handling some of your backend ops. It can slim up your stack and take advantage of some of the Firebase integration points.
☼, Kato