ป้ายกำกับ: สแกน

SonarQube: คุณครูระเบียบSonarQube: คุณครูระเบียบ

เหมือน “ครูภาษาไทย / คณิตศาสตร์ / ภาษาอังกฤษ” ที่คอยตรวจการบ้านเพื่อให้แน่ใจว่างานของคุณ สะอาด เป็นระเบียบ และไม่มีจุดบกพร่องในระยะยาว ครับ

SonarQube เป็นแพลตฟอร์มแบบ Open-platform สำหรับการทำ Static Application Security Testing และตรวจวัด Code Quality โดยอัตโนมัติ


📊 4 เสาหลักที่ SonarQube ตรวจสอบ

  1. Bugs: ตรวจหาข้อผิดพลาดทาง Logic ที่อาจทำให้โปรแกรมพัง
  2. Vulnerabilities: ตรวจหาช่องโหว่ด้านความปลอดภัยเบื้องต้น
  3. Code Smells: ตรวจหาโค้ดที่ “อ่านยาก” หรือ “ดูแลยาก” เช่น ฟังก์ชันที่ยาวเกินไป หรือตัวแปรที่ประกาศไว้แต่ไม่ได้ใช้
  4. Security Hotspots: ชี้จุดที่ดู “น่าสงสัย” ในเชิงความปลอดภัย เพื่อให้ Developer เข้ามาตรวจสอบด้วยตัวเอง

💡 ฟีเจอร์เด่นที่ขาดไม่ได้

  • Code Coverage: บอกเราว่า Unit Test ที่เขียนไปนั้นครอบคลุม Source Code กี่เปอร์เซ็นต์
  • Duplications: ตรวจสอบว่ามีการ Copy-Paste โค้ดซ้ำ ๆ หรือไม่ เพื่อลดความซ้ำซ้อน
  • Quality Gate: เป็นการตั้ง “เกณฑ์มาตรฐาน” หากไม่ผ่านเกณฑ์นี้ SonarQube จะไม่อนุญาตให้ Merge Code หรือผ่าน Pipeline
  • Multi-Language: รองรับมากกว่า 30 ภาษา

🔄 ความแตกต่างระหว่าง Trivy vs SonarQube

เพื่อให้เห็นภาพชัดเจนในสายงาน DevSecOps

คุณลักษณะTrivySonarQube
จุดเน้นหลักInfrastructure & Security Application Code Quality
สิ่งที่สแกนDocker Image, Packages, IaC, SecretSource Code
ความเร็วเร็วมาก ช้ากว่า
การใช้งานป้องกันช่องโหว่ภายนอกและ Misconfigป้องกันหนี้ทางเทคนิค

🛠️ ตัวอย่างการนำไปใช้

ในฐานะที่คุณทำงานด้าน System Analyst และ Developer คุณอาจเห็น Workflow นี้ในองค์กร

  1. Developer เขียนโค้ดและ Push ขึ้น Git
  2. SonarQube Scan ทำงานเพื่อตรวจความสะอาดของโค้ด
  3. Build Image และใช้ Trivy Scan เพื่อตรวจหาช่องโหว่ในระดับ OS และ Library
  4. ถ้าผ่านทั้งคู่ ถึงจะอนุญาตให้ Deploy ขึ้น Server

สรุปง่ายๆ: อยากให้ระบบ “ปลอดภัย” ใช้ Trivy อยากให้โค้ด “สุขภาพดี” ใช้ SonarQube ครับ


อ่านเพิ่มเติม