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
1
<user>
2
<authenticationProviders>
3
<provider type="local" enabled="true" name="Goobi viewer"/>
4
<provider type="openId" enabled="true" name="Google" endpoint="https://accounts.google.com/o/oauth2/auth" clientId="CHANGEME" clientSecret="CHANGEME" image="google.png" />
5
<provider type="userPassword" enabled="false" name="VuFind" endpoint="https://vufind.example.org/Api/User/Auth" image="vufind.png" timeout="7000"/>
6
<provider type="userPassword" enabled="false" name="littera" endpoint="https://littera.example.org/externauth" image="littera.png"/>
7
<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">
8
<addUserToGroup>my first group</addUserToGroup>
9
<addUserToGroup>my secondgroup</addUserToGroup>
10
</provider>
11
<provider type="userPassword" enabled="false" name="bibliotheca" endpoint="https://example.oclcbibliotheca.org/auth.asp?client=goobiviewer" />
12
<provider type="saml" enabled="false" name="samltest.id" idpMetadataUrl="https://samltest.id/saml/" relyingPartyIdentifier="GoobiViewerExampleTest" publicKeyPath="/opt/digiverso/viewer/config/samlX509cert.cert" privateKeyPath="/opt/digiverso/viewer/config/samlPrivatekey" timeout="60000" />
13
</authenticationProviders>
14
</user>
Copied!
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 saml.
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 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.
idpMetadataUrl
URL an der die Metadaten des Identity Providers abrufbar sind. Die Angabe ist bei dem Provider vom Typ saml verpflichtend.
relyingPartyIdentifier
Name des Goobi viewer Services. Dieser Name muss mit der entityID in den Metadaten, die dem Identity Provider übermittelt werden, übereinstimmen. Die Angabe ist bei dem Provider vom Typ saml verpflichtend.
publicKeyPath
Pfad zu dem öffentlichen X509 Zertifikat. Die Angabe ist bei dem Provider vom Typ saml verpflichtend.
privateKeyPath
Pfad zu dem privaten Key für das Zertifikat. Die Angabe ist bei dem Provider vom Typ saml verpflichtend.
Ü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.
Copy link