@userhub/gcip-functions

v0.1.0
Google Cloud Identity Platform

Google Cloud Identity Platform Functions

Helper functions for the UserHub Google Cloud Identity Platform (Firebase Authentication) connection.

Usage

const { UserHubFunctions } = require("@userhub/gcip-functions");
const { runWith } = require("firebase-functions/v1");
const { defineSecret, defineString } = require("firebase-functions/params");

const API_KEY = defineSecret("USERHUB_API_KEY");
const CONNECTION_ID = defineString("USERHUB_CONNECTION_ID");

const functions = new UserHubFunctions({
  apiKey: API_KEY,
  connectionId: CONNECTION_ID,
});

exports.onCreate = runWith({
  memory: "128MB",
  secrets: [API_KEY],
})
  .auth.user()
  .onCreate(functions.onCreate);

exports.onDelete = runWith({
  memory: "128MB",
  secrets: [API_KEY],
})
  .auth.user()
  .onDelete(functions.onDelete);

There is also support for the blocking beforeSignIn function which ensures the user exists in UserHub before the sign-in process completes.

Enabling this function adds latency to the sign-in flow and requires that your Firebase project be updated to Firebase Authentication with Identity Platform.

exports.beforeSignIn = runWith({
  memory: "128MB",
  minInstances: 1,
  secrets: [API_KEY],
})
  .auth.user()
  .beforeSignIn(functions.beforeSignIn);
npm i @userhub/[email protected]

Metadata

  • MIT
  • Whatever
  • UserHub
  • released 1/19/2023

Downloads