From 5cf5c599ef0ce71af527068925c8b26b0742cda5 Mon Sep 17 00:00:00 2001 From: Dominic R Date: Sun, 2 Feb 2025 22:01:40 -0500 Subject: [PATCH] add references to gatus, freshrss, frappe; frappe new authentik config format, freshrss revamp; fix typo in bookstack cfg --- .../integrations/services/bookstack/index.mdx | 2 +- website/integrations/services/frappe/index.md | 26 +++++-- .../integrations/services/freshrss/index.md | 60 --------------- .../integrations/services/freshrss/index.mdx | 77 +++++++++++++++++++ website/integrations/services/gatus/index.mdx | 6 +- 5 files changed, 102 insertions(+), 69 deletions(-) delete mode 100644 website/integrations/services/freshrss/index.md create mode 100644 website/integrations/services/freshrss/index.mdx diff --git a/website/integrations/services/bookstack/index.mdx b/website/integrations/services/bookstack/index.mdx index 81424db535d0..a0afa136c55b 100644 --- a/website/integrations/services/bookstack/index.mdx +++ b/website/integrations/services/bookstack/index.mdx @@ -98,7 +98,7 @@ In the authentik Admin Interface, navigate to **Applications** > **Applications* - Set the **Issuer** to https://authentik.company. - Set the **Service Provider Binding** to `Post`. - Set the **Audience** to https://bookstack.company/saml2/metadata. - - Under **Advanced protocol settings**, set **Signing Certificate** to use any availible certificate. + - Under **Advanced protocol settings**, set **Signing Certificate** to use any available certificate. - **Configure Bindings** _(optional):_ you can create a [binding](/docs/add-secure-apps/flows-stages/bindings/) (policy, group, or user) to manage the listing and access to applications on a user’s **My applications** page. **Obtain the SAML metadata URL** diff --git a/website/integrations/services/frappe/index.md b/website/integrations/services/frappe/index.md index 50460652f02c..9e4d8ce6d447 100644 --- a/website/integrations/services/frappe/index.md +++ b/website/integrations/services/frappe/index.md @@ -31,12 +31,20 @@ This documentation only lists the settings that have been changed from their def ## authentik configuration -1. From the **authentik Admin interface**, navigate to **Applications** -> **Applications**. -2. Use the [wizard](https://docs.goauthentik.io/docs/add-secure-apps/applications/manage_apps#add-new-applications) to create a new application and a **OAuth2/OpenID Connect provider**. During this process: +To support the integration of Frappe with authentik, you need to create an application/provider pair in authentik. + +**Create an application and provider in authentik** + +In the authentik Admin Interface, navigate to **Applications** > **Applications** and click **[Create with Provider](/docs/add-secure-apps/applications/manage_apps#add-new-applications)** to create an application and provider pair. (Alternatively, you can create only an application, without a provider, by clicking **Create**.) + +- **Application**: provide a descriptive name, an optional group for the type of application, the policy engine mode, and optional UI settings. +- **Choose a Provider type**: select **OAuth2/OpenID Connect** as the provider type. +- **Configure the Provider**: provide a name (or accept the auto-provided name), the authorization flow to use for this provider, and the following required configurations. - Note the **Client ID**, **Client Secret**, and **slug** values because they will be required later. - Set a `Strict` redirect URI to https://frappe.company/api/method/frappe.integrations.oauth2_logins.custom/provider. - Select any available signing key. - Under **Advanced Protocol Settings**, set **Subject mode** to be `Based on the Users's username`. +- **Configure Bindings** _(optional):_ you can create a [binding](/docs/add-secure-apps/flows-stages/bindings/) (policy, group, or user) to manage the listing and access to applications on a user’s **My applications** page. ## Frappe configuration @@ -46,7 +54,7 @@ This documentation only lists the settings that have been changed from their def 2. **Add a New Social Login Key** - - Click the black **+ New** button in the top-right corner. + - Click the black **+ New** button in the top-right corner. ![](./frappe1.png) 3. **Enter the Required Settings** @@ -59,7 +67,7 @@ This documentation only lists the settings that have been changed from their def - **Configuration** - - **Sign-ups**: Set to **Allow**. + - **Sign-ups**: Set to **Allow**. ![](./frappe2.png) - **Identity Details** @@ -69,7 +77,7 @@ This documentation only lists the settings that have been changed from their def - **Authorize URL**: `/application/o/authorize/` - **Access Token URL**: `/application/o/token/` - **Redirect URL**: https://frappe.company/api/method/frappe.integrations.oauth2_logins.custom/provider - - **API Endpoint**: `/application/o/userinfo/` + - **API Endpoint**: `/application/o/userinfo/` ![](./frappe3.png) - **Client Information** @@ -82,6 +90,10 @@ This documentation only lists the settings that have been changed from their def 4. **Save the Configuration** - Click the black **Save** button in the top-right corner to complete the setup. -## Verification +## References + +- [Frappe's official OpenID Connect guide](https://docs.frappe.io/framework/user/en/guides/integration/openid_connect_and_frappe_social_login) + +## Configuration verification -First, open an incognito browser window and go to `https://frappe.company`. On the login screen, click **Login with Provider**. You will be redirected to authentik to enter your credentials and to authorize the application. Once that's done, you will be redirected to the home screen of the Frappe application, confirming the successful login. +To verify that authentik is correctly set up with Frappe, navigate to your Frappe installation and click **Login with Provider**. A successful login should redirect you to the main page of your installation. diff --git a/website/integrations/services/freshrss/index.md b/website/integrations/services/freshrss/index.md deleted file mode 100644 index 483aa25d74f5..000000000000 --- a/website/integrations/services/freshrss/index.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Integrate with FreshRSS -sidebar_label: FreshRSS ---- - -# Integrate with FreshRSS - -Support level: Community - -## What is FreshRSS - -> FreshRSS is a self-hosted RSS feed aggregator. -> -> -- https://github.com/FreshRSS/FreshRSS - -## Preparation - -The following placeholders are used in this guide: - -- `freshrss.company` is the FQDN of the FreshRSS installation. -- `authentik.company` is the FQDN of the authentik installation. - -:::note -This documentation only lists the settings that have been changed from their default values. Please verify your changes carefully to avoid any issues accessing your application. -::: - -## authentik configuration - -1. From the **authentik Admin interface**, navigate to **Applications** -> **Applications**. -2. Use the [wizard](https://docs.goauthentik.io/docs/add-secure-apps/applications/manage_apps#add-new-applications) to create a new application and a **OAuth2/OpenID Connect provider**. During this process: - - Note the **Client ID**, **Client Secret**, and **slug** values because they will be required later. - - Add two `Strict` redirect URI and set them to https://freshrss.company/i/oidc/ and https://freshrss.company:443/i/oidc/. If FreshRSS is exposed on a port other than `443`, update the second redirect URI accordingly. - - Select any available signing key. - -## FreshRSS configuration - -:::info -This integration is compatible only with Docker or Kubernetes installations of FreshRSS that use the [FreshRSS Docker image](https://hub.docker.com/r/freshrss/freshrss/) on x86_64 systems. Note that the Alpine version of the image is not supported. For more details, see [this issue on the FreshRSS GitHub repository](https://github.com/FreshRSS/FreshRSS/issues/5722). -::: - -To enable OIDC login with FreshRSS, update your `.env` file with the following variables: - -``` -OIDC_ENABLED=1 -OIDC_PROVIDER_METADATA_URL=https://authentik.company/application/o/application-slug/.well-known/openid-configuration -OIDC_CLIENT_ID=Your Client ID -OIDC_CLIENT_SECRET=Your Client Secret -OIDC_X_FORWARDED_HEADERS=X-Forwarded-Port X-Forwarded-Proto X-Forwarded-Host -OIDC_SCOPES=openid email profile -``` - -:::warning -Before restarting your Docker container, ensure that at least one Admin user in your FreshRSS instance has a username that matches an authentik user. -::: - -Restart your FreshRSS container, then log in as a user that exists in both FreshRSS and authentik. - -Go to **Settings** -> **Authentication** in your FreshRSS instance and set the authentication method to **HTTP**. - -Additional configuration options can be found in the [FreshRSS documentation for OpenID Connect](https://freshrss.github.io/FreshRSS/en/admins/16_OpenID-Connect.html). diff --git a/website/integrations/services/freshrss/index.mdx b/website/integrations/services/freshrss/index.mdx new file mode 100644 index 000000000000..4d0d3964729f --- /dev/null +++ b/website/integrations/services/freshrss/index.mdx @@ -0,0 +1,77 @@ +--- +title: Integrate with FreshRSS +sidebar_label: FreshRSS +--- + +import IntegrationsMultilineCodeblock from "@site/src/components/Integrations/IntegrationsCodeblock"; + +# Integrate with FreshRSS + +Support level: Community + +## What is FreshRSS + +> FreshRSS is a self-hosted RSS feed aggregator. +> +> -- https://github.com/FreshRSS/FreshRSS + +## Preparation + +The following placeholders are used in this guide: + +- `freshrss.company` is the FQDN of the FreshRSS installation. +- `authentik.company` is the FQDN of the authentik installation. + +:::note +This documentation only lists the settings that have been changed from their default values. Please verify your changes carefully to avoid any issues accessing your application. +::: + +## authentik configuration + +To support the integration of FreshRss with authentik, you need to create an application/provider pair in authentik. + +**Create an application and provider in authentik** + +In the authentik Admin Interface, navigate to **Applications** > **Applications** and click **[Create with Provider](/docs/add-secure-apps/applications/manage_apps#add-new-applications)** to create an application and provider pair. (Alternatively you can create only an application, without a provider, by clicking **Create**.) + +- **Application**: provide a descriptive name, an optional group for the type of application, the policy engine mode, and optional UI settings. +- **Choose a Provider type**: select **OAuth2/OpenID Connect** as the provider type. +- **Configure the Provider**: provide a name (or accept the auto-provided name), the authorization flow to use for this provider, and the following required configurations. + - Note the **Client ID**,**Client Secret**, and **slug** values because they will be required later. + - Add two `Strict` redirect URI and set them to https://freshrss.company/i/oidc/ and https://freshrss.company:443/i/oidc/. If FreshRSS is exposed on a port other than `443`, update the second redirect URI accordingly. + - Select any available signing key. +- **Configure Bindings** _(optional):_ you can create a [binding](/docs/add-secure-apps/flows-stages/bindings/) (policy, group, or user) to manage the listing and access to applications on a user’s **My applications** page. + +## FreshRSS configuration + +:::info +This integration is compatible only with Docker or Kubernetes installations of FreshRSS that use the [FreshRSS Docker image](https://hub.docker.com/r/freshrss/freshrss/) on x86_64 systems. Note that the Alpine version of the image is not supported. For more details, see [this issue on the FreshRSS GitHub repository](https://github.com/FreshRSS/FreshRSS/issues/5722). +::: + +:::warning +Before restarting your Docker container, ensure that at least one Admin user in your FreshRSS instance has a username that matches an authentik user. +::: + +To enable OIDC login with FreshRSS, update your `.env` file to include the following variables: + + + {` +OIDC_ENABLED=1 +OIDC_PROVIDER_METADATA_URL=https://authentik.company/application/o/your-application-slug/.well-known/openid-configuration +OIDC_CLIENT_ID=Your Client ID from authentik +OIDC_CLIENT_SECRET=Your Client Secret from authentik +OIDC_X_FORWARDED_HEADERS=X-Forwarded-Port X-Forwarded-Proto X-Forwarded-Host +OIDC_SCOPES=openid email profile +`} + + +Once your container or pod is restarted, attempt to login as a user that exists in both FreshRSS and authentik. Go to **Settings** -> **Authentication** and set the authentication method to **HTTP**. + +## References + +- [FreshRSS documentation for OpenID Connect](https://freshrss.github.io/FreshRSS/en/admins/16_OpenID-Connect.html). +- [FreshRSS documentation for OIDC with authentik](https://freshrss.github.io/FreshRSS/en/admins/16_OpenID-Connect-Authentik.html) + +## Configuration verification + +To verify that authentik is correctly set up with FreshRSS, log out of FreshRSS and try logging back in using authentik. You should see a new button on the login page for OIDC authentication. diff --git a/website/integrations/services/gatus/index.mdx b/website/integrations/services/gatus/index.mdx index c0d959aaa22c..013473088c8a 100644 --- a/website/integrations/services/gatus/index.mdx +++ b/website/integrations/services/gatus/index.mdx @@ -69,6 +69,10 @@ security: `} +## References + +- [Gatus Security documentation for OpenID Connect](https://github.com/TwiN/gatus?tab=readme-ov-file#oidc) + ## Configuration verification -To confirm that authentik is properly configured with Gatus, click the **Login with SSO** button found on the main page of your Gatus installation. A successful login will redirect you to your status page. +To confirm that authentik is properly configured with Gatus, click the **Login with SSO** button found on the main page of your Gatus installation. A successful login should redirect you to your status page.