Back to Projects

Dockdock-Go — Security Gatekeeper for Harbor Registries

Multi-layer security scanning system with human approval gates for Harbor container registries. Rust API with Kubernetes orchestration.

Rust Kubernetes Harbor Security DevSecOps
Dockdock-Go — Security Gatekeeper for Harbor Registries
Table des matières

Why

Harbor registries lack mandatory human approval gates and comprehensive security scanning before image admission. Organizations need a centralized system to enforce security policies.

What

Dockdock-Go is a security gatekeeper that enforces explicit requests and human approval before admitting container images to sensitive Harbor projects. It combines vulnerability scanning, static malware detection, and runtime analysis with a centralized approval workflow.

How

Built with Rust (Actix-web, Diesel) for the API backend and Kubernetes Jobs for orchestrating security scans. Integrates with Harbor's API for artifact replication and Trivy for vulnerability scanning. YaraHunter handles malware detection with custom YARA rules. PostgreSQL stores request states and analysis results.

Overview

Dockdock-Go is a security gatekeeper system designed to enforce human approval gates and multi-layer security scanning before container images are admitted into sensitive Harbor registry projects. Built as a Master 1 student project, it demonstrates how to implement defense-in-depth security practices for container supply chains.

Key Features

  • Human approval workflow — Mandatory explicit requests and approval before image admission to production projects
  • Multi-layer security scanning — Combines vulnerability scanning (Trivy), static malware detection (YaraHunter), and runtime analysis
  • Harbor API integration — Seamless integration with Harbor registries for artifact replication and management
  • Centralized decision tracking — PostgreSQL database stores all requests, analysis results, and approval decisions
  • Web interface — Modified Harbor UI with dedicated Dockdock-Go tab for managing admission requests
  • Kubernetes orchestration — Security scans run as isolated Kubernetes Jobs for scalability and isolation

Technical Architecture

The system follows a microservices architecture with:

  • Rust API backend (Actix-web, Diesel ORM) handling business logic and orchestration
  • PostgreSQL database storing request states, analysis results, and security flags
  • Kubernetes Jobs for executing isolated security scans (malware, vulnerabilities)
  • Harbor API integration for artifact replication and vulnerability scanning
  • Angular-based UI modifications extending Harbor’s web interface

Use Cases

  • Security-conscious organizations requiring mandatory approval gates for production container images
  • Compliance requirements needing audit trails for all container admissions
  • Educational projects demonstrating container security best practices
  • DevSecOps workflows integrating security scanning into CI/CD pipelines

Challenges & Lessons Learned

This project taught valuable lessons about:

  • The importance of asynchronous workflows in security pipelines
  • Challenges of patching existing monolithic applications (Harbor UI)
  • Orchestrating multiple security scanning tools with different output formats
  • Balancing automated security checks with human oversight

Read the full technical retrospective for detailed architecture decisions, implementation challenges, and technical debt analysis.

Project Status

Proof-of-Concept — Functional demo completed in 2024. Not maintained for production use.

Team: 4 students | Duration: 9 months | Category: Educational

Technologies & Tools

Commentaires