このセクションの内容:

はじめに

Parasoft CWE Compliance アーティファクトは、CWE (Common Weakness Enumeration : 共通脆弱性タイプ一覧) ガイドラインへの準拠を直ちに証明できる、DTP インフラストラクチャのアセットの集合です。このアーティファクトは Security Compliance Pack の一部として提供されています。ダウンロードおよびライセンス情報については Parasoft 製品テクニカル サポート センターまでお問い合わせください。

サポートされるガイドライン

CWE Compliance アーティファクトは、以下の具体的な CWE 実装をサポートします。

  • 2022 CWE Top 25 Most Dangerous Software Errors
  • CWE List Version 4.9 (Jtest と dotTEST のみ)
  • CWE Top 25 + On the Cusp

サポートされている CWE ガイドラインの詳細については、以下のリンク先の情報を参照してください。 

前提条件

適切な Security Compliance ライセンスのある、以下のいずれかの Parasoft コード解析ツールが必要です。

  • Jtest
  • dotTEST
  • C/C++test

基本的な操作手順

  1. DTP Extension Designer に Security Compliance Pack をインストールします。
  2. Extension Designer を使用して CWE Compliance アーティファクトをデプロイします。このアクションにより、CWE Compliance アセット も DTP 環境にデプロイされます。
  3. 使用しているコード解析ツールを DTP のプロジェクトに接続します。DTP 解析結果を相関させることができる設定 (すなわちビルド ID、ソース管理設定など) を行います。詳細については、ご使用のコード解析ツールのドキュメントを参照してください。 
  4. いずれかの CWE テスト コンフィギュレーションを使って、コード解析ツールでプロジェクトを解析します。
  5. (オプション) 自動ビルド プロセスの一部として KPI ワークフローを実行して、CWE への準拠に関連するメトリクス データを生成します。
  6. DTP ダッシュボード テンプレート、ウィジェット、およびレポートを使って、セキュリティ標準への準拠をモニタリングします。

100% 準拠の達成

CWE ガイドラインの中には、Parasoft の静的解析では適用されないものが数多くあります。そのため、DTP では、Parasoft 静的解析ルールにマッピングされているガイドラインに対してのみ 100% の準拠を報告します。

CWE Compliance アセット

以下のアーティファクトはパッケージに含まれており、Security Compliance Pack のインストール時に DTP 環境に追加されます。

CWE Compliance.json

これは、DTP のデータ処理機能を拡張する主要アセットであり、CWE ウィジェットとレポートを生成します。DTP ワークフローを使用するには、Extension Designer を使ってデプロイする必要があります (「Deploying the CWE Assets」を参照)。

テスト コンフィギュレーション

ツールに付属のテスト コンフィギュレーションまたは Security Compliance Pack と共にインストールされたテスト コンフィギュレーションを実行するようにツールを設定できます。詳細については、ご使用のツールのドキュメントを参照してください。この Compliance Pack には以下のテスト コンフィギュレーションが含まれています。

C/C++test:

  • CWE Top 25 2022
  • CWE Top 25 + On the Cusp 2022

dotTEST:

  • CWE Top 25 + On the Cusp 2022
  • CWE Top 25 2022
  • CWE 4.9

Jtest:

  • CWE Top 25 + On the Cusp 2022
  • CWE Top 25 2022
  • CWE 4.9

Security Compliance Pack には、CWE および OWASP コンプライアンスのための次のテスト コンフィギュレーションが付属しています。 

  • UL 2900 (OWASP Top 10-2021 と CWE Top 25 + On the Cusp を組み合わせたもの)

OWASP Compliance のドキュメントも参照してください。

ダッシュボード テンプレート

ダッシュボード テンプレートには定義済みのウィジェットが含まれており、プロジェクトについての具体的な情報をすぐに確認することができます。DTP のダッシュボードの詳細については、「ダッシュボード 」を参照してください。ダッシュボード テンプレートに表示されるウィジェットの詳細については「Adding the CWE Dashboards」を参照してください。CWE Compliance アーティファクトには以下のテンプレート ファイルが含まれています。

C および C++ コードのダッシュボード:

  • CWE Top 25 2022- C/C++ 
  • CWE Top 25 2022+ On the Cusp - C/C++

