Skip to content

Latest commit

 

History

History
60 lines (38 loc) · 1.67 KB

File metadata and controls

60 lines (38 loc) · 1.67 KB

EasyLibrary Agent Security Notes

The Agent Bridge is optional and must be explicitly enabled. New installs should keep:

agent:
  enabled: false

Enable it only on servers that need network features.

Secret handling

Use a strong shared secret in both PMMP config.yml and Agent config/agent.toml.

Never paste the real secret into logs, docs, bug reports or screenshots. Rotate it if it was exposed.

The Bridge readiness report warns when the secret is empty or still using a default/dev value.

Command dispatch

Remote command dispatch is powerful and should be treated as admin automation, not normal gameplay logic.

Recommended production posture:

agent:
  commands:
    enabled: true
    advanced: false
    debug: false

Keep command dispatch protected with allowlists/blocklists and prefer API-level features for gameplay state.

RPC methods

RPC responders should stay allowlisted. Do not expose a generic method that can execute arbitrary plugin code.

Compute methods

Compute services are intentionally closed:

PHP validates AgentComputeMethods
Agent Go validates [compute].allowed_methods
Agent Go never executes arbitrary code from payloads
payload size is limited by max_payload_bytes
timeouts are bounded

Do not add custom free-form compute method strings to plugin code. Add a named constant and a built-in Agent implementation instead.

Agent console

The Agent Go console is local operator tooling. Avoid printing secrets or complete sensitive payloads by default.

Network exposure

If the Agent is exposed outside a private network, use firewall rules and a strong secret. Prefer private/VPN/internal networking for production.