Custom Scanner: odata-edc-scanner
Odata scanner for EDC
Notice
The main branch is since 06.06.2022 set to v2 branch as v2 is the main supported Odata version.
Overview
✅ (supported) 🚧 (on-going) 🔜 (plan) 🚫 (backlog)
-
V2 Objects ✅ (see v2 and main branch)
- ✅ basic authentication
- ✅ entity type
- ✅ key
- ✅ property
- ✅ navigation property
- ✅ association + navigation property
- ✅ function import
- ✅ custom attributes
-
V3 Objects 🚫
-
V4 Objects 🚧 (see v4 branch)
- 🚫 basic authentication
- ✅ entity type
- ✅ key
- ✅ property
- ✅ navigation property
- 🚫 association + navigation property
- 🚫 function import
- 🚫 custom attriburtes
-
Feature
- ✅ metadata
- ✅ lineage
- ✅ profiling (configurable + filter) + data domain discovery
⚠️ currently only basic authentication supported by v2 or main branch
-
Screenshot (example of https://services.odata.org/V2/Northwind/Northwind.svc)
Screenshot 1 | Screenshot 2 |
---|---|
Usage
Import model
- Download the model.zip file from the latest release: https://github.com/cic1988/odata-edc-scanner/releases
- Import this model in EDC admin panel
Initial setup
Option One: if running the build binary:
- Download the binary files from the latest release (currently CentOS/Redhat and OSX are supported): https://github.com/cic1988/odata-edc-scanner/releases
- Unpack the zip file in a target folder
chmod u+x odata-edc-scanner
cp config.ini.sample config.ini
- Edit the config.ini with required information (see comment in the file)
- Run the command
./odata-edc-scanner -f
Option Two: if running the python source code:
- Clone this repository via
git clone https://github.com/cic1988/odata-edc-scanner.git
- (optional)
yum install python3-devel -y
cd odata-edc-scanner
python3 -m venv .
source bin/activate
pip install --upgrade pip
pip install -r requirements.txt
cp config.ini.sample config.ini
- Edit the config.ini with required information (see comment in the file)
chmod u+x main.py
Generate the needed files manually (if you want to run scanner off-EDC):
- Run
./main.py -f
- Upload the metadata.zip to the scanner configuration
- Upload the ProfileableClassTypes.csv to the field
Classes enabled for Profiling
- (optional - when profiling enabled) Point the SFTP location and login to the folder, where the script has created the files
Example configuration in EDC (if you want to automate scanning in EDC):
Other standard scanner configurations (data domains, etc.) are similar here. Then run the job.