Files
minecraft-account-manager/design/us-009-velocity-admission.md
T
dmg ebc7c7df17
CI / validate (push) Successful in 5m24s
Release / release (push) Successful in 11m6s
feat(dashboard): refine activity telemetry and maps
2026-08-01 20:28:32 -04:00

2.6 KiB

type, title, description, tags, timestamp, story_id, status
type title description tags timestamp story_id status
User Story Enforce registration at the Velocity proxy Online-mode Java connections are admitted only after a fail-closed account-manager decision.
minecraft
velocity
whitelist
security
2026-08-02T00:12:32Z US-009 verified

User Story

As a registered player, I want the Velocity proxy to recognize my approved Java account, so that I can join while unknown identities are rejected.

Acceptance Criteria

  • The plugin sends request ID, server ID, online-mode UUID, username, IP, and occurrence time.
  • Every request uses a high-entropy per-server bearer credential stored only as a hash by the service.
  • Requests outside the 45-second clock window are rejected.
  • Database-unique request IDs reject cross-instance replay attempts.
  • UUID matching is attempted before username fallback.
  • Username fallback applies only when the stored account has no UUID.
  • Successful fallback backfills UUID and canonical username.
  • Changed usernames are persisted and audited.
  • Registered players are allowed only when their single effective group has access enabled; explicit assignments override the default group.
  • Unknown players, group-disabled players, API failures, malformed responses, and unauthorized requests fail closed with registration guidance.
  • The plugin records the real Velocity connection IP and supports Java Edition online mode only.
  • After admission, Velocity reports PostLoginEvent as best-effort authenticated telemetry without disconnecting an admitted player when reporting fails.
  • Confirmed-connection reports use fresh timestamps and database replay protection.

Implementation

Validation

Related Stories