Anwendung im Single Sign-On registrieren
Damit sich Benutzer am ICC anmelden können, muss die Anwendung im Single Sign-On registriert werden.
SAML-Zertifikat erstellen
Es wird ein selbst-signiertes Zertifikat mittels OpenSSL erzeugt. Dazu das folgende Kommando ausführen:
$ php bin/console app:create-certificate --type saml
Anschließend werden einige Daten abgefragt. Diese können abgesehen vom commonName
frei gewählt werden:
countryName
,stateOrProvinceName
,localityName
geben den Standort der Schule anorganizationName
entspricht dem Namen der SchuleorganizationalUnitName
entspricht der Fachabteilung der Schule, welche für die Administration zuständig istcommonName
Domainname des ICC, bspw.icc.schulit.de
emailAddress
entspricht der E-Mail-Adresse des Administrators
Das Zertifikat ist standardmäßig 10 Jahre gültig.
Dienst beim Single Sign-On registrieren
Der folgende Schritt muss im Single Sign-On erledigt werden und nicht im ICC.
Dienst registrieren
Unter Verwaltung ➜ Dienste einen neuen SAML-Dienst erstellen.
Einige Metadaten lassen sich automatisiert laden, indem man zunächst die Metadaten-XML https://icc.schulit.de/saml/metadata.xml
(icc.schulit.de
durch die BookStack-Domain ersetzen) einträgt und auf Herunterladen klicken.
Anschließend müssen noch der Name und eine passende Beschreibung eingetragen werden.
Attribut für Rolle erstellen
Mittels Rollen wird konfiguriert, was Benutzer im ICC dürfen und was nicht. Diese werden als Attribut im Single Sign-On gespeichert und entsprechend beim Anmelden am ICC weitergeleitet.
Unter Verwaltung ➜ Attribute ein neues Attribut erstellen.
Option | Wert |
---|---|
Name | icc-roles |
Anzeigename | ICC Rollen |
Beschreibung | beliebig |
Benutzer können dieses Attribut ändern | ❌ Häckchen nicht setzen |
SAML Attribut-Name | urn:roles |
Typ | Auswahlfeld |
Dienste | Hier den ICC-Dienst auswählen |
Unter Optionen muss die Option Mehrfach-Auswahl möglich deaktiviert bleiben.
Folgende Optionen eintragen:
Schlüssel | Wert |
---|---|
ROLE_USER | Benutzer |
ROLE_ADMIN | Administrator |
ROLE_SUPER_ADMIN | Super-Administrator |
ROLE_MESSAGE_VIEWER | Alle Mitteilungen lesen |
ROLE_MESSAGE_CREATOR | Mitteilungen erstellen |
ROLE_MESSAGE_PRIORITY | Mitteilungen mit Priorität erstellen |
ROLE_MESSAGE_ADMIN | Mitteilungs-Administrator |
ROLE_DOCUMENT_VIEWER | Alle Dokumente einsehen |
ROLE_DOCUMENTS_ADMIN | Dokumente-Administrator |
ROLE_APPOINTMENT_VIEWER | Alle Termine einsehen |
ROLE_APPOINTMENT_CREATOR | Termine erstellen |
ROLE_APPOINTMENTS_ADMIN | Termine-Administrator |
ROLE_WIKI_ADMIN | Wiki-Administrator |
ROLE_EXAM_VIEWER | Alle Klausuren einsehen |
ROLE_EXAMS_CREATOR | Klausuren erstellen |
ROLE_EXAMS_ADMIN | Klausuren-Administrator |
ROLE_KIOSK | Kiosk-Benutzer |
ROLE_STUDENT_ABSENCE_CREATOR | Krankmeldungen erstellen |
ROLE_STUDENT_ABSENCE_VIEWER | Krankmeldungen einsehen |
ROLE_TEACHER_ABSENCE_VIEWER | Benutzer darf alle Absenzen von Lehrkräften einsehen |
ROLE_TEACHER_ABSENCE_MANAGER | Benutzer darf Absenzen von Lehrkräften verwalten |
ROLE_BOOK_ENTRY_CREATOR | Unterrichtsbücher (schreibend) |
ROLE_BOOK_VIEWER | Unterrichtsbücher (lesend) |
ROLE_SHOW_BIRTHDAY | Geburtstage anzeigen (Lernende) |
ROLE_RESOURCE_RESERVATION_VIEWER | Alle Reservierungen einsehen |
ROLE_RESOURCE_RESERVATION_CREATOR | Reservierungen erstellen |
ROLE_LISTS_VIEWER | Listen (Unterrichte, Lerngruppen etc.) einsehen |
ROLE_LISTS_EXPORTER | Listen exportieren |
Eine genaue Erklärung zu den Rollen und wie diese zugewiesen werden sollten, gibt es im Abschnitt Benutzerrollen.
Single Sign-On beim ICC hinterlegen
Damit das ICC den Single Sign-On kennt, muss noch eine XML-Datei hinterlegt werden.
Unter Verwaltung ➜ IdP Details den XML-Teil in die Zwischenablage kopieren und den Inhalt in der Datei saml/idp.xml
im ICC-Ordner hinterlegen.