Independent product studio · Swedenhello@karelialabs.com

Pterodactyl 2.0 extension Live

Staff Access for Pterodactyl 2.0: look at a customer's server with their consent

When a customer opens a ticket, your staff usually need to look at the server: read the console, check a config, restart it. Today that means asking for the customer's password, or an administrator opening the server with full power and no record of who looked or why.

Available on Gumroad.

Requires
Pterodactyl Panel 2.0, with the panel's scheduler and queue worker
Tested with
Pterodactyl 2.0.0-beta.2 (PHP 8.4): 128 browser and API checks and 7 unit tests (version 1.0.1)
Package
Official extension (.pteroext). No panel file is edited.
Price
$9.99, one panel
A walkthrough built from real screenshots on Pterodactyl Panel 2.0.0-beta.2. The video loads from YouTube only when you press play.

Staff Access gives your staff a proper way in. A staff member asks for access to one server, with a reason, a time limit and the permissions they need. The server owner sees the request in their panel and decides. Once approved, the staff member is a normal subuser with exactly those permissions, until the time runs out or the owner revokes it.

What Staff Access for Pterodactyl 2.0 does

Staff request access

From a Staff Access page in their account menu: server ID, reason, how long (up to the maximum you set) and the permissions, picked from Pterodactyl's own subuser permission list.

The owner decides

A notice above the server list and a Staff Access tab on the server show who is asking, their email, the reason, the duration and the permissions. The owner can untick permissions before approving, or deny.

Exactly those permissions

On approval the staff member becomes a subuser with the approved permissions. Subuser management (user.*) and database passwords can never be requested, so no added user or seen password outlives the access.

Access ends on its own

The panel's scheduler removes the subuser within a minute of the end time, through the panel's own subuser removal, which also tells the node to drop SFTP and console sessions. The owner can revoke at any time.

Everything is logged

Request, cancellation, approval, denial, revocation and expiry go to the server's activity log as readable sentences, with the reason and permissions in the entry details.

Admins stay in control

Choose whether root administrators count as staff, add other staff accounts, set the maximum length and see every waiting request and running grant in one list. Administrators who do not own a server cannot approve for its owner.

How it works

  1. Install. Copy staff-access.pteroext to the panel server and run php artisan p:extension:install staff-access.pteroext --enable, then chown -R www-data:www-data extensions public/assets/extensions (use your web user).
  2. Open the admin page. Reload the panel. Admin → Staff Access appears.
  3. Configure. Root administrators as staff (on by default), the maximum access length (24 hours by default, up to 720) and your staff accounts, added by email or username.

Screenshots

Staff Access for Pterodactyl 2.0: the server owner sees who is asking, why and for which permissions
The owner sees who is asking, why and for what
Staff Access for Pterodactyl 2.0: waiting requests shown above the owner's server list
Waiting requests show above the server list
Staff Access for Pterodactyl 2.0: a staff member asks for the permissions and the time they need
Staff ask for the permissions and time they need
Staff Access for Pterodactyl 2.0: access ends at expiry, or at once with Revoke
Access ends at expiry, or now with Revoke
Staff Access for Pterodactyl 2.0: every step in the server's activity log
Every step is in the activity log
Staff Access for Pterodactyl 2.0: the admin page, with who counts as staff and the longest access
Admins choose who counts as staff

Pricing

$9.99One-time purchase

One Pterodactyl panel installation; a test or staging copy is included. Updates within version 1.x. The source is readable.

Good to know

  • For Pterodactyl 2.0 only. For Pterodactyl 1.x there is Staff Access for Blueprint.
  • Tested on Pterodactyl 2.0.0-beta.2 with a stand-in Wings that records the calls the panel makes. A real Wings, other 2.0 versions, mobile layouts, browsers other than Edge and languages other than English are untested.
  • The six activity sentences are added to the panel's activity translation group through Laravel's translation loader. If a future panel version reads them differently, the entries show as raw keys and everything else keeps working.
  • Access ends only while the extension is enabled. Run php artisan staff-access:revoke-all before you disable it.

FAQ

Can staff give themselves more than the owner approved?

No. They get exactly the approved permissions. Subuser management and database passwords are never grantable, so they cannot add other users, raise their own access or keep a password after access ends. Schedules they create keep running after it ends; the owner can delete them on the Schedules page.

What if the owner changes their mind?

Revoke removes the staff member from the server immediately.

Do administrators still have their usual access?

Yes, nothing in Pterodactyl is changed. Staff Access adds a way in that has the customer's consent and a record.

Where is the data?

In your panel database (two tables) and the server activity log. Nothing is sent anywhere.

Related tools

More from Karelia Labs

Updated

Staff Access for Pterodactyl 2.0Buy on Gumroad ($9.99) →