Firebase Admin
How an agent gets a Firebase Admin key through KeyKeeper, what to choose on console.firebase.google.com, and how KeyKeeper verifies it.
| Template id | firebase-admin (also firebase, firebase-service-account) |
|---|---|
| Field | google-application-credentials → GOOGLE_APPLICATION_CREDENTIALS · credential file |
| Key looks like | shown once when created |
| Created at | console.firebase.google.com |
| Verified by KeyKeeper | not verified |
| Template checked | 2026-09-15 |
What the agent does
keykeeper providers show firebase-admin
keykeeper save --provider firebase-admin --from-file /path/to/google-application-credentials.json --create --purpose "what this task does"
keykeeper run -c firebase-admin -- <your command>--provider firebase-admin fills in the credential id and the field. The environment
variable is the one Firebase Admin's own tools read, so nothing has to be mapped.
What only you can do
What to choose
Firebase Admin credentials are privileged. Prefer Application Default Credentials on Google-hosted runtimes; otherwise assign only the Google Cloud roles needed by the exact Firebase products in use.
The agent is told the same thing. It opens the page for you and says what to pick; it never logs in, passes 2FA or pays on your behalf.
What KeyKeeper checks
- Before writing: the value must look like a Firebase Admin key (shown once when created). A wrong paste is refused before anything is stored, and the agent is told why — without the value.
- After saving: Firebase Admin offers no read-only endpoint KeyKeeper can use, so the first real call is the test.
Rotation and expiry
User-managed service-account keys usually remain valid until revoked, but organization policy can impose expiry. Record a date only when the console or policy shows one. Rotate or revoke at console.cloud.google.com.