Zusammenfassung

  • RFC 3165 trennte ein gespeichertes Verwaltungsskript von einem Starttabelleneintrag, der Skript, Argumente und Ausführungskontrollen auswählte.
  • Im VACM-Notfallbeispiel durfte die Junior-Gruppe nur Start- und Argumentobjekte einer vorbereiteten Zeile schreiben; Installation und Konfiguration der Startknöpfe blieben der Senior-Gruppe vorbehalten.

RFC 3165 erschien im August 2001. Das Script MIB sollte Verwaltungsfunktionen näher an die zu steuernden Systeme bringen. Die Schnittstelle konnte Skripte übertragen und aktivieren, starten, laufende Instanzen beobachten, anhalten oder beenden und Ergebnisse abrufen. Eine bestimmte Sprache oder Laufzeit schrieb sie nicht vor. Unterstützte eine Implementierung es, konnte sie sogar kompilierten nativen Code ausführen. Das Dokument definierte damit mehr als eine Fernbefehlssyntax: einen Lebenszyklus für delegierte Verwaltungsarbeit.

Entscheidend war die Trennung zwischen Skript und Startmöglichkeit. Ein Eintrag in smScriptTable bezeichnete Code und Quelle. Ein Eintrag in smLaunchTable – der „Startknopf“ des RFC – verband ein Skript mit Argumenten und Kontrollen, etwa der maximalen Zahl gleichzeitiger Läufe. Ein einzelner SNMP-SET-Vorgang konnte diesen vorbereiteten Eintrag aufrufen. Eine eigene Lauftabelle machte anschließend Status, Ergebnisse und Steuerung sichtbar.

Auch die Eigentümerrollen waren getrennt. smLaunchOwner bezeichnete den administrativen Eigentümer einer Startzeile; von ihr gestartete Läufe erbten diesen Eigentümer. smLaunchScriptOwner und smLaunchScriptName bestimmten dagegen das ausgewählte Skript. Der MIB-Owner ist ein Verwaltungsindex und Anknüpfungspunkt für Regeln – kein Nachweis, welche Person oder welches Betriebssystemkonto die Anfrage authentifiziert hat.

Abschnitt 8.3 macht die Grenze konkret. Die VACM-Gruppe junior darf Skripte, Startknöpfe und Ergebnisse des Eigentümers emergency lesen. Ihre Schreibansicht umfasst für diese Zeilen nur smLaunchStart und smLaunchArgument. Die Senior-Gruppe kann Notfalls skripte installieren und passende Startknöpfe konfigurieren. Ein Junior-Bediener kann also eine vorbereitete Aktion auslösen, ohne die MIB-Rechte zu erhalten, mit denen sie erstellt oder umgebaut wird.

Das ist ein Konfigurationsbeispiel im Standard, kein Bericht über eine reale Installation. RFC 3165 definiert auch keine universelle Sandbox. Es heißt, eine Laufzeit könne den Eigentümer zur Durchsetzung von Sicherheitsprofilen nutzen; Details von Laufzeit und Sprache bleiben den Implementierungen überlassen. Der RFC legt weder die Systemidentität des Skripts noch erreichbare Dateien oder Netzwerkziele fest und garantiert keine sicheren Argumente. Eine enge SNMP-Ansicht beschränkt änderbare Objekte, macht das gewählte Programm aber nicht automatisch harmlos.

Das Startrecht war nicht die einzige relevante Fläche. Wer Argumente schreiben durfte, konnte das Verhalten des vorbereiteten Skripts beeinflussen. Codeautor, Eigentümer der Startzeile, Aufrufrecht und Laufzeitprivilegien hingen zusammen, waren aber keine austauschbaren Kontrollen. RFC 3165 löste RFC 2592 von 1999 ab, ohne eine Verbreitung nachzuweisen. Sein präziser historischer Beitrag: Erstellung, Konfiguration, Start und Beobachtung von Verwaltungsfunktionen ließen sich auf verschiedene Rollen verteilen, statt sie in einem allmächtigen Betreiber zu bündeln.

Quellen: RFC 3165, §§ 3–5, 8.1–8.3 und 10; RFC 2592; RFC 2575, Zugriffssteuerung nach Sichten; RFC 3415, spätere VACM-Spezifikation; RFC 3411, SNMP-Architektur.

Zur Prüfung der Dokumentgeschichte und der Standardgrenzen – nicht als Beleg für eine Verbreitung – dienen außerdem der RFC-3165-Text im Datatracker, der RFC-Eintrag, der Internet-Draft Version 04, RFC 3414 zu USM, RFC 3416 zu Protokolloperationen, RFC 3417 zu Transportzuordnungen, RFC 3418 zur MIB und das IANA-Register für SMI-Nummern und Sprachen.