
Flex Connector
Outline
Overview
The Flex Connector is SAFE's file-based, user-configurable CSV ingestion connector. It allows customers to ingest assets and findings from custom CSV snapshot uploads using configurable column-to-SAFE-field mappings, without building a dedicated vendor connector. This enables organizations to bring data from any source that can export CSV files into the SAFE platform.
How It Works
Each synchronization (sync) performs the following steps:
Upload CSV File: Upload a CSV snapshot containing the data to be imported.
Configure Field Mappings: Map CSV columns to the corresponding SAFE fields using the mapping interface.
Import Data: SAFE validates the mappings and ingests the supported entities into the platform.
| Data Type | Supported Data | Notes / Requirements |
|---|---|---|
| Assets | Device identifiers (Host Name, IP Address, MAC Address, DNS Name, NetBIOS Name, Serial Number, Cloud Unique Identifier), Tags, Operating System & Hardware Metadata, Cloud Identifiers | Any CSV column can be mapped to SAFE asset fields. At least one unique identifier (Host Name, IP Address, or MAC Address, DNS Name, NetBIOS Name, Serial Number, or Cloud Unique Identifier) must be mapped. |
| Vulnerabilities | CVE Findings, Vulnerable Software | Vulnerability information is imported through CSV field mappings. The Flex Connector does not perform live vulnerability scans. |
| Software Inventory | Software Product Name, Software Version | Software records are created based on mapped CSV fields. |
| Compliance Controls | Compliance Control Mappings | Compliance control data can be imported by mapping the corresponding CSV columns to SAFE fields. |
| File Format | CSV | Only CSV files are supported. Maximum supported file size is 1 GB. |
Processing Large Files
The Flex Connector is designed to efficiently process large CSV files, supporting uploads of up to 1 GB.
During data ingestion:
Large files are processed efficiently to ensure reliable performance.
If a synchronization fails part-way, it does not resume. When the sync is run again, SAFE reads the file from the first row.
Configure Flex Connector in SAFE
Follow the steps below to configure a new Flex Connector in SAFE.
Navigate to Integrations.
Click the + button.
Search for Flex Connector and select it.
Configure the following fields:
- Integration Name – Enter a unique name to identify the connector.
- Source Name – Select the source that represents the imported data. This name appears in the Assets and Findings pages.If the source is not listed, select Custom.
- Data Source Type – Select the type of data source from which the CSV was exported.
- File Encoding – Specifies the character encoding of the CSV file. Make sure Unicode (UTF-8) is selected.
- Delimiter – Specifies the character used to separate values in the CSV file. make sure Comma (,) is selected.
Click Next.
Upload the required files:
- CSV File – The data file containing the assets, vulnerabilities, software inventory, or compliance information to be imported.
- Configuration File (Optional) – A previously exported JSON mapping file that automatically applies the saved field mappings.
Configure the field mappings.
- If a configuration file is uploaded, SAFE automatically maps the CSV columns to the corresponding SAFE fields. Review the mappings before proceeding.
- If a configuration file is not available, manually map each CSV column to the appropriate SAFE field.
Click Next to review the configuration.
Click Save. The Flex Connector is now available on the Integrations page.
Run a Flex Connector
Navigate to Integrations.
Select a configured Flex Connector.
Upload a CSV file by dragging it into the upload area or browse and upload a file.
Click Run to start the synchronization.
After the sync completes successfully, SAFE imports the data from the CSV file based on the configured mappings and creates or updates the corresponding Assets, Findings, Software Inventory, and Compliance Controls in the platform.
Supported Fields
Asset Identity (Required)
Host Name
IP Address
MAC Address
DNS Name
NetBIOS Name
Serial Number
Cloud Unique Identifier (URN)
Asset Metadata
Tags
Interface Hostname
Interface IP Address
Interface MAC Address
Platform Name
First Observed Date
Last Observed Date
Findings
Finding Type
Finding Name
Finding Description
Finding State
Finding Severity
Finding First Observed Date
Finding Last Observed Date
Finding Resolution Date
Finding Resolution Due Date
Finding Assessment Type
Finding Solution
Finding Fix Version
Finding Tags
Finding Details
Finding – Affected Software
Affected Software Name
Affected Software Version
Affected Software Kernel Version
Affected Software Architecture
Affected Software Vendor
Affected Software Type
Affected Software Username
Affected Software Install Path
Affected Software Install Time
Affected Software Package
Affected Software Ignored Status
Affected Software Components
Affected Software Details
Finding – Affected Ports
Affected Port Number
Affected Port Protocol
Affected Port Service
Affected Port Details
Hardware and Operating System
OS Name
OS Version
OS Vendor
OS Architecture
OS Release Install Date
OS Kernel
CPU Cores
CPU Model
CPU Manufacturer
Physical Memory (MB)
Physical Memory (Bytes)
Physical Memory (GB)
Chassis Type
BIOS Vendor
BIOS Version
BIOS Release Date
BIOS Manufacturer
SMBIOS Version
SMB v1
SMB v2
SMB v3
Location
City
Address 1
Address 2
Continent
Country
Location Name
Region
State
Ownership
Business Owner
VM Owner
IT Owner
Device Owner
Application Owner
Cloud
Cloud Region
Cloud Asset Type
Cloud Native Asset Type
Cloud Service Provider
Cloud Account ID
Cloud Container Count
Container Image
Image Registry
Image Repository
Image Namespace
Image Name
Image Tag
Image Digest
Patch Information
Patch Install Date
Patch Number
Patch Release Date
Patch Status
Open Ports
Port Number
Port Protocol
Port Service
Software Inventory
Software Product Name
Software Product Version
Software Product Vendor
Software Type
Software Kernel Version
Software Install Path
Software Install Time
Software Username
Software Components
Software Ignored Status
Compliance Controls
Compliance Control Finding Type
Compliance Control ID
Compliance Control Title
Compliance Control Details
Compliance Control Evaluation Result
Compliance Control Category
Compliance Control Criticality
Compliance Control Updated Date
Compliance Control Framework
Compliance Control Created Date
Compliance Control Resolution Date
Compliance Control Resolution Due Date
Compliance Policy
Compliance Policy ID
Compliance Policy Title
Compliance Policy Status
Compliance Policy Evaluation Date
Compliance Technology
Compliance Technology ID
Compliance Technology Name
Compliance Technology Description
Error Codes
The following error codes may appear during a synchronization. Use the descriptions below to identify the cause of the failure and the recommended corrective action.
| Error Code | Description |
|---|---|
| NO_KEY_MAPPING | No asset identifier was mapped. Map at least one of the following fields: Host Name, IP Address, MAC Address, DNS Name, NetBIOS Name, Serial Number, or Cloud Unique Identifier (URN). This error also appears if a network traffic column is mapped; traffic data is not supported for file uploads, so remove that mapping. |
| NO_FILE_PATH | No CSV file was uploaded. Upload a CSV file before starting the synchronization. |
| S3_ACCESS_FAILED | SAFE could not access the uploaded file. Verify that the upload completed successfully and try again. If the issue persists, contact your SAFE administrator or Support. |
| HEADER_EXTRACTION_FAILED | SAFE could not read the CSV header row. Verify that the uploaded file is a valid CSV file and includes column headers. |
| INVALID_FILE_ENCODING | A column header starts with a byte order mark (BOM) character that SAFE could not remove. SAFE removes a BOM at the start of the file automatically, so this means one appears inside the header row (for example, inside a quoted header). Remove that character from the header row, save the file as UTF-8, and upload it again. |
| COLUMN_MISMATCH | One or more mapped columns do not exist in the uploaded CSV file. Review the field mappings and ensure the CSV column names exactly match the configured mappings. |
| FILE_PROCESSING_FAILED | SAFE could not finish processing the uploaded file. Verify that the CSV file is valid and matches the configured field mappings, then run the sync again. The sync restarts from the first row. |
Did this article help?
Let us know by leaving a star rating at the top of this article.
