.NET ist das führende Framework von Microsoft für Windows- und Cross-Platform-Entwicklung. Mit der neuen Version 10.0 führt Microsoft wichtige Sicherheits- und Robustheitsmassnahmen ein, die besonders für Enterprise-Anwendungen relevant sind. Eine dieser Änderungen betrifft die Verarbeitung von JSON-Daten, ein zentral wichtiges Datenformat in modernen Webapplikationen.

Bisher akzeptierten viele JSON-Parser doppelte Schlüssel-Wert-Paare in JSON-Dokumenten. Dies kann zu unerwarteten Verhaltensweisen führen. Wenn ein JSON-Objekt denselben Schlüssel zweimal enthält, nehmen Parser typischerweise entweder den ersten oder den letzten Wert. Dies ist nicht ideal, da es zu logischen Fehlern oder im schlimmsten Fall zu Sicherheitsproblemen führen kann.

Microsoft führt mit .NET 10.0 eine neue Einstellung ein: "AllowDuplicateProperties = false". Wenn diese Option aktiviert ist, wird die JSON-Deserialisierung einen Laufzeitfehler auslösen, falls doppelte Eigenschaften erkannt werden. Dies zwingt Entwickler, ihre JSON-Quellen zu überprüfen und sicherzustellen, dass die Daten sauber sind.

Für KMU-Entwicklungsteams ist dies eine wichtige Verbesserung. JSON ist allgegenwärtig in modernen Applikationen, von REST-APIs über Konfigurationsdateien bis zu Datenbankabfragen. Die strengere Validierung kann tatsächlich Fehler verhindern, die sonst schwer zu debuggen wären. Wenn externe JSON-Quellen verwendet werden (zum Beispiel von APIs oder Benutzern), können doppelte Eigenschaften theoretisch injiziert werden. Mit dieser neuen Einstellung wird das Risiko minimiert. Allerdings sollten Entwickler bei der Umstellung auf .NET 10.0 testen, dass ihre bestehenden JSON-Datenquellen keine doppelten Eigenschaften enthalten, um keine produktiven Fehler zu verursachen.