aws-deadline / aws-deadline/deadline-cloud-worker-agent

Bug: Queue User should not be allowed to be Admin or the same as the agent user

Open
#488 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
19
Forks
48
Avg merge
17h 48m
Merged PRs (30d)
19

Description

Describe Behaviour

Right now, you can specify an admin queue user, which is a security risk. I accidentally fell into this trap when I accidentally specified the queue user as the agent user by passing it to the --user flag when running the install-deadline-worker command.

Expected Behaviour

You should have to deliberately want to render with admin privileges and accept the security risk before being allowed to do so.

Renders should throw an error if trying to run as an admin user. And if the queue user is the same as the agent user, it should point out that's the root cause of the error. The agent user is always forced to be admin, so the even if you weren't trying to run your render with admin privileges, but misunderstood the --user flag you'd end up setting the agent and queue user to be the same user and running with admin privileges.

Current Behaviour

You just render with a bad security posture because you have admin privileges.

Reproduction Steps

Setup a worker. Use the --user and --grant-required-permissions flags on the queue user when running install-deadline-worker

Possible Solution

Add better warning and error messages to prevent accidentally setting it up this way like I did.

Have a config option that explicitly enables rendering as admin. We can put a comment in the config file that outlines the potential risk.

Package Version

deadline-worker-agent 0.27.4

Language Version

python 3.12

Dependencies

No response

Operating System

Windows

Other information

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how install-deadline-worker handles the --user and --grant-required-permissions flags, then follow the worker's render-user and admin-privilege validation. Done means admin renders require an explicit opt-in, and invalid admin or same-as-agent configurations produce warnings or errors that explain the security risk and root cause.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.