2.5.1 Authentifizierungs-Provider

Für die Anmeldung stehen verschiedene Provider zur Verfügung. Diese werden in einer Liste unter <authenticationProviders> konfiguriert:

config_viewer.xml
<user>
<authenticationProviders>
<provider type="local" show="true" name="Goobi viewer"/>
<provider type="openId" show="true" name="Google" endpoint="https://accounts.google.com/o/oauth2/auth" clientId="CHANGEME" clientSecret="CHANGEME" image="google.png" />
<provider type="userPassword" show="false" name="VuFind" endpoint="https://vufind.example.org/Api/User/Auth" image="vufind.png" timeout="7000"/>
<provider type="userPassword" show="false" name="littera" endpoint="https://littera.example.org/externauth" image="littera.png"/>
<provider type="userPassword" label="Aleph" show="false" name="x-service" endpoint="https://aleph-x-service.example.org/X?op=bor_auth&amp;library=FOO123" image="aleph.png">
<addUserToGroup>my first group</addUserToGroup>
<addUserToGroup>my secondgroup</addUserToGroup>
</provider>
<provider type="userPassword" show="false" name="bibliotheca" endpoint="https://example.oclcbibliotheca.org/auth.asp?client=goobiviewer" />
</authenticationProviders>
</user>

Die Attribute im <provider> Elemente haben folgende Bedeutung:

Attribut

Beschreibung

type

Definiert den Provider-Typ. Diese Angabe ist pflicht. Verfügbar sind local, openId und userPassword

show

Gibt an, ob der Provider auf der Anmeldeseite angezeigt werden soll oder ausgeblendet ist. Standardwert ist true

name

Name des Providers. Diese Angabe ist pflicht. Verfügbar sind Goobi viewer, Google, VuFind, littera, x-service und bibliotheca

label

Optionales Label für den Provider. Ist das Attribut nicht vorhanden wird der Name ausgegeben.

endpoint

Authentifizierungs-URL des Providers. Pflichtfeld bei den Typen openId und userPassword. Beispiele bitte der Standard Konfigurationsdatei entnehmen.

clientId

Registrierte ID des Goobi viewers beim Provider vom Typ openId. Dort ist das Attribut auch verpflichtend. Pro Goobi viewer Installation muss ein neuer Client beim Provider registriert werden.

clientSecret

Geheimer Schlüssel für die registrierte clientId. Die Angabe ist bei einem Provider vom Typ openId verpflichtend.

image

Dateiname des angezeigten Provider-spezifischen Bildes

timeout

Definiert in Millisekunden den maximalen Zeitraum wie lange auf eine Antwort vom Server gewartet werden soll, bevor die Anmeldung fehlschlägt.

Über optionale Unterelemente <addUserToGroup> können Benutzergruppennamen konfiguriert werden, zu denen ein Benutzer beim Einloggen automatisch als Mitglied hinzugefügt werden soll (vorausgesetzt die Gruppe existiert bereits und der Benutzer ist dort nicht bereits Mitglied.