From bbd0ff24d8383b2ab73d170d0df0e21f351468fd Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Tue, 29 Dec 2020 20:38:38 +0100 Subject: [PATCH] docs: add grafana integration docs --- .../integrations/services/grafana/index.md | 66 +++++++++++++++++++ .../integrations/services/harbor/index.md | 7 +- .../services/vmware-vcenter/index.md | 3 +- website/sidebars.js | 1 + website/src/pages/index.js | 4 +- 5 files changed, 74 insertions(+), 7 deletions(-) create mode 100644 website/docs/integrations/services/grafana/index.md diff --git a/website/docs/integrations/services/grafana/index.md b/website/docs/integrations/services/grafana/index.md new file mode 100644 index 000000000..03ca9253d --- /dev/null +++ b/website/docs/integrations/services/grafana/index.md @@ -0,0 +1,66 @@ +--- +title: Grafana +--- + +## What is Grafana + +From https://en.wikipedia.org/wiki/Grafana + +:::note +Grafana is a multi-platform open source analytics and interactive visualization web application. It provides charts, graphs, and alerts for the web when connected to supported data sources, Grafana Enterprise version with additional capabilities is also available. It is expandable through a plug-in system. +::: + +## Preparation + +The following placeholders will be used: + +- `grafana.company` is the FQDN of the Grafana install. +- `authentik.company` is the FQDN of the authentik install. + +Create an application in authentik. Create an OAuth2/OpenID provider with the following parameters: + +- Client Type: `Confidential` +- JWT Algorithm: `RS256` +- Scopes: OpenID, Email and Profile +- RSA Key: Select any available key +- Redirect URIs: `https://grafana.company/login/generic_oauth` + +Note the Client ID and Client Secret values. Create an application, using the provider you've created above. Note the slug of the application you've created. + +## Grafana + +If your Grafana is running in docker, set the following environment variables: + +```yaml +environment: + GF_AUTH_GENERIC_OAUTH_ENABLED: "true" + GF_AUTH_GENERIC_OAUTH_NAME: "authentik" + GF_AUTH_GENERIC_OAUTH_CLIENT_ID: "" + GF_AUTH_GENERIC_OAUTH_CLIENT_SECRET: "" + GF_AUTH_GENERIC_OAUTH_SCOPES: "openid profile email" + GF_AUTH_GENERIC_OAUTH_AUTH_URL: "https://authentik.company/application/o/authorize/" + GF_AUTH_GENERIC_OAUTH_TOKEN_URL: "https://authentik.company/application/o/token/" + GF_AUTH_GENERIC_OAUTH_API_URL: "https://authentik.company/application/o/userinfo/" + GF_AUTH_SIGNOUT_REDIRECT_URL: "https://authentik.company/application/o//end-session/" + # Optionally enable auto-login + GF_AUTH_OAUTH_AUTO_LOGIN: "true" +``` + +If you are using a config-file instead, you have to set these options: + +```ini +[auth] +signout_redirect_url = https://authentik.company/application/o//end-session/ +# Optionally enable auto-login +oauth_auto_login = true + +[auth.generic_oauth] +name = authentik +enabled = true +client_id = +client_secret = +scopes = openid email profile +auth_url = https://authentik.company/application/o/authorize/ +token_url = https://authentik.company/application/o/token/ +api_url = https://authentik.company/application/o/userinfo/ +``` diff --git a/website/docs/integrations/services/harbor/index.md b/website/docs/integrations/services/harbor/index.md index 4177d3ea8..f1a5c40af 100644 --- a/website/docs/integrations/services/harbor/index.md +++ b/website/docs/integrations/services/harbor/index.md @@ -17,13 +17,14 @@ The following placeholders will be used: - `harbor.company` is the FQDN of the Harbor install. - `authentik.company` is the FQDN of the authentik install. -Create an application in authentik. Create an OpenID provider with the following parameters: +Create an OAuth2/OpenID provider with the following parameters: - Client Type: `Confidential` -- Response types: `code (Authorization Code Flow)` - JWT Algorithm: `RS256` - Redirect URIs: `https://harbor.company/c/oidc/callback` -- Scopes: `openid` +- Scopes: OpenID, Email and Profile + +Note the Client ID and Client Secret values. Create an application, using the provider you've created above. ## Harbor diff --git a/website/docs/integrations/services/vmware-vcenter/index.md b/website/docs/integrations/services/vmware-vcenter/index.md index 1af95c656..9670fb4d1 100644 --- a/website/docs/integrations/services/vmware-vcenter/index.md +++ b/website/docs/integrations/services/vmware-vcenter/index.md @@ -51,12 +51,11 @@ Under _Sources_, click _Edit_ and ensure that "Autogenerated Active Directory Ma ### Step 3 -Under _Providers_, create an OAuth2/OpenID Provider with these settings: +Under _Providers_, create an OAuth2/OpenID provider with these settings: - Client Type: Confidential - JWT Algorithm: RS256 - Redirect URI: `https://vcenter.company/ui/login/oauth2/authcode` -- Post Logout Redirect URIs: `https://vcenter.company/ui/login` - Sub Mode: If your Email address Schema matches your UPN, select "Based on the User's Email...", otherwise select "Based on the User's UPN...". - Scopes: Select the Scope Mapping you've created in Step 1 diff --git a/website/sidebars.js b/website/sidebars.js index 8f5a307b5..1760bf768 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -101,6 +101,7 @@ module.exports = { "integrations/services/aws/index", "integrations/services/awx-tower/index", "integrations/services/gitlab/index", + "integrations/services/grafana/index", "integrations/services/harbor/index", "integrations/services/home-assistant/index", "integrations/services/nextcloud/index", diff --git a/website/src/pages/index.js b/website/src/pages/index.js index dda9064a4..5b529a011 100644 --- a/website/src/pages/index.js +++ b/website/src/pages/index.js @@ -121,8 +121,8 @@ function Home() {

Utmost flexibility

You can adopt authentik to your environment, - regardless of your requirements. Need an Active- - Directory integrated SSO Provider? Do you want + regardless of your requirements. Need an Active-Directory + integrated SSO Provider? Do you want to implement a custom enrollment process for your customers? Are you developing an application and don't want to deal with User verification and recovery?