Traitement parallèle pour les applications Java
L'analyse Java utilise désormais des techniques d'analyse parallèles, ce qui permet de générer plus rapidement les fichiers IRX. Cette approche remaniée de l'analyse met également en mémoire cache les fichiers de classe convertis au format d'analyse sur le système client, analysant la copie stockée au lieu de la régénérer à chaque fois que l'analyse est effectuée.
Le traitement parallèle découpe le code en morceaux plus petits et plus facilement analysables. Ces plus petits morceaux de code peuvent être examinés en même temps. Cela nécessite non seulement moins d'espace mémoire et d'espace UC, mais les résultats sont aussi disponibles plus rapidement.
Propriétés générales du traitement parallèle
appscan prepare
, ajoutez -D
au début de la propriété.Propriété | Valeurs | Description |
---|---|---|
USE_SLICER |
true|false Par défaut : true |
La valeur true active l'utilisation du traitement parallèle. |
IRX_MINOR_CACHE_HOME |
$user.home/.appscan/irx_cache |
Spécifie l'emplacement du cache des fichiers. Les lecteurs UNC, les unités mappées Windows ou les montages Linux peuvent être utilisés ici. |
DISABLE_CACHE |
true Valeur par défaut : non définie |
Empêche l'utilisation du cache. Cela forcera la réexécution du processus de génération IR sur chaque fichier de classe, même s'il existe une entrée de cache. |
Exemples
$user.home/.appscan/irx_cache
:- CLI
$ appscan.sh prepare
- Gradle
gradle appscan-prepare
- Maven
mvn com.hcl.security:appscan-maven-plugin:prepare
- CLI
$ appscan.sh prepare -DDISABLE_CACHE=true
- Gradle
gradle appscan-prepare -DDISABLE_CACHE=true
- Maven
mvn com.hcl.security:appscan-maven-plugin:prepare -DDISABLE_CACHE=true
s:
dans le répertoire irx_cache
:- CLI
> appscan.bat prepare -DIRX_MINOR_CACHE_HOME=s:\\irx_cache
- Gradle
gradle appscan-prepare -DIRX_MINOR_CACHE_HOME=s:\\irx_cache
- Maven
mvn com.hcl.security:appscan-maven-plugin:prepare -DIRX_MINOR_CACHE_HOME=s:\\irx_cache
- CLI
$ appscan.sh prepare -DUSE_SLICER=fals
- Gradle
gradle appscan-prepare -DUSE_SLICER=fals
- Maven
mvn com.hcl.security:appscan-maven-plugin:prepare -DUSE_SLICER=fals
Journaux
- scan.manifest : Ce fichier est généré dans le cadre de la génération du fichier IRX et répertorie tous les éléments qui ont été découverts. Il fournit une liste des langues et artéfacts qui ont été examinés pour chacune des langues. Les artéfacts tiers sont exclus par défaut.
- scan.mainfest.json : Contient les mêmes informations que le fichier scan.manifest file au format JSON pour une analyse syntaxique plus facile.
-
StaticAnalyzer-Errors.slice.log Fournit les erreurs qui auraient pu se produire dans une tranche si le fichier IRX n'est pas généré avec succès. Il répertorie le numéro de tranche et le message d'erreur correspondant à cette tranche. Si ce fichier est vide, il n'y a alors aucun message d'erreur associé à la génération du fichier IRX dans les tranches.
- stage.stats.json : Décrivez les packages analysés pour Java, les fichiers au format
zip
transférés (ear
,jar
,war
,rar
) et l'empreinte mémoire de chacun de ces fichiers au formatzip
les plus volumineux à extraire. - slice.prepare.stats.json : Contient chaque fichier de classe et son compartiment associé, et indique s'il a été extrait ou non du cache. S'il n'est pas extrait du cache, le temps qu'il a fallu pour générer le fichier IPVA de la tranche.
Compartiments
Chaque compartiment dispose d'un chiffre comme nom de dossier sous le répertoire des tranches. Dans le répertoire des journaux de chaque tranche dans le répertoire slices/<language>/<bucket_number>/logs, un fichier scan.manifest
répertorie les artefacts et les langages présents dans ce compartiment.
Le fichier slice.prepare.stats.json
contient également des informations d'association de compartiment pour chaque fichier de classe analysé.
Résultats
Le nouveau mécanisme de tranche de programme modifie certaines signatures de constatation pour qu'elles soient légèrement différentes de ce qu'elles étaient auparavant. Cela peut entraîner la production d'une constatation similaire à une constatation déjà triée. Cela ne se produit que la première fois que l'analyse de tranche de programme est exécutée sur une application qui a déjà des constatations provenant du mécanisme d'examen précédent. Il se peut également que certains résultats soient considérés comme nouveaux et nécessitent un triage comme auparavant.