online-mode=false. On its own that is an open door: anyone who can reach a shard directly can connect as any username, including one with operator rights, because nothing is checking Mojang any more.
Two things have to be true. Neither is specific to Atlas; this is the standard Velocity setup, written down because getting it wrong produces no error.
1. Modern forwarding, with the secret on both sides
2. The shards must not be reachable from the internet
Forwarding is the lock; not exposing the door is the belt. Only the proxy port should be public. On a VPS that is a firewall rule per shard. On a panel host you often cannot close the port, because every server you rent gets its own public address. Then the forwarding secret is doing all of the work. The proxy itself keepsonline-mode = true. That is what authenticates players in the first place.
Permissions
Reading and rewriting are separate on purpose. Somebody who should be able to see who broke a wall is not automatically somebody who should be able to rewrite the world.
Database credentials
MongoDB and Redis are the whole network’s state. Anyone who can write to them can move players, change who owns a region, and read every inventory.Authenticate both
Put credentials in the URIs. An unauthenticated Redis on a shared host is reachable by every other tenant on it.
One Redis per network
Keys are not namespaced by tenant. Two networks on one Redis overwrite each other’s routing, and the symptom is misrouted players rather than an error.