Table of Contents

DokuWiki

service-urls:
https://wiki.hamburg.ccc.de
host-fqdn:
wiki-intern.hamburg.ccc.de
server:
Chaosknoten
maintainer:
jtbx
ccchh-id-integration:
true

Diese DokuWiki-Instanz soll zur Dokumentation von Dingen rund um den CCCHH dienen.

Bislang hatte der CCCHH ein öffentliches MediaWiki und zusätzlich ein per HTTP Basic Auth “geschütztes” nichtöffentliches Wiki. Dies hat jedoch dazu geführt, dass einige Informationen doppelt angelegt wurden und dass in zwei Wikis nach Informationen gesucht werden musste.

DokuWiki bietet im Gegensatz zu MediaWiki eine brauchbare Gruppen- und Rechteverwaltung mit der einzelne Bereiche nur einem beschränkten Personenkreis zugänglich gemacht werden können. Prinzipiell soll es aber immer noch jeder interessierten Person erlaubt und möglich sein einen Account zu bekommen. Einzelne vereinsinterne Themen (wie Plenumsprotokolle und Kontaktdaten) sollten bzw. müssen jedoch nur dem Kreis der “Mitglieder” (Personen, die auf der intern-Mailingliste sind) zugänglich sein.

Struktur

Aus den oben beschriebenen Anforderungen ergibt sich folgende grundlegende Struktur in Form von Namespaces:

Konfiguration

Logins sind ausschließlich über das CCCHH ID OAuth möglich. Personen aus dem Infra-Team haben Admin-Rechte, um das Wiki zu aktualisieren, ACLs anzupassen oder Plugins zu installieren.

Folgende Plugins sind installiert, um die Syntax zu erweitern:

Konfigurationsanpassungen

/var/www/dokuwiki/conf/local.php:

$conf['title'] = 'CCCHH Wiki';
$conf['license'] = 'cc-zero';
$conf['baseurl'] = 'https://wiki.ccchh.net';
$conf['breadcrumbs'] = 0;
$conf['youarehere'] = 1;
$conf['dformat'] = '%Y-%m-%d %H:%M %Z';
$conf['toptoclevel'] = '2';
$conf['useheading'] = 'content';
$conf['sneaky_index'] = 1;
$conf['useacl'] = 1;
$conf['authtype'] = 'oauth';
$conf['superuser'] = '@admin';
$conf['disableactions'] = 'register,resendpwd';
$conf['mailguard'] = 'none';
$conf['cachetime'] = 60*60;
$conf['userewrite'] = '1';
$conf['plugin']['catlist']['default_sort'] = 'ascending';
$conf['plugin']['catlist']['nocache'] = 1;
$conf['plugin']['catlist']['hide_acl_nsnotr'] = 1;
$conf['plugin']['data']['edit_content_only'] = 1;
$conf['plugin']['oauth']['singleService'] = 1;
$conf['plugin']['oauth']['register-on-auth'] = 1;
$conf['plugin']['oauth']['overwrite-groups'] = 1;
$conf['plugin']['oauthkeycloak']['key'] = 'wiki';
$conf['plugin']['oauthkeycloak']['secret'] = 'xPyxtN9AMwsFuY8tk0go9d0EqLV5dphg';
$conf['plugin']['oauthkeycloak']['openidurl'] = 'https://id.ccchh.net/realms/ccchh/.well-known/openid-configuration';
$conf['plugin']['oauthkeycloak']['label'] = 'CCCHH ID';
// see https://github.com/YoitoFes/dokuwiki-plugin-oauthkeycloak/issues/5#issuecomment-1326055358
$conf['auth_security_timeout'] = 120;    //time (seconds) auth data is considered valid, set to 0 to recheck on every page view