Skip to content

[compliance] Read-only effective-configuration endpoint for operators #118

Description

@perki

Tracked in the compliance matrix as CONFIG-EFFECTIVE-EXPOSURE.

Category: feature (operator visibility / compliance evidence)
Affects: open-pryv.io — a new read-only admin route plus the operator admin panel.
Compliance-matrix consumers: gdpr.Art.30(1)(g), gdpr.Art.32, gdpr.Art.35,
iso-27001.A.8.9, hipaa-security.164.308(a)(8) — see
compliance-matrix/proposals/config-effective-exposure.md for the per-row tier shifts.

Problem

The effective configuration of a running core is only readable by logging into the
machine and reconstructing the merge of the YAML layers by hand. That makes routine
compliance work harder than it should be:

  • a processing-activity record has to describe the technical security measures in
    force, and there is no way to emit them,
  • an impact assessment has to inventory deployed safeguards, and today that inventory
    is assembled manually and goes stale immediately,
  • an operator cannot cheaply confirm that two cores in the same cluster are actually
    configured the same way.

Proposed work

A read-only, per-core admin endpoint returning the merged effective configuration,
including the key families that exist only in YAML, so that reading deployment
safeguards no longer requires shell access to the host.

  • Secrets are redacted, driven by an explicit secret-key list plus a schema
    annotation marking a key as secret, rather than by ad-hoc name matching.
  • A digest mode returns a hash instead of the document, so cross-core drift can be
    detected with a cheap comparison.
  • The admin panel surfaces the same data as a Configuration view.

Why it is tracked as compliance-relevant

The endpoint turns several rows that currently rest on operator awareness into rows
that can cite a machine-readable artefact. It also unlocks cross-core drift detection
and post-incident reconstruction of what a core was running at a given time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions