Wiki-Quellcode von Expertenregeln zur Prüfung auf ein Benutzerattribut
Zuletzt geändert von Carina Enke am 08.01.2026
Zeige letzte Bearbeiter
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{section}} | ||
| 2 | {{column width="60%"}} | ||
| 3 | Mit Expertenregeln können Sie Nutzerattribute auswerten und so die Sichtbarkeit und den Zugang eines Kursabschnittes oder Kursbausteins steuern. Nutzen Sie dafür die Expertenregeln **hasAttribute**, **isInAttribute **oder **getUserProperty**. | ||
| 4 | |||
| 5 | {{info}} | ||
| 6 | Alle nachfolgenden Beispielregeln lassen sich für die **Sichtbarkeit** und ebenso für den **Zugang** eines Kursbausteins anlegen. Zur Vereinfachung wird in den folgenden Beispielen immer nur ein Szenario beschrieben. Den Unterschied von Sichtbarkeit und Zugang erläutert die Seite [[Freigabe innerhalb von Kursen (Sichtbarkeit und Zugang)>>doc:LMS.Benutzerhandbuch OPAL.Lehren.Kurs.Freigabe von Kursen und Kursinhalten.Freigabe innerhalb von Kursen Sichtbarkeit und Zugang.WebHome||shape="rect"]]. | ||
| 7 | {{/info}} | ||
| 8 | {{/column}} | ||
| 9 | |||
| 10 | {{column width="30%"}} | ||
| 11 | {{panel title="Inhalt"}} | ||
| 12 | {{toc start="2" depth="2"/}} | ||
| 13 | {{/panel}} | ||
| 14 | {{/column}} | ||
| 15 | {{/section}} | ||
| 16 | |||
| 17 | == Allgemeine Nutzerattribute == | ||
| 18 | |||
| 19 | |||
| 20 | Folgende Nutzerattribute sind in der Lernplattform vorhanden und können für Expertenregeln genutzt werden: | ||
| 21 | |||
| 22 | |=(% style="width: 239px;" %)((( | ||
| 23 | Attribut | ||
| 24 | )))|=(% style="width: 1542px;" %)((( | ||
| 25 | Enthält den nutzerspezifischen Wert | ||
| 26 | ))) | ||
| 27 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 28 | ((( | ||
| 29 | firstName | ||
| 30 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 31 | ((( | ||
| 32 | Vorname | ||
| 33 | ))) | ||
| 34 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 35 | ((( | ||
| 36 | lastName | ||
| 37 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 38 | ((( | ||
| 39 | Nachname | ||
| 40 | ))) | ||
| 41 | |=(% style="width: 239px;" %)((( | ||
| 42 | username / userid | ||
| 43 | )))|(% style="width:1542px" %)((( | ||
| 44 | Nutzername | ||
| 45 | ))) | ||
| 46 | |=(% style="width: 239px;" %)((( | ||
| 47 | |||
| 48 | )))|(% style="width:1542px" %)((( | ||
| 49 | E-Mail-Adresse | ||
| 50 | ))) | ||
| 51 | |=(% style="width: 239px;" %)((( | ||
| 52 | institutionalName | ||
| 53 | )))|(% style="width:1542px" %)((( | ||
| 54 | Institution/ Hochschule | ||
| 55 | ))) | ||
| 56 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 57 | ((( | ||
| 58 | institutionalUserIdentifier | ||
| 59 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 60 | ((( | ||
| 61 | Matrikelnummer / Nutzernummer an der Institution | ||
| 62 | ))) | ||
| 63 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 64 | ((( | ||
| 65 | standort | ||
| 66 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 67 | ((( | ||
| 68 | Standort | ||
| 69 | ))) | ||
| 70 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 71 | ((( | ||
| 72 | termsOfStudy | ||
| 73 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 74 | ((( | ||
| 75 | Fachsemester | ||
| 76 | ))) | ||
| 77 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 78 | ((( | ||
| 79 | studySubject | ||
| 80 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 81 | ((( | ||
| 82 | Studiengang | ||
| 83 | ))) | ||
| 84 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 85 | ((( | ||
| 86 | studyGroup | ||
| 87 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 88 | ((( | ||
| 89 | Studiengruppe | ||
| 90 | ))) | ||
| 91 | |=(% colspan="1" style="width: 239px;" %)(% colspan="1" %) | ||
| 92 | ((( | ||
| 93 | orgUnit | ||
| 94 | )))|(% colspan="1" style="width:1542px" %)(% colspan="1" %) | ||
| 95 | ((( | ||
| 96 | Organisationseinheit | ||
| 97 | ))) | ||
| 98 | |=(% colspan="1" style="width: 239px;" %)language|(% colspan="1" style="width:1542px" %)Nutzersprache | ||
| 99 | |||
| 100 | {{note}} | ||
| 101 | === Institutionsspezifische Nutzerattribute === | ||
| 102 | |||
| 103 | Neben zu diesen allgemeinen Nutzerattributen sind institutionsspezifische Einschränkungen oder Erweiterungen möglich. Prüfen Sie deshalb vor der Anwendung, welche der Benutzerattribute in Ihrer Plattform verfügbar sind. Die Seite [[Übersicht der OPAL-Shibboleth-Attribute>>url:https://bildungsportal.sachsen.de/help/attribute-opal_de.html||shape="rect"]] bietet eine Übersicht dieser verwendbaren Attribute und entsprechende Beispielwerte. | ||
| 104 | {{/note}} | ||
| 105 | |||
| 106 | |||
| 107 | == Prüfung auf ein Benutzerattribut == | ||
| 108 | |||
| 109 | Allgemein nutzt man | ||
| 110 | |||
| 111 | * **hasAttribute**, um zu prüfen, ob ein Benutzer ein bestimmtes Attribut überhaupt besitzt. Die Funktion gibt true zurück, wenn das Attribut existiert, unabhängig vom Wert. Geeignet für einfache Existenzprüfungen. | ||
| 112 | * i**sInAttribute**, wenn übergeben werden soll, ob der Wert eines Attributs in einer Liste von erlaubten Werten enthalten ist. Die Regel prüft Mehrwert-Listen oder Aufzählungen, z. B. Rollen oder Gruppenmitgliedschaften. | ||
| 113 | * **getUserProperty** wenn der genaue Wert eines Benutzerattributs abgerufen und dann mit einer Bedingungen verglichen werden soll. Ideal für exakte Wertabgleiche oder dynamische Berechnungen mit Attributwerten. | ||
| 114 | |||
| 115 | |=Syntax allgemein|=Beispiel einer Expertenregel|=Ergebnis der Regel | ||
| 116 | |(% colspan="1" rowspan="2" %)//isInAttribute("//[AttrName]//","//[string]//")//|isInAttribute("studySubject","Chemie")|((( | ||
| 117 | Wurde diese Regel im Tab Zugang eingetragen, ist der Kursbaustein für alle Personen, deren Attribut Studiengang die Buchstabenfolge "Chemie" enthält zugänglich. | ||
| 118 | |||
| 119 | Somit können Personen mit dem Studiengang "Chemie BA" und auch "Chemie MA" den Kursbaustein nutzen, Nutzer mt dem Studiengang "Chemische Wasseraufbereitung" jedoch nicht. | ||
| 120 | ))) | ||
| 121 | |isInAttribute("language","de")|Wurde diese Regel im Tab Zugang eingetragen, ist der Kursbaustein für alle Personen, deren Nutzersprache Deutsch ist zugänglich. | ||
| 122 | |//getUserProperty("//[string]//")//|getUserProperty("orgUnit") = "Marketing"|Nur Personen aus der Organisationseinheit "Marketing" sehen den Kursbaustein, wenn diese Regel im Tab Sichtbarkeit genutzt wurde. | ||
| 123 | |(% colspan="1" rowspan="2" %)//hasAttribute("//[AttrName]//","//[string]//")//|hasAttribute("email","muster.mann@opal.de")|Nur die Person mit dieser Email-Adresse erhält Zugang zum Kursabschnitt. | ||
| 124 | |hasAttribute("language","en")|Nur die Person mit eingestellter [[Nutzersprache>>doc:LMS.Meine Lernplattform.Meine Einstellungen.System Settings.WebHome]] "English" erhalten Zugang zum Kursabschnitt. | ||
| 125 | |||
| 126 | Erstellen Sie weitere Regeln mit Hilfe Expertensyntax. Eine tabellarische Übersicht bietet die Seite [[Expertensyntax>>doc:LMS.Benutzerhandbuch OPAL.Lehren.Kurs.Freigabe von Kursen und Kursinhalten.Expertenmodus zur Freigabe innerhalb von Kursen.Expertensyntax.WebHome]]. | ||
| 127 | |||
| 128 |