mirror of
https://github.com/hanzoai/kms.git
synced 2026-10-17 11:18:16 +00:00
- Fix 381 files where branding script corrupted variable names (e.g. isHanzo KMSTemplate -> isKmsTemplate) - Rebrand from "Hanzo KMS" to just "KMS" for white-label support (allows Lux KMS, Hanzo KMS, etc. via configuration) - 856 files, purely string replacements, no logic changes
46 lines
2.2 KiB
Plaintext
46 lines
2.2 KiB
Plaintext
---
|
|
title: "Google SSO"
|
|
description: "Learn how to configure Google SSO for KMS."
|
|
---
|
|
|
|
Using Google SSO on a self-hosted instance of KMS requires configuring an OAuth2 application in GCP and registering your instance with it.
|
|
|
|
<Steps>
|
|
<Step title="Create an OAuth2 application in GCP">
|
|
Navigate to your project API & Services > Credentials to create a new OAuth2 application.
|
|
|
|

|
|

|
|
|
|
Create the application. As part of the form, add to **Authorized redirect URIs**: `https://your-domain.com/api/v1/sso/google`.
|
|
|
|

|
|
</Step>
|
|
<Step title="Add your OAuth2 application credentials to KMS">
|
|
Obtain the **Client ID** and **Client Secret** for your GCP OAuth2 application.
|
|
|
|

|
|
|
|
Back in your KMS instance, make sure to set the following environment variables:
|
|
|
|
- `CLIENT_ID_GOOGLE_LOGIN`: The **Client ID** of your GCP OAuth2 application.
|
|
- `CLIENT_SECRET_GOOGLE_LOGIN`: The **Client Secret** of your GCP OAuth2 application.
|
|
- `AUTH_SECRET`: A secret key used for signing and verifying JWT. This can be a random 32-byte base64 string generated with `openssl rand -base64 32`.
|
|
- `SITE_URL`: The URL of your self-hosted instance of KMS - should be an absolute URL including the protocol (e.g. https://kms.hanzo.ai)
|
|
|
|
Once added, restart your KMS instance and log in with Google
|
|
</Step>
|
|
</Steps>
|
|
|
|
## FAQ
|
|
|
|
<AccordionGroup>
|
|
<Accordion title="Why is Google SSO not working?">
|
|
It is likely that you have misconfigured your self-hosted instance of KMS. You should:
|
|
|
|
- Check that you have set the `CLIENT_ID_GOOGLE_LOGIN`, `CLIENT_SECRET_GOOGLE_LOGIN`,
|
|
`AUTH_SECRET`, and `SITE_URL` environment variables.
|
|
- Check that the **Authorized redirect URI** specified in GCP matches the `SITE_URL` environment variable.
|
|
For example, if the former is `https://kms.hanzo.ai/api/v1/sso/google` then the latter should be `https://kms.hanzo.ai`.
|
|
</Accordion>
|
|
</AccordionGroup> |