PAMOLA User Guide
This guide explains how to use PAMOLA for dataset management, privacy-enhancing workflows, attack simulations, and metadata extraction. PAMOLA is designed for Data Protection Officers (DPOs), AI practitioners, and compliance teams to ensure secure and privacy-aware data processing.
Getting Started with PAMOLA
Accessing the Interface
PAMOLA provides a web-based UI available at http://localhost:9002 (or a custom deployment URL).
The command-line API is also available for automation.
Logging In
Admin users authenticate through Keycloak.
Workspace members use assigned credentials.
Managing Datasets
PAMOLA integrates with DataHub, allowing version-controlled dataset management.
Step 1: Register a Dataset
Via UI: Navigate to “Datasets” → “Register Dataset”
Via API:
curl -X POST "http://localhost:9002/api/datasets/register" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{"dataset_name": "customer_transactions", "owner": "fraud_team"}'
**Step 2: Explore Metadata**
View dataset lineage, transformations, and access logs.
curl -X GET "http://localhost:9002/api/datasets/metadata?dataset_name=customer_transactions"
**Step 3: Manage Access Control**
Assign users roles (Admin, Editor, Viewer).
curl -X POST "http://localhost:9002/api/datasets/permissions" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"dataset_name": "customer_transactions", "user": "analyst1", "role": "editor"}'
Creating Privacy Projects and Pipelines
PAMOLA supports privacy projects to manage anonymization, synthetic data, and privacy risk analysis.
Step 1: Create a Privacy Project
Via UI: Navigate to “Projects” → “New Project”
Via API:
curl -X POST "http://localhost:9002/api/projects/create" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"project_name": "Synthetic Data Generation", "owner": "privacy_team"}'
**Step 2: Define a Pipeline**
A pipeline consists of preprocessing, anonymization, privacy analysis, and evaluation.
curl -X POST "http://localhost:9002/api/pipelines/create" \
-H "Authorization: Bearer <TOKEN>" \
-d '{
"pipeline_name": "Anonymization Pipeline",
"stages": ["data_cleaning", "k_anonymity", "risk_evaluation"]
}'
**Step 3: Execute the Pipeline**
curl -X POST "http://localhost:9002/api/pipelines/run" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"pipeline_name": "Anonymization Pipeline", "dataset": "customer_transactions"}'
Evaluating Data Privacy & Generating Metrics
PAMOLA includes privacy and utility metrics to validate transformations.
Step 1: Compute Privacy Metrics
k-Anonymity, l-Diversity, t-Closeness
Differential Privacy Noise Analysis
Privacy Budget Monitoring
curl -X GET "http://localhost:9002/api/metrics/privacy?dataset_name=customer_transactions"
**Step 2: Compute Utility Metrics**
Statistical Distance (KS-Test, Wasserstein, Chi-squared)
Regression & Classification Impact (R², MSE, AUROC)
curl -X GET "http://localhost:9002/api/metrics/utility?dataset_name=customer_transactions"
Running Attack Simulations
PAMOLA provides attack modeling to test privacy risks.
Step 1: Membership Inference Attack (MIA)
Tests whether a model has memorized specific records.
curl -X POST "http://localhost:9002/api/attacks/mia" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"dataset_name": "customer_transactions"}'
**Step 2: Linkage Attack**
Tests re-identification by linking anonymized data with external sources.
curl -X POST "http://localhost:9002/api/attacks/linkage" \
-H "Authorization: Bearer <TOKEN>" \
-d '{"dataset_name": "customer_transactions"}'
**Step 3: Model Inversion Attack**
Attempts to reconstruct data from AI models.
curl -X POST "http://localhost:9002/api/attacks/model_inversion" \
-H "Authorization: Bearer <TOKEN}" \
-d '{"model_name": "fraud_detection_model"}'
Extracting Metadata & Reports
PAMOLA allows metadata tracking and compliance reporting.
Step 1: Export Dataset Metadata
curl -X GET "http://localhost:9002/api/datasets/export_metadata?dataset_name=customer_transactions"
**Step 2: Generate Privacy Reports**
curl -X POST "http://localhost:9002/api/reports/generate" \
-H "Authorization: Bearer <TOKEN}" \
-d '{"report_type": "privacy_audit"}'
Next Steps
📊 To learn about PAMOLA architecture, see Architecture 🔍 For developer integration, visit Developer Guide
To model security risks, check Security Modeling