Klocwork 2024.2 の新機能
2024 年 7 月発売
以下は Klocwork 2024.2 の新機能です。Klocwork をアップグレードする場合は、アップグレードと使用方法に影響を与える可能性がある項目を制限事項で参照してください。
SAML と OIDC 認証によるセキュリティとユーザーエクスペリエンスの強化
セキュリティアサーションマークアップ言語 (SAML) または OpenID Connect (OIDC) 認証を使用して、アイデンティティプロバイダー (IdP) を Klocwork と統合し、次のような利点を享受できるようになりました。
-
一元的な認証によるセキュリティの強化
-
シングルサインオン (SSO) によるユーザー管理とエクスペリエンスの簡素化
Klocwork は次のアイデンティティプロバイダーでテスト済みです:
-
SAML: Keycloak、Okta、AWS、Cisco、Github
-
OIDC: Keycloak、Google、Microsoft Entra (旧 Azure AD)、AWS
SAML と OIDC の設定方法については、SAML アクセス制御のセットアップ、および OIDC アクセス制御のセットアップを参照してください。
アプリケーショントークンを使用した認証
Validate でアプリケーショントークンを作成し、次のタスクに対して SAML または OIDC 対応サーバーで安全に認証できるようになりました:
- kwauth または validate auth を使ってコマンドラインツールにサインインします。これは、ブラウザーでユーザー名とパスワードを使用してサインインできないヘッドレスマシンで役立ちます。アプリケーショントークンを使用した認証を参照してください。
- Validate または Web API からプロジェクトをインポートします。認証には、ユーザー名とパスワードの代わりにアプリケーショントークンが必要になります。クラシック認証を使用するサーバーからプロジェクトをインポートするには、ユーザー名とパスワードが必要になります。アプリケーショントークンを使用してプロジェクトをインポートまたは移行する、および既存のプロジェクトを新しいプロジェクトルートにインポートするを参照してください。
SAML または OIDC デバイス認証 (デスクトッププラグインを含む) は、Validate ログインページを通じて行われ、kwauth
または validate auth
によって生成されたアクセスコードを使用します。詳細については、Perforce による Validate へのアクセスを参照してください。
Validate でユーザーセッションとトークンを管理する
管理者は、Validate によって個々のユーザーセッションを管理できるようになりました。この権限を有効にすると、ユーザーを Validate セッションからログアウトさせ、ユーザートークンを取り消すことができます。詳細については、ユーザーセッションとトークンの管理を参照してください。
Validate で強化されたパスワードセキュリティをお楽しみください
Validate アカウントに安全なパスワードポリシーを実装できるようになりました。このポリシーでは、パスワードが次の基準を満たすことが必要です:
-
最低 8 文字
-
少なくとも 1 つの大文字
-
少なくとも 1 つの小文字
-
少なくとも 1 つの数字
-
少なくとも 1 つの特殊文字 (!、@、#、$ など)
既存のパスワードはこの新しいポリシーの影響を受けません。詳細については、安全なパスワードの有効化を参照してください。
MISRA C および C++ 分類基準表記の改善
MISRA C および C++ の分類がより効率的に整理されるようになりました。分類法ごとにルールファーストのアプローチが採用されており、チェッカーは分類法内のルールのサブカテゴリになります。
C および C++ の機能向上
C/C++ 用の Klocwork 分析エンジンは、クラシックモード、標準モード、またはモダンモードを使用して実行できます。オプションを指定しない場合は、デフォルトで標準モード (推奨) が使用されます。詳細については、C/C++ 解析エンジンモードの指定を参照してください。
Java の機能強化
ビルドスペックを変更して解析対象の Java ファイルのセットを絞り込む代わりに、kwandroid 内の --ignore-files
オプションを使用できるようになりました。
コーディング標準の対象範囲の拡大
このリリースには、次のコーディング規約に関する新しい拡張カバレッジが含まれています。
-
Kotlin の CWE
プラグインと拡張機能
Validate サーバー、プラグイン、ツールのバージョンに応じて、クラシック認証または SAML または OIDC 認証のいずれかを使って、任意のプラグインでプロジェクトまたはストリームに接続できるようになりました。お使いのデスクトップ分析ツールのドキュメントに記載されている手順を参照して、画面の指示に従います。
コードレビューツールの削除
このリリースでは、Validate のコードレビュー機能が削除されました。関連するコマンドラインツールも削除されました。
チェッカーの改善
新しいチェッカー
このリリースでは、以下のチェッカーが追加されました:
チェッカー | 説明 |
---|---|
MISRA.TOKEN.WRONGESC.C.2004 および MISRA.TOKEN.WRONGESC.CPP.2008 | これらの MISRA チェッカーは、MISRA-C Rule 4.1 のサポートに対応しています (必要 (Required)): リテラルおよび MISRA-C++ Rule 2-13-1 内のエスケープシーケンスが正しくありません (必要 (Required)): ISO/IEC 14882:2003 で定義されているエスケープシーケンスのみを使用する必要があります。 |
変更されたチェッカー
チェッカー | 説明 |
---|---|
A_UNUSED.GEN | 誤検知の検出が少なくなる |
AUTOSAR.ADD.ENUM.OP | 誤検知の検出が少なくなる |
FUNCRET.GEN | 誤検知の検出が少なくなる |
LOCRET.RET | 誤検知の検出が少なくなる |
MISRA.ETYPE.INAPPR.CAST.2012 | 誤検知の検出が少なくなる |
MISRA.TOKEN.WRONGESC | 誤検知の検出が少なくなる |
MISRA.VAR.UNIQUE.STATIC | 追加の欠陥を検出する |
MLK.MUST | 誤検知の検出が少なくなる |
NNTS.MUST | 誤検知の検出が少なくなる |
NPD.CHECK.MIGHT | 誤検知の検出が少なくなる |
NPD.FUNC.MIGHT | 誤検知の検出が少なくなる |
NPD.FUNC.MUST | 誤検知の検出が少なくなる |
SV.BRM.HKEY_LOCAL_MACHINE | チェッカーへの全体的な改善 |
UNINIT.CTOR.MUST | 誤検知の検出が少なくなる |
UNINIT.HEAP.MUST | 誤検知の検出が少なくなる |
UNINIT.STACK.MIGHT | 誤検知の検出が少なくなる |
UNINIT.STACK.MUST | 誤検知の検出が少なくなる |
有効または無効なチェッカー
このリリースでは、チェッカー構成ファイルのデフォルトの enabled
フィールドに追加された、または削除されたチェッカーはありません。
分類基準の改善
インストールの一部として、Klocwork チェッカーを MISRA、CWE、OWASP、DISA STIG などのコーディング標準にマップするカスタム分類基準ファイルがいくつか提供されています。
分類基準 | 改善 |
---|---|
cert_c_all.tconf と cert_c_all_ja.tconf |
チェッカーマッピングを以下の規則に追加または更新しました。
|
cert_cpp.tconf と cert_cpp_ja.tconf | cert_cpp.tconf と cert_cpp_ja.tconf 分類基準を大幅に再編成しました。 |
cwe_all_kt.tconf および cwe_all_kt_ja.tconf | Klocwork Kotlin チェッカーを CWE ID にマッピングする新しい分類基準を追加しました。 |
Helix QAC 分類基準 | Helix QAC 分類基準を、Helix QAC バージョン 2024.2 に更新しました。 |
misra_c_2023_c99.tconf および misra_c_2023_c99_ja.tconf misra_c_2023_c90.tconf および misra_c_2023_c90_ja.tconf misra_c_2023_c11.tconf および misra_c_2023_c11_ja.tconf misra_c_2012_with_amd2_c99.tconf および misra_c_2012_with_amd2_c99_ja.tconf misra_c_2012_with_amd2_c90.tconf および misra_c_2012_with_amd2_c90_ja.tconf misra_c_2012_with_amd2_c11.tconf および misra_c_2012_with_amd2_c11_ja.tconf misra_c_2004.tconf および misra_c_2004_ja.tconf misra_cpp_2023.tconf および misra_cpp_2023_ja.tconf misra_cpp_2008.tconf および misra_cpp_2008_ja.tconf |
MISRA C と C++ 分類基準を大幅に再編成しました。分類基準はそれぞれルールファーストのアプローチを使用して定義されるようになり、チェッカーは分類基準内のルールのサブカテゴリです。 |
サポートされているコンパイラへの改善
次のコンパイラのサポートを追加または改善しました。
- Clang
- Clang-cl
- GCC
- IAR
- Renesas
サポートされる C/C++ コンパイラの全リストについては、「ビルド統合でサポートされる C/C++ コンパイラ」を参照してください。
ライセンス
Klocwork は、Reprise License Manager (RLM) をサポートします。
2023 ライセンスは、Klocwork 2024.1 以降との互換性がありません。製品の最新バージョンを使用するには、Perforce (license@perforce.com) に連絡して新しいライセンスを取得してください。
詳細については、サポートされる RLM のバージョンおよび RLM ドングルをサポートするオペレーティングシステムを参照してください。
システム要件の変更
このリリースでは、次のサポートが追加されました:
-
AlmaLinux 9.4
-
Amazon Linux 2 (2.0.20240529.0 Update)
-
Android Studio Iguana (2023.2.1 Patch 2)
-
Chrome 115.x ~ 126.x
-
CLion 2023.1.7、2023.2.4
-
Eclipse 4.32 (2024-06)
-
Fedora 40
-
Firefox 115.x ~ 127.x、115.x ESR
-
Glibc 2.39
-
Gradle 8.8
-
IntelliJ IDEA 2023.1、2023.2.7
-
Microsoft Edge 115.x ~ 126.x
-
openSUSE Leap 15.6
-
Oracle Linux 9.4
-
Red Hat Enterprise Linux 9.4
-
Rocky Linux 9.4
-
Ubuntu 22.04 ~ 22.04.4 LTS
-
Visual Studio 2017 バージョン 15.9.63
-
Visual Studio 2019 バージョン 16.11.37
-
Visual Studio 2022 バージョン 17.10.3
-
VS Code 1.80.2 ~ 1.90.2
このリリースでは、次のサポートを終了しました:
-
Chrome 111.x ~ 114.x
-
Fedora 38
-
Firefox 111.x ~ 114.x
-
Jenkins プラグイン
-
Microsoft Edge 111.x ~ 114.x
-
VS Code 1.76.2 ~ 1.80.1
サポート対象のバージョンの完全なリストについては、「システム要件」を参照してください。
Klocwork 2024.2 以降の Jenkins プラグインの削除
Klocwork 2024.2 以降、Jenkins プラグインは Klocwork から削除され、インストール パッケージは提供されなくなりました。
Klocwork 2024.2 以降、Validate コード レビューが削除されました
Klocwork 2024.2 以降、コード レビュー機能とそれに関連するコマンド ライン ツールが Validate から削除されました。
Klocwork 2024.3 以降の NIS アクセス制御のサポート終了
Klocwork 2024.3 以降の CentOS Linux 7 のサポート終了のお知らせ
Klocwork 2024.3 以降では、以下のオペレーティングシステムとインストーラーはサポートされなくなります:
- CentOS Linux 7
Klocwork 2022 のメンテナンス終了
Klocwork のすべての 2022 バージョンのメンテナンス (メンテナンス終了および販売終了を含む) は、2024 年 3 月 31 日に終了しました。すべての Klocwork リリースで利用可能なサポートの詳細については、Klocwork 製品ライフサイクルを参照してください。
2024 年における docs.roguewave.com の中止
docs.roguewave.com サイトは 2024 年初めに廃止されました。 Klocwork バージョン 2021 以前については、製品に含まれるオフラインドキュメントを参照してください。
リリース 2023.4 での Klocwork サーバーインストールの中止
リリース 2023.4 以降、Klocwork サーバーインストールは中止されました。Validate のインストールに移行できます。これは、より合理化され、統合されたエクスペリエンスを提供するように設計されています。
Klocwork から Validate に移行する場合:
Klocwork インスタンスを停止し、projects_root をバックアップします。
Validate のインストール中に、projects_root ディレクトリの場所を現在の projects_root ディレクトリに設定します。
現在、ポートまたはライセンスサーバーにデフォルト以外の値を使用している場合は、Validate のインストール時に必ず同じ値を設定してください。
指摘のグループ化の中止
Klocwork 2023.3 の時点から、新規プロジェクトでは指摘のグループ化がデフォルトで無効になります。
指摘を回避するには、Klocwork をアップグレードする前に指摘のグループ化をオフにしてください。