4: Users, roles and permissions

The Dashboard is multi-user. Access is controlled by role and by two scoping axes: which servers and which modules a user may use.

4.1: Roles

prop isAdmin => $this->role === 'admin'

4.2: Scoping

A non-admin user carries two allow-lists:

Scope Controls
allowed servers which hosts in the fleet they can act on
allowed modules which Dashboard modules they can open

The navigation and every route honor both, so a user scoped to one server and the Notifications module sees exactly that and nothing else.

4.3: Authentication

Login uses bcrypt password hashing, and the fleet can verify a user against a shared secret so one identity works across sub-dashboards. Because auth is a resource, the same gating is available to any Phlo app that needs it, not just the Dashboard.

我们使用必要的cookie来使该网站正常工作。在您的许可下,我们还使用分析工具来改善网站。