.NET コードのダッシュボード:

  • CWE 4.9 - .NET 
  • CWE Top 25 2022 - .NET 
  • CWE Top 25 2022 + On the Cusp - .NET 

Java コードのダッシュボード:

  • CWE 4.9 - Java 
  • CWE Top 25 2022 - Java
  • CWE Top 25 2022 + On the Cusp - Java 

Security Compliance Pack には次の UL 2900 ダッシュボード テンプレートが付属しており、これは CWE Top 25 + On the Cusp および OWASP Top 10 2021 コンプライアンスを表示するように構成されたウィジェットを含むます。  CWE と OWASP 2021 の両方のコンプライアンス アーティファクトをデプロイする必要があることに注意してください。 

  • UL 2900 - Java 
  • UL 2900 - .NET

OWASP Compliance のドキュメントも参照してください。

モデルとプロファイル

プロファイルは、DTP インフラストラクチャでさまざまな機能を提供します。たとえば、拡張によって実行されるカスタム計算の入力や、コンプライアンス レポートのためのデータなどです。プロファイルはモデルからその構造を取ります。これはフィールド、ヘッダー、あるいはプロファイルで使用される他のコンポーネントを定義します。DTP Enterprise Pack のプロファイルの詳細については「モデル プロファイルの使用」を参照してください。CWE アーティファクトには以下のプロファイル ファイルが含まれています。    

モデル:

  • CWE Compliance model (cwe-compliance.json)
  • KPI model (KPI.json)

C および C++ コードのプロファイル:

  • CWE Security Impact - C++
  • CWE Top 25 - C++
  • CWE Top 25+Cusp - C++

.NET コードのプロファイル:

  • CWE 4.9 - .NET profile
  • CWE Security Impact - .NET profile
  • CWE Top 25 - .NET profile
  • CWE Top 25+Cusp - .NET

Java コードのプロファイル:

  • CWE 4.9 - Java profile
  • CWE Security Impact - Java profile 
  • CWE Top 25 - Java profile 
  • CWE Top 25+Cusp - Java

コンプライアンス カテゴリ

個々のコード解析ルールは、「セキュリティ」や「例外」といったカテゴリに属します。CWE Compliance アーティファクトには、CWE 固有のカテゴリ (つまり脆弱性タイプまたは影響) にコード解析ルールをマッピングするファイルが含まれています。以下のファイルで定義されたカテゴリに従って違反をレポートするようにウィジェットを構成して、CWE カテゴリに従って違反を確認できます。

C および C++ コードのカテゴリ:

  • CWE Top 25 - C++ 
  • CWE Top 25+Cusp - Software Development - C++ 
  • CWE Top 25+Cusp - C++ 
  • CWE Top 25+Cusp - Technical Impact - C++
  • CWE Top 25 - Software Development - C++
  • CWE Top 25 - Technical Impact - C++ 

.NET コードのカテゴリ:

  • CWE 4.9 - .NET
  • CWE 4.9 - Software Development - .NET
  • CWE 4.9 - Technical Impact - .NET
  • CWE Top 25 - .NET 
  • CWE Top 25 - Software Development - .NET 
  • CWE Top 25 - Technical Impact - .NET
  • CWE Top 25+Cusp - .NET
  • CWE Top 25+Cusp - Technical Impact - .NET 
  • CWE Top 25+Cusp - Software Development - .NET

Java コードのカテゴリ:

  • CWE 4.9 - Java
  • CWE 4.9 - Software Development - Java
  • CWE 4.9 - Technical Impact - Java 
  • CWE Top 25 - Java 
  • CWE Top 25 - Software Development - Java 
  • CWE Top 25 - Technical Impact - Java
  • CWE Top 25+Cusp - Java 
  • CWE Top 25+Cusp - Technical Impact - Java 
  • CWE Top 25+Cusp - Software Development - Java 

DTP のルール カテゴリの詳細については「カスタム コンプライアンス カテゴリ」を参照してください。

Key Performance Indicator.json

