Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Proofpoint Browser Isolation secures the web browsing and email activities of your users. It uses cloud-based remote browser isolation to allow your people to access websites and their personal and corporate email freely, without exposing your organization to malware and data loss.

Devo collector features

Feature

Details

Allow parallel downloading (multipod)

not allowed

Running environments

  • collector server

  • on-premise

Populated Devo events

table

Flattening preprocessing

  • no

Allowed source events obfuscation

  • yes

Data sources

Data source

Description

API endpoint

Collector service name

Devo table

Available from release

Browser and email isolation reports

Browser and email isolation report events

https://proofpointisolation.com/api/v2/reporting/usage-data/

browser_and_email_isolation

tap.proofpoint.isolation.browser_and_email

v1.0.0

URL isolation reports

URL isolation report events

https://urlisolation.com/api/v2/reporting/usage-data/

url_isolation

tap.proofpoint.isolation.url_isolation

v1.0.0

For more information on how the events are parsed, visit our page.

Vendor setup

Minimum configuration required for basic pulling

...

Info

This minimum configuration refers exclusively to those specific parameters of this integration. There are more required parameters related to the generic behavior of the collector. Check setting sections for details.

Setting

Details

api_key

API key

Steps

Action

Steps

Obtain API key

  1. Navigate to Product SettingsReporting API.

  2. The API key can be generated and found in the Isolation Reporting API Console's main viewing panel under Reporting API Key.

Assigning necessary permissions

...

Rw ui tabs macro
Rw tab
titleOn-premise collector

This data collector can be run in any machine that has the Docker service available because it should be executed as a docker container. The following sections explain how to prepare all the required setup for having the data collector running.

Structure

The following directory structure should be created for being used when running the collector:

Code Block
<any_directory>
└── devo-collectors/
    └── <product_name>/
        ├── certs/
        │   ├── chain.crt
        │   ├── <your_domain>.key
        │   └── <your_domain>.crt
        ├── state/
        └── config/ 
            └── config.yaml 
Note

Replace <product_name> with the proper value.

Devo credentials

In Devo, go to Administration → Credentials → X.509 Certificates, download the Certificate, Private key and Chain CA and save them in <product_name>/certs/. Learn more about security credentials in Devo here.

Note

Replace <product_name> with the proper value.

Editing the config.yaml file

Code Block
globals:
  debug: <debug_status>
  id: not_used
  name: proofpoint_isolation_collector
  persistence:
    type: filesystem
    config:
      directory_name: state
outputs:
  devo_us_1:
    type: devo_platform
    config:
      address: <devo_address>
      port: 443
      type: SSL
      chain: <chain_filename>
      cert: <cert_filename>
      key: <key_filename>
inputs:
  proofpoint_isolation:
    id: <input_id_value>
    enabled: true
    credentials:
      api_key: <api_key_value>
    services:
      browser_and_email_isolation:
        override_tag: <override_tag_value>
        start_time_in_utc: <start_time_in_utc_value>
        obfuscation_data: [<obfuscation_data_values>]
        override_query_window_offset_in_minutes: <override_query_window_offset_in_minutes_value>
      url_isolation:
        override_tag: <override_tag_value>
        start_time_in_utc: <start_time_in_utc_value>
        obfuscation_data: [<obfuscation_data_values>]
        override_query_window_offset_in_minutes: <override_query_window_offset_in_minutes_value>
Info

All defined service entities will be executed by the collector. If you do not want to run any of them, just remove the entity from the services object.

Replace the placeholders with your required values following the description table below:

Parameter

Data type

Type

Value Range / Format

Details

debug_status

bool

mandatory

true / false

If the value is true, the debug logging traces will be enabled when running the collector. If the value is false, only the info, warning, and error logging levels will be printed.

devo_address

str

mandatory

collector-us.devo.io 

collector-eu.devo.io 

Use this parameter to identify the Devo Cloud where the events will be sent.

chain_filename

str

mandatory

minimum length: 4

maximum length: 20

Use this parameter to identify the chain.cert file downloaded from your Devo domain. Usually this file's name is: chain.crt.

cert_filename

str

mandatory

minimum length: 4

maximum length: 20

Use this parameter to identify the file.cert downloaded from your Devo domain.

key_filename

str

mandatory

minimum length: 4

maximum length: 20

Use this parameter to identify the file.key downloaded from your Devo domain.

input_id_value

int

Mandatory

Minimum length: 5

Maximum length: 15

Use this param to give a unique id to this input service.

Note

This parameter is used to build the persistence address. Do not use the same value for multiple collectors. It could cause a collision.

