An unofficial AngularFire extension for authentication with WebAuthn passkeys.
Public keys are stored in the webAuthnUsers collection in Firestore. Setup doesn't require you to modify any Firestore rules. Your app should use a separate users/profiles collection to store user information.
% npm install @ngx-firebase-web-authn/functions --save
Re-export the function from your functions/index.ts file.
``ts
import { initializeApp } from 'firebase-admin/app';
initializeApp();
export { ngxFirebaseWebAuthn } from '@ngx-firebase-web-authn/functions';
// Other functions...
`
Deploy your Firebase Functions:
% firebase deploy --only functionsfirebase.json$3
For the browser to reach ngxFirebaseWebAuthn, modify your to include a rewrite on each app where you'd like to use passkeys.`json`
{
"hosting": [
{
"target": "...",
"rewrites": [
{
"source": "/ngxFirebaseWebAuthn",
"function": "ngxFirebaseWebAuthn"
}
]
}
]
}Service Account Token Creator$3
- Enable the Anonymous authentication provider in Firebase if you are not using it already.
- Add the role to your Firebase Functions' service account in GCP IAM project permissions. This is either the Default compute service account or the App Engine default service account`, and can be seen under "Runtime service account" in GCP Cloud Function configuration after deployment.