Single Sign-On für Webspace verwenden
Diese Anleitung hilft Ihnen dabei, Single Sign-On (SSO) für Ihren Webspace zu verwenden. Der Webspace ist dann nur für ausgewählte Gruppen von Nutzer*innen zugänglich, die sich mit u:account-UserID und Passwort einloggen müssen. Das für Webspaces vorbereitete SSO heißt Shibboleth.
Hinweis
In WordPress-Webspaces werden einige Zugriffsschutz-Funktionen nicht unterstützt. Daher empfehlen wir die von WordPress erstellte .htaccess-Datei nicht zu verändern.
Hinweis
Wenn Sie einen Allgemeinen-Zugriffsschutz ohne u:accounts für Bereiche Ihres Webspaces einrichten möchten, lesen Sie in der Anleitung Verzeichnisschutz nach.
Shibboleth (SSO) im Webspace-Admin aktivieren
Wählen Sie im Webspace-Admin beim entsprechenden Webspace im Reiter Einstellungen die Einstellung Shibboleth (SSO) aus und klicken Sie auf aktivieren.
Wählen Sie dort die Daten ("Attribute") aus, die im Rahmen des SSO an Ihre Anwendung übermittelt werden sollen.
Wählen Sie im Sinne des Datenschutzes nur die absolut notwendigen Optionen aus. Es stehen folgende Attribute zur Auswahl:
- Föderierte UserID (
eppn
): Diese erlaubt es, Nutzer*innen von verschiedenen IDPs zu unterscheiden, selbst wenn diese lokal die selbe UserID verwenden.- Beispiel:
musterm99@univie.ac.at
- Beispiel:
- UserID (
uid
): die u:account-UserID- Beispiel:
musterm99
- Beispiel:
- E-Mail-Adresse (
mail
): Die Uni-E-Mail-Adresse des angemeldeten u:accounts. Falls für den eingeloggten u:account keine E-Mail-Adresse der Universität Wien verfügbar ist, werden keine Daten übermittelt.- Beispiel:
max.muster@univie.ac.at
- Beispiel:
- Vorname (
givenName
)- Beispiel:
Max
- Beispiel:
- Nachname (
sn
)- Beispiel:
Muster
- Beispiel:
- Anzeigename (
displayName
): kann von Vorname Nachname abweichen- Beispiel:
Max Muster
- Beispiel:
- Affiliation (
affiliation
): beschreibt das Verhältnis zur Universität Wien:student@univie.ac.at
: Der Account hat Studierenden-Rechte.faculty@univie.ac.at
: Der Account hat Rechte des wissenschaftlichen Universitätspersonals.staff@univie.ac.at
: Der Account hat Rechte des allgemeinen Universitätspersonals.employee@univie.ac.at
: Der Account hat Mitarbeiter*innen-Rechte (faculty oder staff).member@univie.ac.at
: Der Account ist Angehöriger der Universität Wien (student oder employee).affiliate@univie.ac.at
: Der Account hat Rechte einer mit der Universität assoziierten Person, etwa Fremdpersonal oder von Instituten befürworteter Gast-Account.
- Gruppenmitgliedschaften (
ismemberof
): Gruppen, in denen der eingeloggte Account Mitglied ist- Beispiel:
Automatic:Pers:G_a_all_employees
- Beispiel:
Klicken Sie anschließend neben dem Eingabefeld auf Speichern.
Die Attribute stehen nach der Anmeldung als Webserver-Array in PHP zur Verfügung: $_SERVER['REMOTE_USER'], $_SERVER['uid'], $_SERVER['displayName']
etc.
Die Variable REMOTE_USER
im Apache Webserver wird entweder mit dem eppn oder der uid des eingeloggten Accounts befüllt, wobei eppn Vorrang hat.
SSO testen
Wenn Ihr Hostname z. B. pugilistik.univie.ac.at lautet, können Sie durch folgenden Aufruf einen SSO-Vorgang auslösen:
https://pugilistik.univie.ac.at/Shibboleth.sso/Login?target=https://pugilistik.univie.ac.at/Shibboleth.sso/Session
Das Apache Webserver-Modul zeigt an, ob eine Session zustande gekommen ist und ob bzw. welche Attribute übergeben wurden.
Zugriffskontrolle mittels .htaccess (Beispiele)
Erstellen Sie eine neue Datei mit dem Namen .htaccess
im html-Order Ihres Webspaces. Falls die den Zugriffsschutz nicht für die gesamte Webseite benötigen, erstellen Sie die Datei im entsprechenden Unterordner. Editieren Sie diese mit einem Texteditor (etwa Notepad++) entsprechend der angegebenen Beispiele.
Login erforderlich, aber alle Nutzer*innen erlaubt
AuthType shibboleth
ShibRequestSetting requireSession 1
Require valid-user
Login nur für einzelne UserIDs erlaubt
Aktivieren Sie im Webspace-Admin entweder Föderierte UserID [eppn] oder UserID [uid].
Ist Föderierte UserID [eppn] aktiv, geben Sie die UserIDs in der Form UserID@univie.ac.at mit Leerzeichen getrennt an:
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-user zufallr0@univie.ac.at zufallr1@univie.ac.at zufallr2@univie.ac.at
Ist UserID [uid] aktiv, geben Sie die UserIDs ohne Suffix mit Leerzeichen getrennt an. In diesem Fall sind außerdem nur UserIDs der Universität Wien erlaubt:
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-user zufallr0 zufallr1 zufallr2
Login nur für bestimmte Personengruppen der Universität Wien
Aktivieren Sie im Webspace-Admin Affiliation [affiliation].
Nur aktive Mitarbeiter*innen der Universität Wien:
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-attr affiliation employee@univie.ac.at
Nur aktive Studierende der Universität Wien:
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-attr affiliation student@univie.ac.at
Nur aktive Mitarbeiter*innen und Studierende der Universität Wien:
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-attr affiliation employee@univie.ac.at student@univie.ac.at
Login nur für aktive Mitarbeiter*innen einer Organisationseinheit der Universität Wien erlaubt
Aktivieren Sie im Webspace-Admin Gruppenmitgliedschaften [ismemberof] und ersetzen Sie die beiden Einträge A0000 durch die jeweilige Instituts- oder Abteilungsnummer. Falls Sie selbst Angehörige*r der jeweiligen Organisationseinheit sind, wird Ihnen der entsprechende Eintrag beim erstmaligen Login mittels Shibboleth bei den an die Webseite weitergegebenen Daten angezeigt.
AuthType shibboleth
ShibRequestSetting requireSession 1
Require shib-attr ismemberof Automatic:Inum:A0000:G_a_A0000_staff_all