この DTP ワークフローは、さらに計算を実行して CWE 特有のメトリクス データを提供します。KPI ワークフローはオプションであり、CWE Compliance アーティファクトに固有のものではありません。このワークフローを使用するには、このワークフローを DTP 環境にデプロイし、標準の [メトリクス - サマリー] ウィジェットのインスタンスをダッシュボードに手動で追加してデータを表示します。詳細については「Calculating Security Impact」を参照してください。 

PDF の提供

Parasoft ルールと CWE ガイドラインとの関連を示す PDF が以下の場所に用意されています:

  • <PACK>/rules/jtest
  • <PACK>/rules/dottest
  • <PACK>/rules/cpptest  

CWE アセットのデプロイ 

Security Compliance Pack をインストールする際に CWE Compliance アセットはインストールされます (「インストール」を参照)。アーティファクトをインストールした後、DTP 環境にアセットをデプロイする必要があります。  

  1. DTP の設定メニュー (歯車のアイコン) から [Extension Designer] を選択します。
  2. [サービス] タブをクリックし、DTP ワークフロー サービス カテゴリを選択します。アセットはどのサービス カテゴリにもデプロイできますが、Parasoft のアセットのカテゴライズに合うように DTP ワークフロー カテゴリを使用することを推奨します。[カテゴリの追加] をクリックして独自のサービス カテゴリを作成することもできます (詳細については「サービスの使用」を参照)。
     
  3. 既存のサービスにアーティファクトをデプロイするか、新しいサービスを追加できます。サービスにデプロイしたアーティファクトの数は、全般的なパフォーマンスに影響します。詳細については「Extension Designer のベスト プラクティス」を参照してください。既存のサービスを選択し、ステップ 5 まで継続するか、または  [サービスの追加] をクリックします。
  4. サービスの名前を指定して [確認] をクリックします。
  5. タブ化されたインターフェイスは、サービス内でアーティファクトを配置するのに役立ちます。複数のタブにまたがってアーティファクトを配置してもシステムのパフォーマンスには影響しません。タブをクリックし (または [+] ボタンをクリックして新しいタブを追加し)、縦の三点メニューから [読み込み] を選択します。
  6. [Local] > [Flows] > [Workflows] > [Security] > [CWE Compliance] を選択し、[読み込み] をクリックします。
  7. 空いている任意の箇所をクリックしてサービスにアーティファクトを追加します。 
  8. [デプロイ] をクリックし、DTP ダッシュボードに戻ります。
  9. ブラウザーを更新します。

これで、CWE ウィジェットを追加し、CWE コンプライアンス カテゴリを利用し、CWE レポートを確認できるようになりました。

CWE ダッシュボードの追加

CWE ダッシュボード テンプレートは、Security Compliance Pack をインストールした後に利用可能になります。ダッシュボード テンプレートが表示されない場合、DTP を再起動してください (「DTP サービスの停止」および「DTP アプリケーションの開始」を参照)。

  1. DTP ツールバーの [ダッシュボードの追加] をクリックして名前を指定します。
  2. (オプション) 以下の情報を指定して、ダッシュボードのデフォルト ビューを設定できます。
    • [フィルター] ドロップダウン メニューから、プロジェクトに関連するフィルターを選択します。フィルターは、DTP に格納されたデータをカスタマイズして表示できるラン コンフィギュレーション セットを表します。詳細については「フィルターの作成と管理」を参照してください。 
    • [期間] ドロップダウン メニューで時間の範囲を指定します。 
    • [ベースライン ビルド] および [ターゲット ビルド] ドロップダウン メニューで、ビルド範囲を指定します。
  3. [テンプレートからダッシュボードを作成] オプションを有効にし、いずれかの CWE テンプレートを選択します。
  4. [作成] をクリックしてダッシュボードの追加を完了します。

DTP ビューに追加したい CWE ダッシュボードについて同じ操作を繰り返します。

対応する CWE テスト コンフィギュレーションを使ってコード解析ツールを実行したことがある場合、ダッシュボードを追加すると直ちにウィジェットにデータが表示されます。これらのウィジェットの使用をすぐに開始してデータを確認して作業できるため、コンプライアンス ゴールを追跡するのに役立ちます。 

CWE ダッシュボード

この Compliance アーティファクトに同梱されているダッシュボード テンプレートのリストについては「Dashboard Templates」を参照してください。次のウィジェットは、Security Compliance Pack に同梱されている 1 つ以上のダッシュボードに含まれています:

