Skip to content

Unterstützte Sprachen ​

Die Anwendungsbewertung liest den Quellcode und die Build-Manifeste einer Anwendung. Nicht jeder Pass versteht jede Sprache: Manche Prüfungen sind für einen bestimmten Technologie-Stack geschrieben, andere lesen jede Datei. Diese Seite zeigt je Sprache, wie jeder Pass, der Quelldateien oder Manifeste liest, sie abdeckt. So wissen Sie schon vor einem Lauf, welche Befunde zu erwarten sind und wo die Beweislage dünn sein wird.

Dieselbe Matrix ist Teil jedes Laufs. Pass 01 (INV) zählt die Codezeilen je Sprache der Anwendung (Signal INV-90), hält die Abdeckung der gefundenen Sprachen in passes/01-inv.yaml fest und meldet INV-91, wenn mehr als die Hälfte des Produktionscodes in Sprachen geschrieben ist, die kein Codeanalyse-Pass deterministisch liest. Die Publikation zeigt das Ergebnis im Block zur Sprachabdeckung.

Bedeutung der Werte ​

  • deterministisch: Eine regelbasierte Prüfung liest die Quelldateien oder Build-Manifeste der Sprache. Das Ergebnis ist reproduzierbar, und jeder Befund verweist auf die Datei, aus der er stammt.
  • LLM: Der Pass gibt die Quelldateien der Sprache in den Prompt des Sprachmodells, aber keine regelbasierte Prüfung liest sie. Das betrifft heute nur die Datenklassifizierung (Pass 03 DATA). Die Qualität des Ergebnisses hängt vom Modell ab und davon, welche Dateien in den Prompt passen.
  • keine: Der Pass liest keine Dateien dieser Sprache. Fehlt ein Befund dieses Passes, sagt das nichts über den Code in dieser Sprache aus.

Inventar (INV), Codezustand (QUALITY) und der Secret-Scan (SECRETS) zählen für die Warnung INV-91 nicht als sprachspezifische Codeanalyse: Das Inventar erkennt nur Manifeste, der Codezustand misst Qualität statt Souveränität, und der Secret-Scan ist eine Musterprüfung über alle Dateien (sofern Gitleaks installiert ist). Passes, die über Signale und bereitgestellte Dokumente statt über Quellcode urteilen (CTX, COMP, SYNTH, BLOCKS), und Passes, die keinen Quellcode lesen (DYNAMIC, SCOPE), sind keine Spalten.

Abdeckung nach Sprache und Pass ​

Die Tabelle wird aus den Scan-Listen der Passes erzeugt und stimmt deshalb immer mit dem ausgelieferten Code überein.

SpracheInventar (INV)Zustand (STATE)Daten (DATA)Abhängigkeiten (SBOM)Twelve-Factor (TF)Egress (EGR)Kryptografie (CRYPTO)Codezustand (QUALITY)Secrets (SECRETS)
Ckeinekeinekeinekeinekeinekeinekeinedeterministischdeterministisch
C#deterministischkeinedeterministischkeinedeterministischkeinedeterministischdeterministischdeterministisch
C++keinekeinekeinekeinekeinekeinekeinedeterministischdeterministisch
COBOLkeinekeinekeinekeinekeinekeinekeinekeinedeterministisch
Dartkeinekeinekeinekeinekeinekeinekeinekeinedeterministisch
F#deterministischkeinekeinekeinekeinekeinekeinekeinedeterministisch
Godeterministischkeinedeterministischkeinekeinekeinedeterministischdeterministischdeterministisch
Groovydeterministischkeinekeinedeterministischkeinedeterministischkeinedeterministischdeterministisch
Javadeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministisch
JavaScriptdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministisch
Kotlindeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministisch
PHPdeterministischkeinekeinekeinekeinekeinekeinedeterministischdeterministisch
PowerShellkeinekeinekeinekeinekeinekeinekeinedeterministischdeterministisch
Pythondeterministischkeinedeterministischkeinedeterministischkeinedeterministischdeterministischdeterministisch
RubydeterministischkeineLLMkeinekeinekeinekeinedeterministischdeterministisch
Rustdeterministischkeinedeterministischkeinedeterministischkeinekeinedeterministischdeterministisch
Scaladeterministischkeinekeinedeterministischkeinedeterministischkeinedeterministischdeterministisch
Shellkeinekeinekeinekeinekeinekeinekeinedeterministischdeterministisch
SQLkeinekeinedeterministischkeinekeinekeinekeinedeterministischdeterministisch
Swiftkeinekeinekeinekeinekeinekeinekeinedeterministischdeterministisch
TypeScriptdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministischdeterministisch
VB.NETdeterministischkeinekeinekeinekeinekeinekeinedeterministischdeterministisch

Paket-Ökosysteme ​

Das Inventar erkennt Build-Manifeste in beliebiger Tiefe für die folgenden Ökosysteme. Die Software-Stückliste (Pass 05 SBOM) fragt bekannte Schwachstellen für die in der letzten Spalte markierten Ökosysteme in OSV ab.

Paket-ÖkosystemSprachenBuild-Manifeste gelesen (INV)Schwachstellenabfrage in OSV (SBOM)
crates.ioRustjanein
GoGojanein
MavenGroovy, Java, Kotlin, Scalajaja
npmJavaScript, TypeScriptjaja
NuGetC#, F#, VB.NETjanein
PackagistPHPjanein
PyPIPythonjanein
RubyGemsRubyjanein

Sprachen mit geringer oder fehlender Abdeckung ​

Zeigt die dominante Sprache Ihrer Anwendung überwiegend keine, läuft die Bewertung trotzdem: Das Inventar, der Sprachzensus, der Secret-Scan und alle Passes, die mit Ihrem bereitgestellten Kontext arbeiten (Architekturdokumente, CMDB-Auszüge, Betriebsdaten), liefern Ergebnisse. Gleichen Sie die fehlende Codeanalyse aus, indem Sie Kontextdokumente in wsp/inputs/ ablegen und die Warnung INV-91 im Bericht prüfen. Für Anwendungen ohne zugänglichen Quellcode verwenden Sie die Service-Portfolio-Bewertung.


Weiterführende Seiten ​