DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:oauthgeneric:iserv

iServ OAuth Config

IServ is a popular school management system in Germany. Here is how to configure oauthgeneric to authenticate DokuWiki against an IServ setup.

Configuring IServ

Log into your IServ instance and navigate to “Verwaltung” and enter your administrator password.

Then go to System → Single-Sign-On.

Add a new Entry with the following data:

  • Allgemein
    • Name: Your Wiki Name
    • Vertrauenswürdig: ja
  • Rechte
    • leave empty
  • Beschränkungen
    • Erlaubte Grant-Typen
      • You probably need at least Autorisierungs-Code and Erneuerungs-Token, but if you don't want to experiment to figure it out, just enable them all
    • Auf Scopes einschränken
      • You need at least E-Mail, OpenID and Profil. You probably want Roles or Gruppen
      • If unsure just enable them all
  • Anwendung
    • Weiterleitung-URIs: add the redirect URL the OAuth plugin shows in the config here

Configuring oAuth Generic

The following configures the plugin for an IServ server available at https://yoururl.de/iserv/. User's roles will be added as DokuWiki groups.

$conf['plugin']['oauthgeneric']['key'] = 'your key as shown in IServ';
$conf['plugin']['oauthgeneric']['secret'] = 'your secret as shown in IServ';
$conf['plugin']['oauthgeneric']['authurl'] = 'https://yoururl.de/iserv/oauth/v2/auth';
$conf['plugin']['oauthgeneric']['tokenurl'] = 'https://yoururl.de/iserv/oauth/v2/token';
$conf['plugin']['oauthgeneric']['userurl'] = 'https://yoururl.de/iserv/public/oauth/userinfo';
$conf['plugin']['oauthgeneric']['authmethod'] = '1'; // This is bearer header!
$conf['plugin']['oauthgeneric']['scopes'] = array('openid', 'email', 'profile', 'roles');
$conf['plugin']['oauthgeneric']['json-user'] = 'preferred_username';
$conf['plugin']['oauthgeneric']['json-name'] = 'name';
$conf['plugin']['oauthgeneric']['json-mail'] = 'email';
$conf['plugin']['oauthgeneric']['json-grps'] = 'roles[].id';
plugin/oauthgeneric/iserv.txt · Last modified: 2024-03-21 09:41 by andi

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki