Skip to content

Create API Endpoint to Bulk Revoke Publishers #10109

@JoeTot

Description

@JoeTot

Overview

Description

Currently, revoking a malicious publisher is a purely manual process executed through the Open VSX Admin UI. During coordinated mass malware attacks, this manual workflow creates a severe bottleneck, increasing the Mean Time to Remediate (MTTR).

We need a secure, scriptable API endpoint to programmatically revoke publishers in bulk. Additionally, this endpoint must trigger an updated core revocation logic that completely severs the relationship between the revoked publisher and its claimed namespace(s).

Acceptance Criteria

  • Endpoint Creation: Implement a new REST endpoint (e.g., POST /api/admin/publishers/revoke or DELETE /api/admin/publishers).
  • Bulk Processing: The endpoint must accept a JSON payload containing an array of GitHub IDs and/or Publisher IDs to process in a single request.
  • Namespace Severance: The revocation logic triggered by this endpoint must delete the mapping/association between the revoked publisher and any namespaces it owns.
  • Security: The endpoint must be secured with strict Admin-only authorization, requiring an admin-scoped access token.
  • Audit Logging: Every call to this endpoint must write to the audit log, capturing:
    • Timestamp
    • Executing Admin/Service Account ID
    • List of target IDs
    • Action reason (required in payload)
  • Response Handling: Return a structured response indicating which IDs were successfully revoked and which failed (e.g., 404 Not Found).

cc @kineticsquid

Metadata

Metadata

Assignees

Labels

team:software-devIssues that requires support from the Eclipse Foundation software-dev team

Type

No type

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions