« Home

Jaké jsou rozdíly mezi edicemi SonarQube?

Původně napsáno v lednu 2022. Poslední aktualizace: duben 2023

Často dostávám dotazy, jaké jsou rozdíly mezi verzemi SonarQube.
Z těchto otázek je zřejmé, že licenční možnosti nejsou zcela přehledné a mohou být matoucí, proto jsem se rozhodl shrnout klíčové body a pomoci vše objasnit.

V následujícím článku vysvětluji hlavní rozdíly a navíc jsme nedávno vytvořili tabulku, která umožňuje snadno zobrazit všechny funkce produktu podle jednotlivých edic (můžete v ní například filtrovat, které funkce jsou dostupné pouze v edici Developer nebo Enterprise apod.). O tabulku si můžete napsat na sonarqube@almtoolbox.com.

Legend:

Základní rozdíly mezi edicemi SonarQube

SonarQube je postaven na principu „Open Core“, tedy modelu, kdy každá vyšší edice rozšiřuje předchozí o další možnosti:

  • Community (Free) Edition je základní edice
  • Developer Edition staví na ní
  • Enterprise Edition přidává další funkce
  • Data Center Edition je nejvyšší vrstva

See illustration to the right side.

Podívejme se, co jednotlivé edice přidávají.

Co nabízí Community Edition?

Tato edice je open source a zdarma. Nabízí:

1. Základ SonarQube

a více než 60 pluginů.
Existuje řada pluginů pro SonarQube (některé zdarma, jiné placené). Lze také vytvářet vlastní pluginy.

2. Analýza statického kódu (Code Scanning)

Community edition supports a basic scanning of 16 languages:
Podporuje 16 programovacích jazyků: Java, JavaScript, C#, Terraform, TypeScript, Kotlin, Ruby, Go, Scala, Flex, Python, PHP, HTML, CSS, XML, VB.NET.

3. Analýza hlavní větve (Master/Main)

Umožňuje skenování hlavní větve git repozitáře, nikoli dalších větví.

4. SonarLint

Plugin do IDE (např. IntelliJ nebo VS Code), který vývojářům v reálném čase hlásí problémy v kódu.
V této verzi jej nelze konfigurovat.

Developer Edition vs Community Edition

Edice Developer obsahuje vše z Community a navíc:

  1. Analýzu větví

kontrola libovolných větví, nikoli jen hlavní.

  1. Pull Request Analysis

integrace s GitLab, GitHub, Bitbucket či Azure DevOps pro kontrolu při slučování kódu.

  1. Analýzu zabezpečení kódu

etekce zranitelností podle pravidel specifických pro jednotlivé jazyky.

  1. Rozšířené funkce SonarLint

možnost konfigurace a chytrých notifikací (např. při nesplnění Quality Gate).

  1. Podpora dalších jazyků:
  1. C, C++,
  2. Objective-C,
  3. PL/SQL,
  4. ABAP,
  5. TSQL,
  6. Swift (celkem 24 jazyků).

Developer Edition supports 24 code languages in total.

Enterprise Edition vs Developer Edition

  1. Edice Enterprise dále přidává:

Podporu dalších jazyků

  1. Apex (of Salesforce)
  2. Cobol
  3. PL/1
  4. RPG
  5. celkem 29 jazyků

Enterprise Edition supports 29 code languages in total.

2. Portfolia a reporty

přehled o všech projektech v organizaci, agregace podle týmů nebo jazyků, automatické PDF reporty.

Podívejte se na demo (2 minuty):

3. Bezpečnostní reporty

vizualizace zranitelností dle standardů OWASP Top 10 a CWE Top 25.

For example:

alt="sonarqube security reports"
Security Reports (click to enlarge) 

4. Security Hotspots

označení podezřelých míst v kódu a zlepšování povědomí o bezpečnosti.

Podívejte se na příklad (kliknutím zvětšíte):

sonarqube security hotspot
Security Hotspot (Hashing data is security-sensitive)

That feature also helps improve developers’ development skills and empower them: as they write code and find out hotspots, they learn about security risks and best practices on how to prevent them.

Security Vulnerabilities require immediate attention. SonarQube provides a detailed description and highlights thre relevant code, which helps to understand what the risk is in the given code.
For example (click to enlarge):

sonarqube security vulnerabilities
Identify the problematic code and provide a solution on how to solve it (in this case: use a key length that provides enough entropy against brute-force attacks. For the RSA algorithm it should be at least 2048 bits long)

5. Paralelní zpracování analýz

až 10 paralelních běhů pro velké projekty.

6. Staging Licence

licence pro testovací/staging prostředí před upgradem produkce.

Data Center Edition vs Enterprise

Tato edice zajišťuje vysokou dostupnost (High Availability) a škálovatelnost pro rozsáhlé implementace.
Zahrnuje redundanci uzlů, odolnost dat a horizontální škálování.

Často kladené otázky (FAQ)

  • Q: Jaká je cena SonarQube?
  • A: Cena závisí na typu edice, počtu řádků kódu a případné technické podpoře.
    Pro přesnou nabídku napište na sonarqube@almtoolbox.com.
  • Q: Používám jazyk podporovaný ve verzi Community, např. Java nebo C#. Znamená to, že mám všechny funkce SonarQube?
  • A: Ne. Bezplatná edice poskytuje pouze funkce dostupné v Community Edition.
  • Například nezahrnuje bezpečnostní pravidla, analýzu větví ani reporty.

ALM-Toolbox is an official distributor of SonarQube and provides consulting, SonarQube and SonarCloud licenses, implementation, training and help customers to integrate SonarQube with business flows and CI/CD pipelines. Contact us for any questions including pricing and quotes: sonarqube@almtoolbox.com or call us: 866-503-1471 (USA / Canada) or +31 85 064 4633 

Související odkazy: