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:
		
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 92 KiB | 
							
								
								
									
										68
									
								
								website/integrations/services/dokuwiki/index.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								website/integrations/services/dokuwiki/index.md
									
									
									
									
									
										Normal file
									
								
							| @ -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 | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | 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
	
	Block a user
	 cmellwig
					cmellwig