CWE Compliance - Status

このウィジェットは、プロジェクトの全般的なコンプライアンス ステータスを表示します。結果を表示するために使用されるビルド ID とコンプライアンス カテゴリの設定が含まれます。 

このウィジェットは以下のステータスを表示できます:

  • Compliant (準拠) - コードはすべての必須ガイドラインを満たしています。
  • Compliant with Deviations (逸脱がある準拠) - コードはすべてのガイドラインを満たしていますが、逸脱が適用されています。逸脱は、許容可能であるとユーザーが判断した違反です (逸脱の詳細については「Deviation Report」を参照してください)。
  • Not Compliant (非準拠) - コードはすべての必須ガイドラインを満たしていません。
  • Missing rule(s) in analysis (解析で見つからないルール) - プロファイル で文書化された Parasoft コード解析ルールが、指定のビルドに含まれていませんでした。 

ウィジェットをクリックして CWE Compliance Report を表示します。

CWE Compliance - Percentage

このウィジェットは、どの程度プロジェクトが CWE ガイドラインに準拠しているかを表示します。 

ウィジェットをクリックして CWE Compliance Report を表示します。

CWE Compliance - Weakness by Status

このウィジェットは、成功、違反、逸脱 (抑制されたコード解析違反) のルール数を表示します。円グラフ中、緑の部分は成功のルールを、赤の部分は違反のルールを表します。ウィジェットには、結果を表示するために使用されるビルド ID とコンプライアンス カテゴリの設定も含まれています。

以下の操作を行うことができます。

  • 円グラフ上にマウス ポインタを置くと、詳細が表示されます。
  • 円グラフの「成功」の部分をクリックすると、成功のガイドラインでフィルタリングされた CWE Compliance Report が表示されます。
  • 円グラフの「違反」の部分をクリックすると、違反でフィルタリングされた CWE Compliance Report が表示されます。
  • Violations の値をクリックすると、フィルタリングされない CWE Compliance Report が表示されます。
  • Deviations の値をクリックすると、Deviation Report が表示されます。

Violations by Category

ダッシュボードには、CWE ガイドラインに従って違反を表示するように構成された、 DTP 標準の [カテゴリ - 上位 5 表] ウィジェットのインスタンスが含まれます。 

各インスタンスは、コンプライアンス カテゴリ構成に従ってデータを表示します (「Compliance Categories」を参照)。

[Name] 列のカテゴリ リンクをクリックすると、 [ルール別の違反] レポートが表示されます。5 以上のカテゴリに違反がある場合、[さらに表示] リンクをクリックすると、コンプライアンス カテゴリ別の違反 レポートが表示されます。

Rules in Compliance

ダッシュボードは、CWE 用に設定された DTP 標準の [違反がないルール - サマリー] ウィジェットのインスタンスを含みます。このウィジェットは、準拠しているルールの割合、準拠しているルールの数、有効なルール、および違反の数を表示します。ウィジェットをクリックすると、コンプライアンス カテゴリ別の違反 レポートが表示されます。

Compliance by Category

ダッシュボードは、CWE 用に設定された DTP 標準の [カテゴリ別コンプライアンス] ウィジェットのインスタンスを含みます。このウィジェットは、コンプライアンス コンフィギュレーションのカテゴリごとに、コンプライアンスの状況の概要を表示します。 

ウィジェットをクリックすると、 [ルール別の違反] レポートが表示されます。

CWE Weakness by Technical Impact - TreeMap

このウィジェットは、技術的インパクトに従って静的解析違反の集中度合いを表示します。 

ウィジェットのセクション上にマウス ポインタを置くと、その詳細が表示されます。ウィジェット上のセクションをクリックすると、コンプライアンス カテゴリでフィルタリングされた 違反エクスプローラー が開きます。

手動による CWE ウィジェットの追加

既存のダッシュボードに CWE ウィジェットを手動で追加できます。ダッシュボードにウィジェットを追加する方法については「ウィジェットの追加」を参照してください。アーティファクトをデプロイした後、ウィジェットが CWE カテゴリに表示されます。  

CWE ウィジェットの設定