api_key_value

str

mandatory

Minimum length: 1

The API key obtained from the Proofpoint Isolation portal.

override_tag_value

str

optional

Devo tag-friendly string (no special characters, spaces, etc.)

An optional tag that allows users to override the service default tags.

Info

This parameter can be removed or commented.

start_time_in_utc_value

str

optional

UTC datetime string having datetime string format %-Y-%m-%d %H-%M-%S (e.g., “2000-01-01 00:00:01”)

This configuration allows you to set a custom date as the beginning of the period to download. This allows downloading historical data (one month back for example) before downloading new events.

Info

This parameter should be removed if it is not used.

obfuscation_data_values

array<object>

optional

The objects in the array look like this:

Code Block
obfuscation_data:
  - name:
  - credentials
  - "*"
value: "**********"

Each object represents the necessary configuration to obfuscate messages before these are sent to Devo.

Info

This parameter can be removed or commented.

Download the Docker image

The collector should be deployed as a Docker container. Download the Docker image of the collector as a .tgz file by clicking the link in the following table:

Collector Docker image

SHA-256 hash

collector-proofpoint_isolation_if-docker-image-1.01.01

d8a7d12bc23189c5e83d11f110399ab283ce91768ff57c0b66706446c92b5ede732ce0edfd7c5855810227ee61f936e773d847ea78449810ff49b9bbde216d39

Use the following command to add the Docker image to the system:

Code Block
gunzip -c <image_file>-<version>.tgz | docker load
Note

Once the Docker image is imported, it will show the real name of the Docker image (including version info). Replace <image_file> and <version> with a proper value.

The Docker image can be deployed on the following services:

Docker

Execute the following command on the root directory <any_directory>/devo-collectors/<product_name>/

Code Block
docker run 
--name collector-<product_name> 
--volume $PWD/certs:/devo-collector/certs 
--volume $PWD/config:/devo-collector/config 
--volume $PWD/state:/devo-collector/state 
--env CONFIG_FILE=config.yaml 
--rm 
--interactive 
--tty 
<image_name>:<version>
Note

Replace <product_name>, <image_name> and <version> with the proper values.

Docker Compose

The following Docker Compose file can be used to execute the Docker container. It must be created in the <any_directory>/devo-collectors/<product_name>/ directory.

Code Block
version: '3'
services:
  collector-<product_name>:
    image: <image_name>:${IMAGE_VERSION:-latest}
    container_name: collector-<product_name>
    volumes:
      - ./certs:/devo-collector/certs
      - ./config:/devo-collector/config
      - ./credentials:/devo-collector/credentials
      - ./state:/devo-collector/state
    environment:
      - CONFIG_FILE=${CONFIG_FILE:-config.yaml}

To run the container using docker-compose, execute the following command from the <any_directory>/devo-collectors/<product_name>/ directory:

Code Block
IMAGE_VERSION=<version> docker-compose up -d
Note

Replace <product_name>, <image_name> and <version> with the proper values.

Rw tab
titleCloud collector

We use a piece of software called Collector Server to host and manage all our available collectors. If you want us to host this collector for you, get in touch with us and we will guide you through the configuration.

...

Expand
titleCheck memory usage

To check the memory usage of this collector, look for the following log records in the collector which are displayed every 5 minutes by default, always after running the memory-free process.

  • The used memory is displayed by running processes and the sum of both values will give the total used memory for the collector.

  • The global pressure of the available memory is displayed in the global value.

  • All metrics (Global, RSS, VMS) include the value before freeing and after previous -> after freeing memory

Code Block
INFO InputProcess::MainThread -> [GC] global: 20.4% -> 20.4%, process: RSS(34.50MiB -> 34.08MiB), VMS(410.52MiB -> 410.02MiB)
INFO OutputProcess::MainThread -> [GC] global: 20.4% -> 20.4%, process: RSS(28.41MiB -> 28.41MiB), VMS(705.28MiB -> 705.28MiB)

Change log

...

Release

Released on

Release type

Details

Recommendations

v1.

0

1.

0

1

Status
colourRed
titlebug fixing

Bug fixing

  • Controlled range values in user schemas for variable override_query_window_offset_in_minutes

Update

v1.1.0

Status
colourYellow
titleNEW FEATURE

New feature

  • Added new variable override_query_window_offset_in_minutes to ensure the events are fully recorded in the API before we try to fetch them

Improvements

  • Upgraded DCSDK and internal modules to the latest version

Update

v1.0.0

Status
colourGreen
titleINITIAL RELEASE

Initial release

-