Links
Comment on page

1.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" enabled="true" name="Goobi viewer"/>
<provider type="openId" enabled="true" name="Google" endpoint="https://accounts.google.com/o/oauth2/auth" clientId="CHANGEME" clientSecret="CHANGEME" image="google.png" />
<provider type="userPassword" enabled="false" name="VuFind" endpoint="https://vufind.example.org/Api/User/Auth" image="vufind.png" timeout="7000"/>
<provider type="userPassword" enabled="false" name="littera" endpoint="https://littera.example.org/externauth" image="littera.png"/>
<provider type="userPassword" label="Aleph" enabled="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" enabled="false" name="bibliotheca" endpoint="https://example.oclcbibliotheca.org/auth.asp?client=goobiviewer" />
<provider type="httpHeader" enabled="false" name="Shibboleth" parameterType="attribute" parameterName="shib-email" endpoint="https://viewer.example.org/api/v1/auth/header" />
</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, userPassword und httpHeader.
enabled
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. Bei dem type="openId" steht als Name Google zur Verfügung. Bei dem type="userPassword" kann zwischenVuFind, littera, x-service und bibliotheca gewählt werden. Bei type="local" und type="saml" kann ein freier Name gewählt werden.
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, userPassword und httpHeader. 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.
parameterType
Der parameterType funktioniert nur bei dem Provider httpHeader und ist dort auch verpflichtend. Er gibt an was ausgewertet werden soll. Mögliche Werte sind header und attribute.
parameterName
Der parameterName funktioniert nur bei dem Provider httpHeader und ist dort auch verpflichtend. Er gibt an welcher konkrete Header oder welcher Attributname ausgewertet werden soll. In dem Parameter sollte eine valide E-Mailadresse stehen.
Über optionale Unterelemente <addUserToGroup> können Namen von Benutzergruppen konfiguriert werden, zu denen ein Benutzer beim anmelden automatisch als Mitglied hinzugefügt werden soll (vorausgesetzt die Gruppe existiert bereits und der Benutzer ist dort nicht bereits Mitglied.