website/integrations: DokuWiki integration (#5208)
* website: adds dokuwiki integration * Apply suggestions from code review Signed-off-by: Jens L. <jens@beryju.org> * removed patch note since patch is upstream now * format Signed-off-by: Jens Langhammer <jens@goauthentik.io> --------- Signed-off-by: Jens L. <jens@beryju.org> Signed-off-by: Jens Langhammer <jens@goauthentik.io> Co-authored-by: Christian Mellwig <mellwig.c@fug-elektronik.de> Co-authored-by: Jens L <jens@beryju.org> Co-authored-by: Jens Langhammer <jens@goauthentik.io>
This commit is contained in:
parent
adf4191066
commit
f72fa41a75
Binary file not shown.
After Width: | Height: | Size: 92 KiB |
|
@ -0,0 +1,68 @@
|
||||||
|
---
|
||||||
|
title: DokuWiki
|
||||||
|
---
|
||||||
|
|
||||||
|
<span class="badge badge--secondary">Support level: Community</span>
|
||||||
|
|
||||||
|
## What is Service Name
|
||||||
|
|
||||||
|
From https://en.wikipedia.org/wiki/DokuWiki
|
||||||
|
|
||||||
|
:::note
|
||||||
|
DokuWiki is a wiki application licensed under GPLv2 and written in the PHP programming language. It works on plain text files and thus does not need a database. Its syntax is similar to the one used by MediaWiki. It is often recommended as a more lightweight, easier to customize alternative to MediaWiki.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Preparation
|
||||||
|
|
||||||
|
The following placeholders will be used:
|
||||||
|
|
||||||
|
- `dokuwiki.company` is the FQDN of the DokiWiki install.
|
||||||
|
- `authentik.company` is the FQDN of the authentik install.
|
||||||
|
|
||||||
|
## Service Configuration
|
||||||
|
|
||||||
|
In DokuWiki, navigate to the _Extension Manager_ section in the _Administration_ interface and install
|
||||||
|
|
||||||
|
- https://www.dokuwiki.org/plugin:oauth
|
||||||
|
- https://www.dokuwiki.org/plugin:oauthgeneric
|
||||||
|
|
||||||
|
Navigate to _Configuration Settings_ section in the _Administration_ interface and change _Oauth_ and _Oauthgeneric_ options:
|
||||||
|
|
||||||
|
For _Oauth_:
|
||||||
|
|
||||||
|
- Check the _plugin»oauth»register-on-auth_ option
|
||||||
|
|
||||||
|
For _Oauthgeneric_:
|
||||||
|
|
||||||
|
- plugin»oauthgeneric»key: The Application UID
|
||||||
|
- plugin»oauthgeneric»secret: The Application Secret
|
||||||
|
- plugin»oauthgeneric»authurl: https://authentik.company/application/o/authorize/
|
||||||
|
- plugin»oauthgeneric»tokenurl: https://authentik.company/application/o/token/
|
||||||
|
- plugin»oauthgeneric»userurl: https://authentik.company/application/o/userinfo/
|
||||||
|
- plugin»oauthgeneric»authmethod: Bearer Header
|
||||||
|
- plugin»oauthgeneric»scopes: email, openid, profile
|
||||||
|
- plugin»oauthgeneric»needs-state: checked
|
||||||
|
- plugin»oauthgeneric»json-user: preferred_username
|
||||||
|
- plugin»oauthgeneric»json-name: name
|
||||||
|
- plugin»oauthgeneric»json-mail: email
|
||||||
|
- plugin»oauthgeneric»json-grps: groups
|
||||||
|
|
||||||
|
![](./dokuwiki_oauth_generic.png)
|
||||||
|
|
||||||
|
In the _Configuration Settings_ section in the _Administration_ interface navigate to _Authentication_ and activate _oauth_ in _Authentication backend_.
|
||||||
|
|
||||||
|
## authentik Configuration
|
||||||
|
|
||||||
|
### Provider
|
||||||
|
|
||||||
|
In authentik, under _Providers_, create an _OAuth2/OpenID Provider_ with these settings:
|
||||||
|
|
||||||
|
- Redirect URI: The _Callback URL / Redirect URI_ from _plugin»oauth»info_, usually `dokuwiki.company/doku.php`
|
||||||
|
- Signing Key: Select any available key
|
||||||
|
|
||||||
|
Note the _client ID_ and _client secret_, then save the provider. If you need to retrieve these values, you can do so by editing the provider.
|
||||||
|
|
||||||
|
### Application
|
||||||
|
|
||||||
|
In authentik, create an application which uses this provider. Optionally apply access restrictions to the application using policy bindings.
|
||||||
|
Set the Launch URL to the _Callback URL / Redirect URI_ (`dokuwiki.company/doku.php`).
|
|
@ -13,6 +13,7 @@ module.exports = {
|
||||||
label: "Chat, Communication & Collaboration",
|
label: "Chat, Communication & Collaboration",
|
||||||
items: [
|
items: [
|
||||||
"services/bookstack/index",
|
"services/bookstack/index",
|
||||||
|
"services/dokuwiki/index",
|
||||||
"services/hedgedoc/index",
|
"services/hedgedoc/index",
|
||||||
"services/kimai/index",
|
"services/kimai/index",
|
||||||
"services/mastodon/index",
|
"services/mastodon/index",
|
||||||
|
|
Reference in New Issue