タイトル[タイトル] フィールドでウィジェット名を変更できます。
フィルター

ドロップダウン メニューから特定のフィルターまたはダッシュボード設定を選択します。詳細については「フィルターの作成と管理」を参照してください。

フィルターは、選択した コンプライアンス プロファイル の種類 (Java、.NET、C++) に一致するデータを含む必要があります。たとえば、フィルターに .NET プロジェクトのコード解析データが含まれている場合は、.NET コンプライアンス プロファイルのいずれかを選択する必要があります。

ターゲット ビルドドロップダウン メニューから特定のビルドを選択します。ダッシュボード全体について選択されたビルドがデフォルトで選択されます。ビルドの詳細については「ビルド管理の使用」を参照してください。この設定はすべてのウィジェットで可能です。 

コンプライアンス プロファイル

ドロップダウンメニューからコンプライアンス プロファイルを選択して、サポートされている CWE 固有のガイドラインの 1 つに対するコード解析データを表示します。以下のプロファイルのいずれかを選択できます。

  • CWE 4.9 - .NET
  • CWE 4.9 - Java
  • CWE Top 25 - .NET
  • CWE Top 25 - Java
  • CWE Top 25 - C++
  • CWE Top 25+Cusp - .NET
  • CWE Top 25+Cusp - Java
  • CWE Top 25+Cusp - C++

コンプライアンス プロファイルの種類 (Java、.NET、C++) は、選択したフィルターのデータと一致する必要があります。たとえば、フィルターに .NET プロジェクトのコード解析データが含まれている場合は、.NET コンプライアンス プロファイルのいずれかを選択します。

CWE Compliance アーティファクトには、検出された脆弱性のセキュリティ上の影響を計算するために使用できるプロファイルが含まれています。この機能を利用するには、追加操作が必要です。詳細については「Calculating Security Impact」を参照してください。 

セキュリティ上の影響の計算

Key Performance Indicator (KPI) DTP ワークフローは、静的解析ルールに関連する KPI を定義します。ユーザーは結果を測定して数値化することができます。計算を実行するには、KPI 拡張のための静的解析データとメトリクス解析データがビルドになければなりません。コード解析ツールは、同じビルド ID で Metrics および CWE のテスト コンフィギュレーションを使用してすでに実行されているはずです。メトリクス解析には、Logical Lines of Code メトリクスの (metricId METRIC.NOLLOCIF) のデータも含まれていなければなりません。ビルド ID の設定 Metrics テスト コンフィギュレーションの実行の詳細については、ツールのドキュメントを参照してください。

このアーティファクトを使用するには、手動でデプロイする必要があります。

  1. Extension Designer を開き、[サービス] タブをクリックします。
  2. サービス カテゴリから、KPI アーティファクトを実行するためのサービスを選択します。Parasoft のアセットのカテゴライズに合うように DTP ワークフロー カテゴリのサービスを使用することを推奨します。既存のサービスにアーティファクトをデプロイするか、新しいサービスを追加できます。サービスにデプロイしたアーティファクトの数は、全般的なパフォーマンスに影響します。
  3. タブ化されたインターフェイスは、サービス内でアーティファクトを配置するのに役立ちます。複数のタブにまたがってアーティファクトを配置してもシステムのパフォーマンスには影響しません。タブをクリックし (または [+] ボタンをクリックして新しいタブを追加し)、縦の三点メニューをクリックします。
  4. [読み込み] > [ライブラリ] > [Workflows] > [Security] > [Key Performance Indicator] を選択し、空いている任意の箇所をクリックしてサービスにアーティファクトをドロップします。 
  5. [デプロイ] をクリックし、KPI アーティファクトがデプロイされるサービス カテゴリをクリックします。
  6. Key Performance Indicator セクションを展開し、エンドポイントをコピーします。Extension Designer はエンドポイント用の 2 種類のパスを表示します。API Endpoint Path は、すべての API ディレクトリを含みます。ほとんどの場合にエンドポイントを実行するために使用できます。Direct Endpoint Path は、サーバー上のエンドポイントへの直接のパスであり、API エンドポイント パスがブロックされていたりアクセス不能である場合 (たとえば認証を必要とするサード パーティとの統合などの場合) に使用できます。 
  7. 必須パラメーターと共に、REST リクエストをエンドポイントに送ります。「Execution Details」を参照してください。
  8. DTP ダッシュボードを開き、[ウィジェットの追加] をクリックします。
  9. [メトリクス] > [メトリクス - サマリー] ウィジェットを選択します。
  10. [Metric] ドロップダウン メニューから CWE Security Impact/Logical Lines in Files を選択します。 
  11. [集合] ドロップダウン メニューから、表示したいメトリクス集合を選択し、[作成] をクリックします。

