Multi-Indicator Detector (MID)

FlexNet Code Insight 6.13.1

This analysis technique relies on rules such as MD5-matching and filepath-matching to automatically identify OSS content in the codebase. It creates groups with associated files if all the MID rule conditions are satisfied.This analysis technique is enabled by default.

MID rules are shipped with FlexNet Code Insight and are added to the central database as part of the installation process. User-specified MID rules are unique to each FlexNet Code Insight Scan Server, and it is up to the user to keep them synchronized across all servers in case of a multi-scan server installation. The user-specified MID rules are defined in a Microsoft® Excel® spreadsheet that the system reads each time a workspace is scanned. It is not necessary to bounce the FlexNet Code Insight Scan Server if a change is made to the MID rules spreadsheet. The MID rules spreadsheet can be found at the following location on the FlexNet Code Insight Scan Server:

<CODE_INSIGHT_ROOT_DIR>\6.13.x\config\scanEngine\multi_indicator_detector.xls

Each row in the MID rule spreadsheet represents a single MID rule.

The following columns are used to notify the FlexNet Code Insight Scan engine which component and version (if known) is to be selected for the system group:

Rule Notes—The value entered into this column shows up as the detection evidence value for a system-generated group. It is the explanation as to why a particular group was created. This value is optional.
Component ID—The ID of the component to be associated with the system-generated group. You can look up a component id using the Research page of the FlexNet Code Insight 6.13.x web application. The component ID must exist in the system for the rule to be evaluated; otherwise the rule is skipped. This value is required.
Version ID—The ID of the component version to be associated with the system-generated group. You can look up a component version ID using the Research page of the FlexNet Code Insight 6.13.x web application. The component version ID must exist in the system for the rule to be evaluated; otherwise the rule is skipped. This value is optional.

The following data may be used as criteria for MID rule conditions; at least one condition is required for each MID rule:

File Path Pattern—File name or path to be considered for MID rule analysis; if path criteria are not met, the rule is skipped with no further processing (for example: *.dll).
MD5 Digest—The MD5 digest of the file may be used as the most basic criteria, if the file has the following MD5 digest, then it is component Foo, version #.#. If the MD5 criteria are used, the search term and namespace conditions are not evaluated.
Search Terms—All of the specified search terms must exist in the file for this condition to evaluate to true.
Java Names—All of the specified Java names must exist in the file for this condition to evaluate to true. If a single package name is specified, the rule will match a java source file or class file that belongs to the specified package or package with the specified prefix (for example, com.foo will match any package that starts with com.foo). It will also match an archive file (.jar,.war,.ear,.zip)which contains a file that matches the package name. If multiple names are given, the rule will only match an archive file that contains all the specified packages.