Moodle und ILIAS kennen wir von innen.
Plugins, Anbindungen und Upgrades für Hochschulen und Unternehmen. Wir haben über 45 Sicherheitslücken in beiden Systemen gemeldet und wissen, wo Erweiterungen typischerweise brechen.
1Typische Projekte
- Plugins & Erweiterungen
- Neue Funktionen, die sich wie ein Teil der Plattform anfühlen.
- LTI-Anbindungen
- Externe Werkzeuge einbinden oder Ihre Anwendung als LTI-Tool bereitstellen.
- Single Sign-on
- Shibboleth, SAML, OAuth2 oder LDAP, passend zu Ihrem Identitätsdienst.
- Campus-Management
- Kurse, Einschreibungen und Noten automatisch abgleichen.
- Upgrades & Migration
- Auf neue Versionen, inklusive Bestandsaufnahme aller Fremd-Plugins.
- Prüfung bestehender Plugins
- Codequalität und Sicherheit, bevor ein Plugin produktiv geht.
2Worauf wir achten
Vier Zeilen, an denen die meisten Sicherheitslücken in Moodle-Plugins entstehen. Wir haben sie in fremdem Code oft genug gefunden.
require_login($course, false, $cm); $context = context_module::instance($cm->id); require_capability('mod/example:view', $context); ① $id = required_param('id', PARAM_INT); ② $entry = $DB->get_record('example_entries', ['id' => $id, 'exampleid' => $cm->instance], ③ '*', MUST_EXIST); echo $OUTPUT->render_from_template('mod_example/entry', [ 'title' => format_string($entry->name), ④ ]);
- ①Rechte zuerst. Login und Capability im richtigen Kontext, bevor irgendetwas passiert.
- ②Eingaben typisieren. Kein
$_GET, keinPARAM_RAWohne Grund. - ③Datensatz an die Instanz binden. Sonst liest jeder mit Login fremde Einträge (IDOR).
- ④Ausgabe filtern. Über
format_stringund Mustache-Templates, nicht als HTML-String.
Dazu kommen Moodle-Coding-Guidelines, PHPUnit und Behat in der CI über moodle-plugin-ci und ein Security-Review vor jeder Auslieferung. Mehr dazu unter Sicherheit.
3Beispiel
AusgangslageEin Plugin aus Moodle-3.x-Zeiten, der Entwickler ist nicht mehr erreichbar, das nächste Upgrade steht an.
- ①Bestandsaufnahme. Was das Plugin tut, wo Rechteprüfungen fehlen, welche APIs entfernt wurden.
- ②Upgrade auf 4.1 LTS mit automatisierten Tests für jede unterstützte Version.
- ③Danach Pflege zu jedem Moodle-Release, auf Wunsch per Wartungsvertrag.
4Häufige Fragen
Moodle oder ILIAS?
Wir arbeiten mit beiden und beraten neutral. Oft ist die Frage ohnehin schon entschieden, dann geht es darum, das Beste aus dem vorhandenen System zu holen.
Wir haben viele Fremd-Plugins. Ist ein Upgrade trotzdem möglich?
Ja. Wir prüfen jedes Plugin einzeln: aktualisieren, ersetzen oder entfernen, und sagen Ihnen vorher, was das jeweils bedeutet.
Betreiben Sie auch die Plattform?
Auf Wunsch ja, mit Updates, Backups und Monitoring. Mehr unter Wartung & Betrieb.
5 / Kontakt
Was soll Ihre Lernplattform können?
Beschreiben Sie Ihr Vorhaben in drei kurzen Schritten. Wir melden uns in der Regel innerhalb eines Werktags.