Benutzerdefinierte Kurse
Ein benutzerdefinierter Kurs ist eine benannte, geordnete Sequenz von Übungsthemen und Lernszenarien, die Sie aus dem SecureCodingHub-Inhaltskatalog erstellen. Einmal erstellt, kann der Kurs über die Zuweisungen-Seite auf die gleiche Weise zugewiesen werden wie eine integrierte Kategorie, und Lernende konsumieren ihn inline unter /learn/custom/<courseId>, als wäre er einer der Standardkurse.
Wann ein benutzerdefinierter Kurs erstellt werden sollte
Die integrierten OWASP-Familien sind absichtlich breit. Sie sind sinnvoll als Ausgangspunkt für organisationsweite Einführungen und für Compliance-Nachweispakete. Aber sobald Ihr Team eine vollständige Runde gemacht hat, ist die nächste Zuweisung fast immer gezielter — Onboarding für Backend-Neueinstellungen, ein fokussierter Refresher zu einer Klasse von Schwachstellen, die Ihre CodeQL-Befunde immer wieder markieren, ein schneller Aufwärmer für die Secure-Coding-Gewohnheiten für den Sprachstack, zu dem ein Team migrieren wird. Hier verdienen benutzerdefinierte Kurse ihren Wert: Sie ermöglichen es Ihnen, genau die Themen und Szenarien zu ziehen, die Sie möchten, in der Reihenfolge, die Sie möchten, in ein einziges benanntes Bündel.
Wo sich das befindet
Klicken Sie auf Benutzerdefinierte Kurse in der Seitenleiste unter dem Abschnitt Lernen, um auf der Listenseite unter /organization/custom-courses zu landen. Die Liste zeigt jeden Kurs, den Ihre Organisation erstellt hat, die Anzahl der Elemente in jedem, die Anzahl der Zuweisungen, auf die er derzeit referenziert ist, wer ihn erstellt hat und wann er zuletzt aktualisiert wurde. Klicken Sie auf eine Kurszeile, um den Builder für diesen Kurs zu öffnen; klicken Sie oben rechts auf + Neuer benutzerdefinierter Kurs, um einen zu erstellen.
Einen Kurs erstellen
Der Builder ist ein zweispaltiges Layout. Der linke Bereich zeigt Ihre aktuelle Elementliste mit Drag-Handle-Umsortierung und einer Pro-Zeile-Entfernen-Steuerung. Der rechte Bereich ist der Picker — ein Baum aus Kategorien, Modulen, Themen und Szenarien aus dem Live-Inhaltskatalog. Die Hinzufügen-Buttons erlauben es Ihnen, Elemente in beliebiger Granularität einzubringen:
| Hinzufügen bei | Effekt |
|---|---|
| Thema | Fügt ein einzelnes Übungsthema hinzu. Lernende sehen alle Challenges darin, in ihrer eigenen bevorzugten Sprache gemäß Stack-Einstellungen. |
| Szenario | Fügt ein einzelnes Lernszenario hinzu. Lernende durchlaufen den Schritt-für-Schritt-Walkthrough wie in Lernmodus. |
| Modul | Erweitert das Modul zu seinen konstituierenden Themen und fügt jedes als separates Element hinzu (sodass Sie sie danach umsortieren oder bestimmte entfernen können). |
| Kategorie | Wie Modul, aber auf der OWASP-Familienebene. Nützlich als Ausgangspunkt, den Sie dann zuschneiden. |
Speichern Sie den Kurs jederzeit; teilweise Speicherungen sind erlaubt. Der Name ist das einzige erforderliche Feld. Optionale Felder Description, Icon und Color erlauben es Ihnen, den Kurs innerhalb der Lernenden-UI zu branden.
Einen benutzerdefinierten Kurs zuweisen
Wählen Sie aus Zuweisungen → Neue Zuweisung Benutzerdefiniert als Inhaltsbereich und wählen Sie Ihren Kurs aus dem Dropdown. Der Rest des Zuweisungsformulars verhält sich genauso wie bei integriertem Inhalt — wählen Sie einen Empfänger (Benutzer, Team oder gesamte Organisation), wählen Sie eine Frist, wählen Sie obligatorisch oder optional und erstellen Sie. Der Fortschritt des Empfängers wird Element für Element gegen den Inhalt des Kurses verfolgt, und die Zuweisungs-Detailseite rollt diese in den gleichen Abschlussprozentsatz auf, den OWASP-verfolgte Zuweisungen verwenden.
Bearbeiten und Löschen
Öffnen Sie einen Kurs, um seinen Namen, seine Beschreibung, sein Symbol, seine Farbe oder seine Elementliste zu ändern. Elementänderungen werden sofort auf aktive Zuweisungen angewendet — das Hinzufügen eines Elements erhöht den Nenner für laufende Lernende, das Entfernen eines reduziert ihn. Die Umsortierung beeinflusst die Abschlussmathematik nicht; sie ändert nur die Reihenfolge, in der die Elemente in der Lernenden-UI gerendert werden.
Die Aktion Löschen setzt den Kurs inaktiv. Er erscheint nicht mehr in der Liste, im Zuweisungserstellungs-Picker und in der Lernenden-Konsumoberfläche. Historische Zuweisungen, die den Kurs referenzieren, melden ihren bestehenden Fortschritt weiterhin; sie akzeptieren nur keine neuen Empfänger mehr, sobald der Kurs verschwunden ist.
Programmatischer Zugriff
Alles in der Administrator-UI ist auch über die öffentliche API erreichbar — siehe API → Benutzerdefinierte Kurse für die JSON-Anfrage- und Antwortformen. Häufige Automatisierungen umfassen das Synchronisieren einer Liste kuratierter Kurse aus einem versionierten Source-Control-Repository und das programmatische Erstellen von Team-spezifischen Onboarding-Kursen aus Team-Metadaten.