Merge pull request #535 from sheensantoscapadngan/feature/google-signin-signup-integration

Feature/google signin signup integration
This commit is contained in:
vmatsiiako
2023-06-02 23:44:45 -07:00
committed by GitHub
67 changed files with 7542 additions and 7797 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

+6
View File
@@ -121,6 +121,12 @@
{
"group": "Self-host Infisical",
"pages": [
{
"group": "Authentication",
"pages": [
"self-hosting/authentication/google"
]
},
{
"group": "Deployment options",
"pages": [
@@ -0,0 +1,18 @@
---
title: "Google"
description: "Learn to configure Google signin/signup when self-hosting Infisical."
---
To enable Google Auth for your Infisical project, you first need to set up a Google OAuth application.
Follow Google's Setting up OAuth 2.0 documentation [here](https://support.google.com/googleapi/answer/6158849). After the setup, copy the Client ID and Client secret. You will need them below.
## Configure Redirect URI
Add the following URI to the Authorized redirect URIs section in the OAuth Client credentials page - `BASE_URL/api/v1/auth/callback/google`. Replace BASE_URL with the URL of your hosted Infisical instance.
![google redirect](../../images/authentication-google-redirect.png)
## General Configuration
You wil need to configure the following [environment variables](https://infisical.com/docs/self-hosting/configuration/envars):
- `CLIENT_ID_GOOGLE`: OAuth 2.0 Client ID obtained from the credentials page
- `CLIENT_SECRET_GOOGLE`: OAuth 2.0 Client Secret obtained from the credentials page
- `JWT_PROVIDER_AUTH_SECRET`: Secret Key for signing OAuth 2.0 access token
- `JWT_PROVIDER_AUTH_LIFETIME`: Lifetime for OAuth 2.0 access token
+17 -1
View File
@@ -69,7 +69,7 @@ Other environment variables are listed below to increase the functionality of yo
Name label to be used in From field (e.g. Team)
</ParamField>
</Tab>
<Tab title="Integrations">
<Tab title="Secret Integrations">
To sync secret to third party services, provide value for the related services
<ParamField query="CLIENT_ID_HEROKU" type="string" default="none" optional>
@@ -108,6 +108,18 @@ Other environment variables are listed below to increase the functionality of yo
OAuth2 slug for Netlify integration
</ParamField>
</Tab>
<Tab title="Auth Integrations">
To integrate with external auth providers, provide value for the related keys
<ParamField query="JWT_PROVIDER_AUTH_SECRET" type="string" required>
Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16`
</ParamField>
<ParamField query="CLIENT_ID_GOOGLE" type="string" default="none" optional>
OAuth2 client ID for Google auth integration
</ParamField>
<ParamField query="CLIENT_SECRET_GOOGLE" type="string" default="none" optional>
OAuth2 client secret for Google auth integration
</ParamField>
</Tab>
<Tab title="Others">
#### JWT
<ParamField query="JWT_SIGNUP_LIFETIME" type="string" default="15m" optional>
@@ -126,6 +138,10 @@ Other environment variables are listed below to increase the functionality of yo
JWT token lifetime expressed in seconds or a string describing a time span
</ParamField>
<ParamField query="JWT_PROVIDER_AUTH_LIFETIME" type="string" default="5m" optional>
JWT token lifetime expressed in seconds or a string describing a time span
</ParamField>
<ParamField query="MONGO_USERNAME" type="string" default="none" optional></ParamField>
<ParamField query="MONGO_PASSWORD" type="string" default="none" optional></ParamField>