Skip to main content
Google OAuth has two parts:
  • A Google OAuth client in Google Cloud.
  • FalkorDB Enterprise OAuth settings, stored in Admin Settings and Kubernetes Secrets.

Prerequisites

  • FalkorDB Enterprise is installed and the Admin UI is reachable.
  • You can sign in as an admin with the settings.update permission.
  • You know the public URL users use to reach the Admin UI, for example https://admin.example.com.
  • You can administer a Google Cloud project for the OAuth client.
  • For Workspace group lookup, you can administer Google Workspace domain-wide delegation.

Create the Google OAuth client

  1. Open the Google Cloud Console.
  2. Select or create the project that will own the OAuth client.
  3. Go to APIs & Services > OAuth consent screen.
  4. Configure the consent screen for your organization.
  5. Go to APIs & Services > Credentials.
  6. Create an OAuth client ID.
  7. Choose Web application.
  8. Add an authorized redirect URI:
Replace https://admin.example.com with the public Admin UI origin for your installation.
  1. Save the client and copy the generated Client ID and Client secret.

Configure OAuth in the Admin UI

  1. Sign in to the Admin UI as an admin.
  2. Open System Settings.
  3. Open OAuth / SSO.
  4. Expand the Google provider card.
  5. Fill in the OAuth client fields:
  1. Configure sign-in policy fields as needed:
  1. Select Save Settings.
The Admin Server stores client_id, redirect_uri, and client_secret_secret_ref in Admin Settings. The client secret itself is written to the referenced Kubernetes Secret under the client_secret key.

Configure Workspace group lookup

Workspace group lookup is optional. Enable it when OAuth users should receive roles from Google Workspace group mappings.

Create a Google Workspace service account

  1. In Google Cloud Console, go to IAM & Admin > Service Accounts.
  2. Create a service account for FalkorDB Enterprise Workspace lookups.
  3. Create a JSON key for the service account.
  4. Enable the Admin SDK API for the project.
  5. In Google Workspace Admin Console, configure domain-wide delegation for the service account client ID.
  6. Grant the delegated scopes required for Directory API group lookup:

Save Workspace settings

In System Settings > OAuth / SSO > Google, fill in: Select Save Settings. The Admin Server stores Workspace metadata in Admin Settings. The private key is written to the referenced Kubernetes Secret under the private_key key.

Configure with the API

You can also configure Google OAuth through the settings API. Authenticate as an admin first, then send a PATCH request to /api/settings/.
client_secret and private_key are write-only. They are accepted on update, stored in Kubernetes Secrets, and omitted from subsequent GET /api/settings/ responses.

Configure with Kubernetes manifests

For GitOps or bootstrap flows, create the Secrets and seed the Admin Settings ConfigMap. Create the OAuth client secret:
Create the Workspace private key Secret if Workspace group lookup is enabled:
Patch the settings ConfigMap:
After direct ConfigMap changes, restart the Admin Server so the new settings are loaded deterministically:

Environment variable fallback

Google OAuth can still be configured with Admin Server environment variables. This is useful for local development or simple deployments:
Settings configured in the Admin UI are preferred for Google OAuth at request time. Environment variables remain a fallback when settings-backed Google OAuth is not configured.

Validate the setup

Check that the Google provider appears in the public auth config:
The response should include a Google method similar to:
Start the OAuth flow from a browser:
Do not start from the raw Google authorization URL during manual testing. The FalkorDB Enterprise OAuth endpoint sets the CSRF state cookie required by the callback.

Rotate Secrets

To rotate the OAuth client secret or Workspace private key:
  1. Open System Settings > OAuth / SSO.
  2. Expand Google.
  3. Keep the same Secret reference name, or enter a new one.
  4. Paste the new write-only value.
  5. Select Save Settings.
Saving a blank write-only field does not erase the existing Kubernetes Secret. To remove a Secret, delete it with kubectl after disabling or reconfiguring the related setting.

Troubleshooting