ウィジェットがダッシュボードに表示されます。

ウィジェットをクリックすると、単一メトリクスの概要 レポート が表示されます。

実行の詳細

ブラウザーでリクエストを実行したり、cURL コマンドを使用したり、リクエストをスクリプトに追加したりすることができます。以下の表で必須パラメーターについて説明します。

filterId

計算を実行するプロジェクトのフィルター ID。ダッシュボードの URL から素早くフィルター ID を取得できます。


また、DTP のフィルター設定からフィルター ID を取得することもできます (フィルターの作成と管理 を参照)。

profile
ルールおよび計算用の重み付けを含むプロファイルの名前。セキュリティ影響度を計算するには、以下のいずれかのプロファイルを指定します。
  • CWE Security Impact - .NET
  • CWE Security Impact - Java
  • CWE Security Impact - C++

プロファイルの名前は Extension Designer の [モデル プロファイル] タブから取得できます。
 

buildId計算を実行するビルド。ビルド ID を指定しない場合、このパラメーターのデフォルトは最新ビルドです。
サンプル API コール URL
http://framemaker.parasoft.com:8314/api/v1/services/5c0f0cae5d018e0630ae2789/slices/9acaecb1.7eb78?filterId=9&profile=CWE%20Security%20Impact%20-%20.NET
成功のレスポンスの例
{ 	"success":{ 		"title":"KPI", 		"message":"Calculation has started for filter 'CWE dotTEST' using profile 'CWE Security Impact - .NET'. Check debug output for any errors during calculation." 	} }

デフォルトのプロファイル設定は CWE 標準に基づいていますが、プロファイルでルールを削除または追加したり、デフォルトの重み付けを変更したりできます。カスタム プロファイルを作成すると、目的ごとに異なる KPI を実行したり、ルールの異なるサブセットごとに異なるプロファイルを実行したりできます。カスタム KPI を計算する場合は、必要に応じてデフォルト プロファイルを保持し、カスタム プロファイルを Extension Designer にアップロードする必要があります。詳細については「Profiles」を参照してください。

自動ビルド プロセスの一部として KPI を実行する

解析するデータの量によっては、コア データを取得するために KPI の計測を複数回実行する必要があり、非常に時間がかかることがあります。したがって、KPI の計測の実行はビルド プロセスの一部として行うか、KPI スライスのトリガー ノードを使って手動で行うべきです。

CWE Compliance Report

CWE Compliance Report を使用すると、コンプライアンスを実証し、コンプライアンス ポリシーに向けた進捗状況をモニタリングできます。次の CWE ウィジェットは CWE Compliance Report にリンクしています。 

このレポートには、レポートにアクセスするためにクリックしたウィジェットで設定されたビルド ID とフィルターのデータが含まれています。プロジェクトのコンプライアンス ステータスは、レポートにアクセスするためにクリックしたウィジェットで指定されたコンプライアンス プロファイル設定によっても決まります (「CWE Widget Configuration Settings」を参照)。

