All notable changes to this project will be documented in this file. This change log follows the conventions of keepachangelog.com.
fire.admin — user management against the Identity Toolkit REST API. No
Admin SDK dependency and no init singleton: the auth map is passed in
like everywhere else in fire, and every function takes an optional trailing
options map understanding :project-id and :tenant-id. Charmander's
{:error true :error-data ...} contract is kept as-is.
create-user, get-user, get-user-by-email,
get-user-by-phone-number, set-user-email, set-user-password,
set-user-phone-number, set-user-display-name, set-user-photo-url,
generate-password-reset-link, generate-email-verification-link,
delete-user.update-user (many fields at once, nil clears a field),
get-users, list-users, list-all-users (lazy — pages are fetched as
the sequence is consumed), search-users (a transducer over that
enumeration), set-user-email-verified,
disable-user, enable-user, set-custom-user-claims,
unlink-provider, revoke-refresh-tokens, delete-users,
generate-sign-in-with-email-link,
generate-verify-and-change-email-link, create-custom-token,
create-session-cookie, and validate-token /
validate-session-cookie with revocation and disabled-account checks.list-user-factors, unenroll-user-factor,
unenroll-all-user-factors — the support-side half of MFA. Enrollment
stays the client's job against Firebase.fire.auth/validate-token now lifts the sign-in metadata out of the token's
nested :firebase block and onto the top level of its result, including
:sign_in_second_factor and :second_factor_identifier — the only
server-side proof that a second factor was presented at sign-in. Both are
nil unless the project is on Identity Platform and MFA was used. Purely
additive: the raw claims are all still there, unrenamed.fire.auth/validate-session-cookie, verifying the session cookies
fire.admin/create-session-cookie mints — same RS256 verification and the
same return value, against Firebase's other key set and issuer.fire.auth/format-result, the claim flattening on its own, for callers
holding claims they verified some other way.fire.oauth2/credentials, decoding the service account credentials in a
named env var. fire.admin needs the private key out of these to sign
custom tokens.fire.oauth2/sign gained a third-arity taking an explicit JWT header;
Firebase custom tokens want :typ in theirs. The existing two-arity call
is untouched and produces byte-identical output.identitytoolkit and firebase
scopes. Without the first, every fire.admin call comes back 403.Nothing was removed or renamed. Every change above is additive: existing
fire.core, fire.storage, fire.socket, fire.vision, fire.auth and
fire.oauth2 calls behave exactly as they did in 0.6.0.
make-widget-async to provide a different widget shape.make-widget-sync - we're all async, all the time.make-widget-sync.Can you improve this documentation? These fine people already did:
Alex Oloo & Alexander OlooEdit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |