From a9a7643e715ff5e0afabaafa43433102e2a66780 Mon Sep 17 00:00:00 2001 From: XtremeOwnage <5262735+XtremeOwnageDotCom@users.noreply.github.com> Date: Wed, 25 Oct 2023 15:30:14 -0500 Subject: [PATCH] Create "Authentik" specific OIDC configuration. (#5746) * Create 16_OpenID-Connect-Authentik.md * Local images + text improvements --------- Co-authored-by: Alexandre Alapetite --- docs/en/admins/16_OpenID-Connect-Authentik.md | 70 ++++++++++++++++++ docs/en/admins/16_OpenID-Connect.md | 6 ++ docs/en/img/admins/authentik-01.png | Bin 0 -> 14856 bytes docs/en/img/admins/authentik-02.png | Bin 0 -> 17216 bytes docs/en/img/admins/authentik-03.png | Bin 0 -> 12914 bytes docs/en/img/admins/authentik-04.png | Bin 0 -> 10965 bytes 6 files changed, 76 insertions(+) create mode 100644 docs/en/admins/16_OpenID-Connect-Authentik.md create mode 100644 docs/en/img/admins/authentik-01.png create mode 100644 docs/en/img/admins/authentik-02.png create mode 100644 docs/en/img/admins/authentik-03.png create mode 100644 docs/en/img/admins/authentik-04.png diff --git a/docs/en/admins/16_OpenID-Connect-Authentik.md b/docs/en/admins/16_OpenID-Connect-Authentik.md new file mode 100644 index 000000000..eacd64d40 --- /dev/null +++ b/docs/en/admins/16_OpenID-Connect-Authentik.md @@ -0,0 +1,70 @@ +# Setting up Authentik for FreshRSS + +**[authentik](https://goauthentik.io/)** is an open-source Identity Provider compatible with OpenID Connect (OIDC) (see [FreshRSS’ OpenID Connect documentation](16_OpenID-Connect.md)). + +## 1. Create OAuth2/OpenID Provider + +In authentik Web interface: + +![authentik-new-provider-type](../img/admins/authentik-01.png) + +Click Next. + +Give it a name, and select your desired auth flows (default flows for this example). + +![authentik-new-provider-create](../img/admins/authentik-02.png) + +Copy the ID / secret for later. + +Set the redirect URIs for FreshRSS: If FreshRSS’ root is `https://freshrss.example.net/`, the proper redirect URI would be `https://freshrss.example.net/i/oidc` + +You will need to choose a signing key. +If you don’t have one, generate one under *System > Certificates*. + +![authentik-new-provider-secrets](../img/admins/authentik-03.png) + +After you have created the provider, you will need to create an application for it. + +![authentik-create-application](../img/admins/authentik-04.png) + +Finally, go to *Providers*, and click on the OIDC provider you created for FreshRSS. + +You will want to copy the `OpenID Configuration URL` value listed. +You will need this in the next step. + +## Step 2. Configure FreshRSS’ environment variables + +Note: this is using a Kubernetes ConfigMap. +However, these are just environment variables mapped into the container. + +```yaml +apiVersion: v1 +kind: ConfigMap +metadata: + name: freshrss-config + namespace: freshrss +data: + PGID: "100" + PUID: "65534" + CRON_MIN: "*/15" + OIDC_ENABLED: "1" + # Put your "OpenID Configuration URL" here, from the previous step: + OIDC_PROVIDER_METADATA_URL: https://authentik.example.net/application/o/freshrss/.well-known/openid-configuration + OIDC_REMOTE_USER_CLAIM: preferred_username + # Put your ID here, from the previous step: + OIDC_CLIENT_ID: t48O5c6z2Ia1XXXXXXX + # Put your secret here, from the previous step: + OIDC_CLIENT_SECRET: tDUhtfgxY5mCIZ1M1ItauXXXXX + # TODO: I have no idea what goes here, but a random string seems to work just fine: + OIDC_CLIENT_CRYPTO_KEY: WnoO3kRzXynag2XXXXXXXXXX + OIDC_SCOPES: "openid profile" + # These headers work for Traefik. + # May need to be adjusted depending on your proxy configuration: + OIDC_X_FORWARDED_HEADERS: X-Forwarded-Host X-Forwarded-Port X-Forwarded-Proto +``` + +## Step 3. Enable OIDC + +During FreshRSS initial setup, or inside of the authentication settings for FreshRSS, set the authentication method to HTTP. + +See [FreshRSS’ OpenID Connect documentation](16_OpenID-Connect.md) for more information. diff --git a/docs/en/admins/16_OpenID-Connect.md b/docs/en/admins/16_OpenID-Connect.md index e034e4ac9..ac1bbf03d 100644 --- a/docs/en/admins/16_OpenID-Connect.md +++ b/docs/en/admins/16_OpenID-Connect.md @@ -39,3 +39,9 @@ After being properly configured, OIDC support can be activated in FreshRSS. During a new FreshRSS install, the **HTTP Authentication Method** must be picked. After install, the method can be changed in *Administration > Authentication*. Note that this option will be greyed out if Apache is unable to read the `REMOTE_USER` variable. + +## Identity Provider + +See specific instructions for: + +* [authentik](16_OpenID-Connect-Authentik.md) diff --git a/docs/en/img/admins/authentik-01.png b/docs/en/img/admins/authentik-01.png new file mode 100644 index 0000000000000000000000000000000000000000..b15ac1a5c2cc92532095c1dc4893e41329614945 GIT binary patch literal 14856 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
  • $p@HnCBcYV793gSV&n86KtJ+@1PiQ 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 Vs`SpY?gH*lUPeVaU((R${{j5tknI2f literal 0 HcmV?d00001 diff --git a/docs/en/img/admins/authentik-03.png b/docs/en/img/admins/authentik-03.png new file mode 100644 index 0000000000000000000000000000000000000000..4db2e4e7e18a173cd96ef2a6069b5ab80bf0f313 GIT binary patch literal 12914 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 z⋘_N9PZTmx5h9n9m^bNqe9bUU6jHR(LNpT~T5$vG!=`_%`&(D+CwgneX2w<_Y|b^?if7( EKR)?QG5`Po literal 0 HcmV?d00001