以下の操作を行うことができます。

  • 以下のいずれかのリンクをクリックしてサブ レポートを表示します。
  • [Compliance] ドロップダウン メニューからステータスを選択して、現在のステータスで脆弱性をフィルタリングします。
  • 列ヘッダーをクリックしてレポートをソートします。
  • [Weakness] 列でリンクをクリックして、Weakness Detection Plan レポートの脆弱性に直接移動します。
  • 違反エクスプローラー で違反を確認するには、[# of Violations] 列のリンクをクリックします。
  • 違反エクスプローラー で違反を確認するには、[逸脱の数] 列の値をクリックします。
  • プリンター印刷に適した PDF 形式のレポートをエクスポートするには、[Download PDF] をクリックします。ナビゲーション バーへの画像の追加」で説明するように DTP にカスタム グラフィックを追加した場合、PDF にもカスタム グラフィックが表示されます。 

Weakness Detection Plan

Weakness Detection Plan は、どのように Parasoft コード解析ルールを脆弱性にマッピングするかを表示します。このレポートには選択したコンプライアンス プロファイルのデータが表示されます (「Models and Profiles」を参照)。 

Deviation Report

Deviation Report は、プロジェクトで抑制された違反についての情報を表示します。DTP での抑制の詳細については「違反の抑制」を参照してください。コード内での抑制については、ご使用の解析ツールのドキュメントを参照してください。

デフォルトでは、このレポートはすべてのガイドラインを表示しますが、[Only Deviations] オプションを有効化することで、関連する抑制がないガイドラインを除外できます。[Hide Modification History] オプションを有効化して、逸脱の変更履歴を非表示にすることもできます。 

ビルド監査レポート

ビルド監査レポート は DTP のネイティブ機能です。このレポートは、コード解析違反の概要を表示するほか、ビルドに関連したテスト結果とカバレッジ情報も表示します。また、データのアーカイブをダウンロードすることもできます。これは、定期的な監査で CWE への準拠を証明するために使用できるアーティファクトです。

アーカイブをダウンロードするには、ビルドがロックされていなければなりません。詳細については「ビルド監査レポート」を参照してください。

プロファイル

プロファイルは、カスタム計算を可能にする追加の入力を提供します。Security Compliance Pack には、CWE 規格のコンテキストでデータを表示できるようにする一連のプロファイルが含まれています。CWE への準拠に使用されるプロファイルのリストについては「Models and Profiles」を参照してください。DTP が CWE データをレポートする方法をカスタマイズしたい場合、カスタム プロファイルを作成することができます。 

CWE Compliance Profiles

デフォルト プロファイルは、CWE ガイドラインと Parasoft コード解析ルールの相関関係を示し、通常のほとんどの使用に適しています。

CWE プロファイルを変更してはいけません

デフォルトの CWE プロファイルを変更しないことを強く推奨します。なぜなら、デフォルト プロファイルの変更は監査目的で生成するレポートに影響するからです。

必要に応じて、デフォルト プロファイルの複製を作成し、ソフトウェアの品質とコンプライアンスの目標を達成するために、Parasoft コード解析ルールと CWE ガイドラインの相関関係を変更できます。 

  1. Extension Designer を開き、[プロファイル] タブをクリックします。
  2. CWE Compliance モデルを展開して、いずれかのプロファイルを選択します。 
  3. [プロファイルのエクスポート] をクリックして複製をダウンロードします。 
  4. [プロファイルの追加] をクリックし、名前を入力します。
  5. [確認] をクリックして空のプロファイルを作成します。 
  6. エクスポートしたデフォルト プロファイルの複製の名前を変更し、[プロファイルのインポート] を選択します。 
  7. 複製を選択してアップロードします。
  8. [編集] をクリックして必要な変更を加えます。 
  9. [保存] をクリックします。

CWE KPI プロファイル

Security Compliance Pack に付属する KPI アーティファクトには、次のプロファイルが含まれています。

  • CWE Security Impact - .NET
  • CWE Security Impact - C++
  • CWE Security Impact - Java 

プロファイルは、ビルドの KPI 値を計算するために、メトリクス解析ルールに重みを付けます。 

通常のほとんどの使用にデフォルト プロファイルは適していますが、必要に応じて各メトリクス ルールの重みを変更できます。

  1. Extension Designer を開き、[プロファイル] タブをクリックします。
  2. KPI モデルを展開し、プロファイルを選択します。
  3. [プロファイルのエクスポート] をクリックして複製をダウンロードします。 
  4. [プロファイルの追加] をクリックし、名前を入力します。
  5. [確認] をクリックして空のプロファイルを作成します。 
  6. エクスポートしたデフォルト プロファイルの複製の名前を変更し、[プロファイルのインポート] を選択します。 
  7. 複製を選択してアップロードします。
  8. [編集] をクリックして必要な変更を加えます。 
  9. [保存] をクリックします。
  • No labels