Software

Softwarepakete: Wer hochladen darf, muss nicht alles dürfen

PyPI und npm begrenzen Veröffentlichungsrechte genauer. Kurzlebige Zugangsdaten und getrennte Freigaben lösen dabei unterschiedliche Probleme.

Von Wolfgang

02. Okt. 20263 Min. Lesezeit

Symbolische Darstellung zum Thema Softwarepakete: Wer hochladen darf, muss nicht alles dürfen.

Ein automatischer Build soll ein Softwarepaket vorbereiten. Muss er deshalb auch jede Version sofort veröffentlichen oder festlegen dürfen, welche als Standard installiert wird? Die jüngsten npm-Änderungen machen diese Trennung sichtbar. Zusammen mit der Entwicklung bei PyPI zeigen sie einen Weg, Veröffentlichungsrechte genauer zu verteilen.

Vorbereiten wird zur eigenen Befugnis

Seit dem 18. September bietet npm Stage-only-Token an. Eine Automation kann damit eine Paketversion zur Prüfung bereitstellen, aber nicht direkt neu veröffentlichen. Ein Maintainer muss sie mit Zwei-Faktor-Authentifizierung freigeben. Das trennt die maschinelle Vorbereitung von der Entscheidung, eine Version auszuliefern.

Die Grenze ist allerdings enger, als der Name vermuten lässt: Diese Token behalten andere Schreibrechte, darunter das Verschieben von Versionsmarkierungen und das Markieren älterer Versionen als veraltet. Sie bleiben schützenswerte Zugangsdaten. Vorhandene Token verlieren durch die neue Option keine Rechte.

Drei Fragen: Identität und Zeit, erlaubte Handlung und Inhalt des Pakets.
Vereinfachtes Erklärungsschema. Grafik: TechZeitGeist; Grundlage: npm und PyPI.

Auch der Versionszeiger braucht eine Entscheidung

Ein Paket kann mehrere veröffentlichte Versionen haben. Markierungen wie latest, next oder beta zeigen auf die jeweilige Version. Wer diese Zeiger verschieben darf, beeinflusst damit, welche Ausgabe unter einem solchen Namen gewählt wird. Seit dem 30. September kann eine npm-Konfiguration für Trusted Publishing dieses Recht ausdrücklich erhalten.

Es ist standardmäßig ausgeschaltet und unabhängig vom Recht zur direkten Veröffentlichung. Die Operation nutzt kurzlebige OIDC-Zugangsdaten statt eines dauerhaft hinterlegten Tokens. Auch eine Konfiguration, die nur vorbereiten darf, kann das Zusatzrecht erhalten. Genau deshalb lohnt es sich, die Befugnisse einzeln zu betrachten.

Weniger Dauergeheimnisse ist bereits ein eigener Weg

PyPI führte Trusted Publishing im April 2023 ein. Ein Projekt vertraut einer bestimmten Build-Konfiguration; deren überprüfbare Identität berechtigt sie, ein kurzlebiges Veröffentlichungs-Token anzufordern. Das dauerhaft kopierte Geheimnis zwischen Paketregister und Build-Plattform entfällt.

Dies ist inzwischen mehr als eine angebotene Funktion: Im PyPI-Bericht vom November 2025 stieg der Anteil der monatlich darüber hochgeladenen Dateien von ungefähr zehn Prozent im Februar 2024 auf über 25 Prozent im Oktober 2025. Das belegt Nutzung im Python-Ökosystem, keine bestimmte Verringerung von Angriffen.

Die Grenze wandert zum freigegebenen Ablauf

Ein kurzlebiges Token schränkt die Zeit ein, in der ein gestohlener Zugang genutzt werden kann. Es beantwortet nicht, ob der berechtigte Ablauf guten Code erzeugt. Das PyPI-Sicherheitsmodell nennt diese Grenze ausdrücklich: Trusted Publishing bestätigt weder die Sicherheit des Codes noch die Vertrauenswürdigkeit seiner Autoren.

Der registrierte Workflow und die Personen, die ihn verändern dürfen, bleiben Teil der Vertrauenskette. Wird dieser Ablauf manipuliert, kann er auch mit kurzlebigen Zugangsdaten unerwünschte Pakete veröffentlichen. Die vermeintlich geheime Schlüsselkopie verschwindet; die Verantwortung für den autorisierten Ablauf bleibt.

Zwei Grenzen statt eines Sicherheitslabels

Die Entwicklung bei beiden Paketregistern lässt sich deshalb präziser als über ein Etikett beschreiben. Eine Grenze betrifft die Lebensdauer der Zugangsdaten. Die andere betrifft die erlaubten Handlungen: vorbereiten, freigeben oder einen Versionszeiger verschieben. Beides kann sich ergänzen, ist aber nicht austauschbar.

Die Gegenposition, dass auch eine korrekt berechtigte Pipeline schädlichen Code verteilen kann, widerlegt diese Maßnahmen nicht. Sie zeigt, welches Problem sie lösen. Für die Beurteilung eines Veröffentlichungswegs zählt künftig weniger, ob er allgemein als vertrauenswürdig bezeichnet wird, sondern wem er welche Handlung für welchen Zeitraum erlaubt.

Quellen

Für diesen Artikel wurden KI-gestützte Recherche- und Editierwerkzeuge verwendet. Der Inhalt wurde redaktionell geprüft.