페이지 트리

이 문서는 2022년 8월 15일 출시된 SonarQube 9.6 릴리즈 노트를 공유하기 위해 작성 되었다.


https://www.sonarqube.org/sonarqube-9-6/



Kubernetes에 대한 보안 규칙 및 AWS에 대한 추가 정보

쿠버네티스를 위한 6개의 새로운 Security Hotspot 규칙은 재확인이 필요한 구성에 플래그를 지정하고 어떤 위험이 있는지 이해하는데 도움이 됩니다.

AWS S3 버킷을 대신 사용하는 경우, JavaScript 분석에서 일반적인 CDK 위험을 피하는데 도움이 되는 5개의 새로운 Security Hotspot 규칙을 추가하여
인프라 설계자는 사용자에게 안전하고 안정적인 인프라를 기반으로 클라우드 인프라를 제공할 수 있도록 지원합니다.
더불어 YAML 파일에 정의된 것을 포함하도록 JavaScript Lambda 분석에 대한 지원을 확장했습니다.

Java 개발자는 이제 AWS용 코딩도 지원합니다. Lambda development, AWS Client best practices, AWS SDK 사용 및 액세스 키 보안에 대한 7가지 새로운 규칙이 적용됩니다.


Azure Function 규칙 및 C# 디컨스트럭션 지원

클라우드 개발에 대해서는 C# 개발자들이 Azure Function 개발에서 일반적인 위험을 피할 수 있도록 돕기 위해 6개의 새로운 Code Smell 규칙을 추가했습니다.
리소스 관리, 오류 처리 및 개체 인터페이스 디자인을 다룹니다. 또한 C#의 튜플 디컨스트럭터 구문을 지원하도록 16개의 규칙을 업데이트했습니다.


Java PRs에 대한 증분 분석(DE, EE, DCE)

이 버전에서는 Java PR에 대한 증분 분석을 도입했습니다. 기본 메커니즘은 새로운 Server-side 분석 캐시입니다. 이를 통해 철저한 분석을 하면서 PR 분석을 변경된 파일로만 제한할 수 있습니다.
수치는 아직 나오지 않았지만, 테스트 프로젝트에서 Java 분석 부분이 160초에서 20초로 감소했습니다. 이러한 메커니즘이 입증되었으므로 향후 릴리스의 추가된 언어에서 이 기능을 볼 수 있습니다.


Issue UI 개선 및 오염 분석에 대한 추가 지원

SonarQube 9.6에서는 업데이트된 Issues UI를 확인할 수 있습니다. SonarQube 9.5는 개발자가 현재 이슈에 집중할 수 있도록 고안된 UI를 도입했었습니다.
SonarQube 9.6은 이슈 인터페이스의 상단으로 모든 이슈 작업을 이동시켜 표현을 더욱 간소화했습니다.

상용 버전에서는 이슈를 더 잘 이해할 수 있도록 6가지 오염 분석 규칙에 추가 내용과 함께 일부 규칙에 사용되는 프레임워크에 맞게 특별히 조정된 패치 지침으로 인하여 변화가 있습니다.


오염 분석의 범위 및 정확도 개선(DE, EE, DCE)

긍정 오류를 줄이고 전반적인 환경을 개선하기 위해 사용자 정의의 유효성 검사기를 자동으로 인식하도록 Taint Analysis를 업데이트했습니다.

동시에 가장 많이 사용되는 100개의 Java 라이브러리로 커버리지를 확장하여 탐지 기능을 향상했습니다.
기본 라이브러리를 더 잘 이해하는 것은 Java 프로젝트에서 더 많은 오염 분석의 참 긍정을 의미합니다.


React: 새로운 규칙, JS/TS 정확도 향상 

7개의 새로운 React 별 버그 규칙은 무한 루프, 데드 코드, 상태 문제 등을 찾는 데 도움이 됩니다. 또한 14개의 다른 규칙들이 React 및 JSX/TSX 코드에서 더 나은 정확도를 위해 업데이트 되었습니다.


PCI DSS 리포팅(EE, DCE)

Payment Card Industry Data Security Standard는 신용카드 데이터를 다루는 모든 조직에 적용되는 12가지 상위 요구사항(총 240개의 하위 요구사항)의 목록입니다.
SonarQube 9.6에서 표준 버전 3.2 및 4.0에 대한 리포팅 기능이 추가되었습니다. 두 버전 모두 UI에서 사용할 수 있으며 Security Report PDF은 버전 4.0을 포함합니다.


Ops 개선: SAML 보안, 토큰 만료

SonarQube 9.5에서 토큰 유형을 추가했던 것에 따라 이번 버전에서는 토큰 만료 설정 기능을 추가하여 토큰을 더욱 안전하게 보호합니다.
토큰 수명은 토큰 생성 중에 사용자가 설정하거나 새로운 토큰의 최대 수명을 선택하는 관리자가 전체적으로 설정할 수 있습니다.

또한 SAML 인증을 사용하는 조직은 SonarQube 9.6에서 새로 지원하는 요청 서명 및 Assertion 암호화를 사용하여 구성을 업데이트할 수 있습니다.

마지막으로 이 버전에서는 Java Service Wrapper를 Windows에서는 WinSW로, MacOS와 Linux에서는 'nohup'으로 교체했습니다.


새로운 언어 버전

지난 몇 달 동안 많은 프로그래밍 언어 업데이트 되었으며, 이제 분석에서 다음 언어 버전을 이해합니다.

  • Scala 2.13.8 & 3.1.2
  • Ruby 3.1
  • Kotlin 1.7
  • Apex 54.12(EE, DCE)

추가적으로 SonarQube 9.6은 현재 Go 1.18을 올바르게 분석하며, Generic을 포함한 Go 1.18 구문 추가를 이해할 수 있도록 Go 규칙이 업데이트되었습니다.