Merge pull request #903 from Infisical/integration-setup-docs
Add self-hosted setup/configuration docs for OAuth2 integrations
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-aad.png
Normal file
After ![]() (image error) Size: 444 KiB |
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-credentials-1.png
Normal file
After ![]() (image error) Size: 503 KiB |
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-credentials-2.png
Normal file
After ![]() (image error) Size: 1.2 MiB |
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-credentials-3.png
Normal file
After ![]() (image error) Size: 1.1 MiB |
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-new-app-form.png
Normal file
After ![]() (image error) Size: 1.1 MiB |
BIN
docs/images/integrations/azure-key-vault/integrations-azure-key-vault-config-new-app.png
Normal file
After ![]() (image error) Size: 1.1 MiB |
Before ![]() (image error) Size: 189 KiB After ![]() (image error) Size: 189 KiB ![]() ![]() |
Before ![]() (image error) Size: 352 KiB After ![]() (image error) Size: 352 KiB ![]() ![]() |
Before ![]() (image error) Size: 379 KiB After ![]() (image error) Size: 379 KiB ![]() ![]() |
Before ![]() (image error) Size: 179 KiB After ![]() (image error) Size: 179 KiB ![]() ![]() |
BIN
docs/images/integrations/gcp-secret-manager/integrations-gcp-secret-manager-config-api-services.png
Normal file
After ![]() (image error) Size: 370 KiB |
BIN
docs/images/integrations/gcp-secret-manager/integrations-gcp-secret-manager-config-credentials.png
Normal file
After ![]() (image error) Size: 1.1 MiB |
BIN
docs/images/integrations/gcp-secret-manager/integrations-gcp-secret-manager-config-new-app-form.png
Normal file
After ![]() (image error) Size: 1.0 MiB |
BIN
docs/images/integrations/gcp-secret-manager/integrations-gcp-secret-manager-config-new-app.png
Normal file
After ![]() (image error) Size: 940 KiB |
Before ![]() (image error) Size: 1.2 MiB After ![]() (image error) Size: 1.2 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.5 MiB After ![]() (image error) Size: 1.5 MiB ![]() ![]() |
Before ![]() (image error) Size: 1.0 MiB After ![]() (image error) Size: 1.0 MiB ![]() ![]() |
After ![]() (image error) Size: 740 KiB |
After ![]() (image error) Size: 856 KiB |
After ![]() (image error) Size: 782 KiB |
After ![]() (image error) Size: 602 KiB |
After ![]() (image error) Size: 1.5 MiB |
Before ![]() (image error) Size: 398 KiB After ![]() (image error) Size: 398 KiB ![]() ![]() |
Before ![]() (image error) Size: 330 KiB After ![]() (image error) Size: 330 KiB ![]() ![]() |
After ![]() (image error) Size: 1.1 MiB |
After ![]() (image error) Size: 1.1 MiB |
After ![]() (image error) Size: 1.6 MiB |
After ![]() (image error) Size: 959 KiB |
Before ![]() (image error) Size: 185 KiB After ![]() (image error) Size: 185 KiB ![]() ![]() |
Before ![]() (image error) Size: 394 KiB After ![]() (image error) Size: 394 KiB ![]() ![]() |
Before ![]() (image error) Size: 842 KiB After ![]() (image error) Size: 842 KiB ![]() ![]() |
After ![]() (image error) Size: 913 KiB |
After ![]() (image error) Size: 1.2 MiB |
After ![]() (image error) Size: 1.0 MiB |
After ![]() (image error) Size: 682 KiB |
After ![]() (image error) Size: 944 KiB |
Before ![]() (image error) Size: 179 KiB After ![]() (image error) Size: 179 KiB ![]() ![]() |
Before ![]() (image error) Size: 371 KiB After ![]() (image error) Size: 371 KiB ![]() ![]() |
Before ![]() (image error) Size: 740 KiB After ![]() (image error) Size: 740 KiB ![]() ![]() |
After ![]() (image error) Size: 1.1 MiB |
After ![]() (image error) Size: 1.1 MiB |
After ![]() (image error) Size: 1.0 MiB |
After ![]() (image error) Size: 956 KiB |
Before ![]() (image error) Size: 196 KiB After ![]() (image error) Size: 196 KiB ![]() ![]() |
Before ![]() (image error) Size: 380 KiB After ![]() (image error) Size: 380 KiB ![]() ![]() |
Before ![]() (image error) Size: 862 KiB After ![]() (image error) Size: 862 KiB ![]() ![]() |
After ![]() (image error) Size: 909 KiB |
After ![]() (image error) Size: 801 KiB |
After ![]() (image error) Size: 908 KiB |
After ![]() (image error) Size: 1.3 MiB |
After ![]() (image error) Size: 930 KiB |
Before ![]() (image error) Size: 192 KiB After ![]() (image error) Size: 192 KiB ![]() ![]() |
Before ![]() (image error) Size: 378 KiB After ![]() (image error) Size: 378 KiB ![]() ![]() |
@ -3,7 +3,9 @@ title: "GitHub Actions"
|
||||
description: "How to sync secrets from Infisical to GitHub Actions"
|
||||
---
|
||||
|
||||
<Warning>
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
<Warning>
|
||||
Infisical can sync secrets to GitHub repo secrets only. If your repo uses environment secrets, then stay tuned with this [issue](https://github.com/Infisical/infisical/issues/54).
|
||||
</Warning>
|
||||
|
||||
@ -20,7 +22,7 @@ Prerequisites:
|
||||
|
||||
Press on the GitHub tile and grant Infisical access to your GitHub account (repo privileges only).
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant Infisical access to your project's environment variables.
|
||||
@ -31,5 +33,43 @@ Press on the GitHub tile and grant Infisical access to your GitHub account (repo
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which GitHub repo and press start integration to start syncing secrets to the repo.
|
||||
|
||||

|
||||

|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the GitHub integration on a self-hosted instance of Infisical requires configuring an OAuth application in GitHub
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an OAuth application in GitHub
|
||||
|
||||
Navigate to your user Settings > Developer settings > OAuth Apps to create a new GitHub OAuth application.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Create the OAuth application. As part of the form, set the **Homepage URL** to your self-hosted domain `https://your-domain.com`
|
||||
and the **Authorization callback URL** to `https://your-domain.com/integrations/github/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
<Note>
|
||||
If you have a GitHub organization, you can create an OAuth application under it
|
||||
in your organization Settings > Developer settings > OAuth Apps > New Org OAuth App.
|
||||
</Note>
|
||||
|
||||
## Add your OAuth application credentials to Infisical
|
||||
|
||||
Obtain the **Client ID** and generate a new **Client Secret** for your GitHub OAuth application.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your GitHub OAuth application:
|
||||
|
||||
- `CLIENT_ID_GITHUB`: The **Client ID** of your GitHub OAuth application.
|
||||
- `CLIENT_SECRET_GITHUB`: The **Client Secret** of your GitHub OAuth application.
|
||||
|
||||
Once added, restart your Infisical instance and use the GitHub integration.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,12 +3,14 @@ title: "GitLab"
|
||||
description: "How to sync secrets from Infisical to GitLab"
|
||||
---
|
||||
|
||||
Prerequisites:
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
Prerequisites:
|
||||
|
||||
- Set up and add envars to [Infisical Cloud](https://app.infisical.com)
|
||||
|
||||
<Tabs>
|
||||
<Tab title="Standard">
|
||||
<AccordionGroup>
|
||||
<Accordion title="Standard">
|
||||
## Navigate to your project's integrations tab
|
||||
|
||||

|
||||
@ -17,7 +19,7 @@ Prerequisites:
|
||||
|
||||
Press on the GitLab tile and grant Infisical access to your GitLab account.
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -29,13 +31,11 @@ Press on the GitLab tile and grant Infisical access to your GitLab account.
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which GitLab repository and press create integration to start syncing secrets to GitLab.
|
||||
|
||||

|
||||

|
||||
|
||||
</Tab>
|
||||
<Tab title="Pipeline">
|
||||
|
||||
## Generate service token
|
||||

|
||||

|
||||
</Accordion>
|
||||
<Accordion title="Pipeline">
|
||||
## Generate service token
|
||||
|
||||
Generate an [Infisical Token](/documentation/platform/token) for the specific project and environment in Infisical.
|
||||
|
||||
@ -65,6 +65,42 @@ build-job:
|
||||
- apt-get update && apt-get install -y infisical
|
||||
- infisical run -- npm run build
|
||||
```
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the GitLab integration on a self-hosted instance of Infisical requires configuring an application in GitLab
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an OAuth application in GitLab
|
||||
|
||||
Navigate to your user Settings > Applications to create a new GitLab application.
|
||||
|
||||

|
||||

|
||||
|
||||
Create the application. As part of the form, set the **Redirect URI** to `https://your-domain.com/integrations/gitlab/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
<Note>
|
||||
If you have a GitLab group, you can create an OAuth application under it
|
||||
in your group Settings > Applications.
|
||||
</Note>
|
||||
|
||||
## Add your OAuth application credentials to Infisical
|
||||
|
||||
Obtain the **Application ID** and **Secret** for your GitLab application.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your GitLab application:
|
||||
|
||||
- `CLIENT_ID_GITLAB`: The **Client ID** of your GitLab application.
|
||||
- `CLIENT_SECRET_GITLAB`: The **Client Secret** of your GitLab application.
|
||||
|
||||
Once added, restart your Infisical instance and use the GitLab integration.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,7 +3,9 @@ title: "Azure Key Vault"
|
||||
description: "How to sync secrets from Infisical to Azure Key Vault"
|
||||
---
|
||||
|
||||
Prerequisites:
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
Prerequisites:
|
||||
|
||||
- Set up and add envars to [Infisical Cloud](https://app.infisical.com)
|
||||
- Set up Azure and have an existing key vault
|
||||
@ -20,13 +22,13 @@ Press on the Azure Key Vault tile and grant Infisical access to Azure Key Vault.
|
||||
|
||||
Obtain the Vault URI of your key vault in the Overview tab.
|
||||
|
||||

|
||||

|
||||
|
||||
Select which Infisical environment secrets you want to sync to your key vault. Then, input your Vault URI from the previous step. Finally, press create integration to start syncing secrets to Azure Key Vault.
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -34,3 +36,38 @@ Select which Infisical environment secrets you want to sync to your key vault. T
|
||||
breaks E2EE, it's necessary for Infisical to sync the environment variables to
|
||||
the cloud platform.
|
||||
</Info>
|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the Azure KV integration on a self-hosted instance of Infisical requires configuring an application in Azure
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an application in Azure
|
||||
|
||||
Navigate to Azure Active Directory > App registrations to create a new application.
|
||||
|
||||

|
||||

|
||||
|
||||
Create the application. As part of the form, set the **Redirect URI** to `https://your-domain.com/integrations/azure-key-vault/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
## Add your application credentials to Infisical
|
||||
|
||||
Obtain the **Application (Client) ID** in Overview and generate a **Client Secret** in Certificate & secrets for your Azure application.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your Azure application.
|
||||
|
||||
- `CLIENT_ID_AZURE`: The **Application (Client) ID** of your Azure application.
|
||||
- `CLIENT_SECRET_AZURE`: The **Client Secret** of your Azure application.
|
||||
|
||||
Once added, restart your Infisical instance and use the Azure KV integration.
|
||||
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,7 +3,9 @@ title: "GCP Secret Manager"
|
||||
description: "How to sync secrets from Infisical to GCP Secret Manager"
|
||||
---
|
||||
|
||||
Prerequisites:
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
Prerequisites:
|
||||
|
||||
- Set up and add envars to [Infisical Cloud](https://app.infisical.com)
|
||||
|
||||
@ -15,7 +17,7 @@ Prerequisites:
|
||||
|
||||
Press on the GCP Secret Manager tile and grant Infisical access to GCP.
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -28,10 +30,42 @@ Press on the GCP Secret Manager tile and grant Infisical access to GCP.
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which GCP secret manager project. Lastly, press create integration to start syncing secrets to GCP secret manager.
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
<Warning>
|
||||
Using Infisical to sync secrets to GCP Secret Manager requires that you enable
|
||||
the Service Usage API in the Google Cloud project you want to sync secrets to. More on that [here](https://cloud.google.com/service-usage/docs/set-up-development-environment).
|
||||
</Warning>
|
||||
</Warning>
|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the GCP Secret Manager integration on a self-hosted instance of Infisical requires configuring an OAuth2 application in GCP
|
||||
and registering your instance with it.
|
||||
|
||||
## 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/integrations/gitlab/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
## Add your OAuth2 application credentials to Infisical
|
||||
|
||||
Obtain the **Client ID** and **Client Secret** for your GCP OAuth2 application.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your GCP OAuth2 application:
|
||||
|
||||
- `CLIENT_ID_GCP_SECRET_MANAGER`: The **Client ID** of your GCP OAuth2 application.
|
||||
- `CLIENT_SECRET_GCP_SECRET_MANAGER`: The **Client Secret** of your GCP OAuth2 application.
|
||||
|
||||
Once added, restart your Infisical instance and use the GCP Secret Manager integration.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,7 +3,9 @@ title: "Heroku"
|
||||
description: "How to sync secrets from Infisical to Heroku"
|
||||
---
|
||||
|
||||
Prerequisites:
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
Prerequisites:
|
||||
|
||||
- Set up and add envars to [Infisical Cloud](https://app.infisical.com)
|
||||
|
||||
@ -15,7 +17,7 @@ Prerequisites:
|
||||
|
||||
Press on the Heroku tile and grant Infisical access to your Heroku account.
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -28,5 +30,38 @@ Press on the Heroku tile and grant Infisical access to your Heroku account.
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which Heroku app and press create integration to start syncing secrets to Heroku.
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the Heroku integration on a self-hosted instance of Infisical requires configuring an API client in Heroku
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an API client in Heroku
|
||||
|
||||
Navigate to your user Account settings > Applications to create a new API client.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
Create the API client. As part of the form, set the **OAuth callback URL** to `https://your-domain.com/integrations/heroku/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
## Add your Heroku API client credentials to Infisical
|
||||
|
||||
Obtain the **Client ID** and **Client Secret** for your Heroku API client.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your Heroku API client.
|
||||
|
||||
- `CLIENT_ID_HEROKU`: The **Client ID** of your Heroku API client.
|
||||
- `CLIENT_SECRET_HEROKU`: The **Client Secret** of your Heroku API client.
|
||||
|
||||
Once added, restart your Infisical instance and use the Heroku integration.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,7 +3,9 @@ title: "Netlify"
|
||||
description: "How to sync secrets from Infisical to Netlify"
|
||||
---
|
||||
|
||||
<Warning>
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
<Warning>
|
||||
Infisical integrates with Netlify's new environment variable experience. If
|
||||
your site uses Netlify's old environment variable experience, you'll have to
|
||||
upgrade it to the new one to use this integration.
|
||||
@ -21,7 +23,7 @@ Prerequisites:
|
||||
|
||||
Press on the Netlify tile and grant Infisical access to your Netlify account.
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -34,5 +36,37 @@ Press on the Netlify tile and grant Infisical access to your Netlify account.
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which Netlify app and context. Lastly, press create integration to start syncing secrets to Netlify.
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the Netlify integration on a self-hosted instance of Infisical requires configuring an OAuth application in Netlify
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an OAuth application in Netlify
|
||||
|
||||
Navigate to your User settings > Applications > OAuth to create a new OAuth application.
|
||||
|
||||

|
||||

|
||||
|
||||
Create the OAuth application. As part of the form, set the **Redirect URI** to `https://your-domain.com/integrations/netlify/oauth2/callback`.
|
||||
|
||||

|
||||
|
||||
## Add your Netlify OAuth application credentials to Infisical
|
||||
|
||||
Obtain the **Client ID** and **Secret** for your Netlify OAuth application.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your Netlify OAuth application.
|
||||
|
||||
- `CLIENT_ID_NETLIFY`: The **Client ID** of your Netlify OAuth application.
|
||||
- `CLIENT_SECRET_NETLIFY`: The **Secret** of your Netlify OAuth application.
|
||||
|
||||
Once added, restart your Infisical instance and use the Netlify integration.
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|
@ -3,7 +3,9 @@ title: "Vercel"
|
||||
description: "How to sync secrets from Infisical to Vercel"
|
||||
---
|
||||
|
||||
Prerequisites:
|
||||
<Tabs>
|
||||
<Tab title="Usage">
|
||||
Prerequisites:
|
||||
|
||||
- Set up and add envars to [Infisical Cloud](https://app.infisical.com)
|
||||
|
||||
@ -15,7 +17,7 @@ Prerequisites:
|
||||
|
||||
Press on the Vercel tile and grant Infisical access to your Vercel account.
|
||||
|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
If this is your project's first cloud integration, then you'll have to grant
|
||||
@ -28,8 +30,8 @@ Press on the Vercel tile and grant Infisical access to your Vercel account.
|
||||
|
||||
Select which Infisical environment secrets you want to sync to which Vercel app and environment. Lastly, press create integration to start syncing secrets to Vercel.
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
<Info>
|
||||
Infisical syncs every envar to Vercel with type `encrypted` unless an existing
|
||||
@ -47,3 +49,37 @@ Select which Infisical environment secrets you want to sync to which Vercel app
|
||||
`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_SESSION_TOKEN`,
|
||||
`AWS_REGION`, and `AWS_DEFAULT_REGION`.
|
||||
</Warning>
|
||||
</Tab>
|
||||
<Tab title="Self-Hosted Setup">
|
||||
Using the Vercel integration on a self-hosted instance of Infisical requires configuring an integration in Vercel.
|
||||
and registering your instance with it.
|
||||
|
||||
## Create an integration in Vercel
|
||||
|
||||
Navigate to Integrations > Integration Console to create a new integration.
|
||||
|
||||

|
||||

|
||||
|
||||
Create the application. As part of the form, set **Redirect URL** to `https://your-domain.com/integrations/vercel/oauth2/callback`. Also,
|
||||
be sure to set the API Scopes according to the second screenshot below.
|
||||
|
||||

|
||||

|
||||
|
||||
## Add your Vercel integration credentials to Infisical
|
||||
|
||||
Obtain the **Client (Integration) ID** and **Client (Integration) Secret** for your Vercel integration.
|
||||
|
||||

|
||||
|
||||
Back in your Infisical instance, add two new environment variables for the credentials of your Vercel integration.
|
||||
|
||||
- `CLIENT_ID_VERCEL`: The **Client (Integration) ID** of your Vercel integration.
|
||||
- `CLIENT_SECRET_VERCEL`: The **Client (Integration) Secret** of your Vercel integration.
|
||||
|
||||
Once added, restart your Infisical instance and use the Vercel integration.
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
|