[UX] Design: Adding and editing fine-grained permissions for job tokens
Problem to solve
- Job tokens have excess and overprivileged access
- Lack of API support, relying on long-lived tokens
- Lack of fine-grained control to resources
Customers would like the ability to reduce the permissions of a token to only what's necessary for the job.
Intended users
- Security Engineer
- Security Operations
- Project owners
User experience goal
- Project owners/maintainers can opt-in to fine-grained permissions for job tokens in the project's allowlist
Is this a cross-stage feature?
Cross-group collaboration with grouppipeline security and groupauthentication
Links / references
Design Exploration
We explored two approaches: solution validation can be found in #480756 (closed). This work allowed us to confidently move forward with the inbound allowlist definition in the API/UI.
We then explored ways to incorporate resource permission definition in the existing allowlist:
| Options | Team Feedback |
|---|---|
|
Moving the allowlist creation with permissions into a drawer, additional features:
|
|
|
Simplify the radio button to a toggle: |
|
|
Permission configuration in new page |
|
After feedback and collaboration with grouppipeline security, we opted to use existing UX table with in-line form to define permissions. Prototypes:
- Add permissions to group or project in job token allowlist
- Edit permissions of group or project in job token allowlist
Solution Validation
Are we confident in moving forward with the solution?
Yes - Overall, feedback to the workflow of adding and editing job token permissions is straightforward and easy to use.
Additional learnings:
- The terms used for permission options, default vs fine-grained permissions matched user expectations
- Descriptions below each resource will be valuable to users when selecting permissions
Solution validation results
Final Design and Specs
| Design | Details |
|---|---|
|
Updates to allowlist table: Figma link |
|
|
Updates to add/project form: Figma link Default permissions Fine-grained permissions Fine-grained permissions dropdown |
|
|
Edit permissions: Figma link Default permissions: Fine-grained permissions: Fine-grained permissions dropdown |
|
Next Steps:
- [UX] Design: Onboarding to fine-grained permiss... (#499312) designs for onboarding users to fine-grained permissions
- Work on descriptions for each resource: Description for resources in job token permissions (#500695 - closed)











