Skip to main content

Node.jsのサポート対象テクノロジ

このページは、注記で特に記載されていない限り、npmjs.com(npm公式Webサイト)で入手可能な最新バージョンのサポート対象テクノロジや機能を反映しています。

注記

Contrast Node.jsエージェントは、 npmjs.comで非推奨(deprecated)とタグ付けされたモジュールでは機能しない場合があります。非推奨のモジュールは、セキュリティ上のリスクが高く、エージェントの機能に悪影響を及ぼす可能性があります。

また、webpackparcelesbuildなどのバンドラーを使用してサーバサイドのJavaScriptコードをパッケージ化したり圧縮したりするアプリケーションもサポートしません。

言語のバージョン

  • JavaScript ECMAScript 5

  • JavaScript ECMAScript 6

  • ECMAScriptモジュール(ESM)

  • TypeScript

注記

Contrastは、「アクティブLTS」または「メンテナンスLTS」ステータスのNode.jsの偶数番号バージョンをサポートします。

Node.js LTSバージョンは、JavaScript ECMAScript5と6の機能をサポートします。

Contrast Node.jsエージェントは、ESMを使用するアプリケーションで限定的なサポートを提供します。

TypeScriptがサポートされるのは、エージェントがアプリケーションのコンパイル済みエントリポイントを指すように設定されている場合のみです。

Node.js LTS(長期サポート)版

現在、アクティブおよびメンテナンスLTSステータスの全てのバージョン:

  • 12*、14*

  • 16* (エージェントバージョン4.5.0以降のみ)

  • 18 (エージェントバージョン4.25.0以降)

注記

常にアクティブまたはメンテナンスステータスのNode.jsのLTSバージョンを使用してください。

*12 LTS、14 LTS、16 LTSで、Contrastエージェントは機能しますが、それぞれ2022年4月末、2023年4月末、2023年9月11日にEOL(サポート期間終了)になっています。これらのEOLバージョンは、パッチが適用されなくなったため、深刻なセキュリティリスクがあります。また、エージェントのバージョン5.x.xには、Node.jsのバージョン16.13.0以上が必要であることにご注意ください。

Node.jsエージェントは、実験的(Stability: 1)な実装に分類されるNode.jsの機能のサポートを保証しません。また、ネィティブなnetモジュールにエージェントは組み込まれません。この表にあるサポート対象のアプリケーションフレームワークを使用して構築されたHTTP(S)アプリケーションサーバにのみ機能します。

HTTP/2は、Node.js coreのHTTP/2またはspdyライブラリが使用されている場合に、Node.jsエージェントのサポート対象となります。

Contrast Node.jsエージェントでHTTP/2を使用するアプリケーションでは、assess.enable_lazy_tracking: falseを使用するようにエージェントを設定する必要があります。

Node.jsのバージョンステータスは、Node.jsのLTSリリーススケジュールに記載されています。

  • 20 (エージェントバージョン4.33.0以降、エージェントバージョン5.0.0-ベータ.2以降のみ)

エージェントは、--experimental-permissionアクセスを制限して、アプリケーションを実行する機能をサポートしていません。アクセスを制限するとネイティブモジュールが非アクティブになり、権限を減らしてエージェントを組み込むと、すぐにクラッシュすることになります。

パッケージ管理システム(npm)

npmバージョン:

  • 6.13.7以降

  • 7.11.0以降

  • 8.5.5以降

Node.jsエージェントが、Contrast Webインターフェイスに正確にライブラリを報告するためには、これらのnpmバージョンのいずれかにアクセスする必要があります。バージョン7よりも、バージョン6または8を推奨します。

アプリケーションフレームワーク

注記

*これらのライブラリは保守管理者によって非推奨(deprecated)とされており、セキュリティ上のリスクの可能性があります。

データベースドライバとオブジェクト関係マッピング(ORM)

  • DynamoDB(Assessのみ) AWS SDK for JavaScript:2.x、3.x

  • MongoDB 2.2.36*、3.3.0以降、4.x(データベースバージョン3.6、4.x、5.xに対応)

  • MySQL2 2.0.0以降(MySQLデータベースバージョン5.6.51、5.7.x、8.0.xに対応)

  • Mongoose 5.x、6.x

  • MSSQL 6.4.0以降

  • Postgres driver 7.5.0以降、8.x

  • RethinkDBドライバ バージョン2.4.0以降

  • Sequelize 5.x、6.x

  • SQLite3 driver 4.x(データベースバージョン3.26.0以降に対応)

注記

*このバージョンではエージェントはまだ機能しますが、保守管理者によって非推奨(deprecated)とされており、セキュリティ上のリスクの可能性があります。

検証モジュール

テンプレートエンジン

その他のテクノロジ

テストスイート

Node Test Benches(Nodeテストベンチ)

Node.jsエージェントに変更が加えられると、Contrastは一連の自動化テストを実行し、サポート対象のすべてのNodeバージョン内でサポート対象テクノロジでの検出結果を確認します。Node Test Benchesには、Contrastのサポート対象のフレームワークでエージェントを実行するテストが含まれています。エージェントにサードパーティのライブラリサポートが追加されると、モノレポ(Monorepo)内の各フレームワークが更新されます。