DependencyTrack / DependencyTrack/dependency-track
Option to make bom uploads immutable
- Dominant language
- Java
- Stars
- 4.2k
- Forks
- 811
- Avg merge
- 9h 4m
- Merged PRs (30d)
- 229
Description
### Current Behavior
The current permissions set allows for anyone with permission to upload a BOM on a project to overwrite any version. This can easily lead to errors which require the DB to be restored from backup.
### Proposed Behavior
Have a separate upload and modify permission, so that users can be allowed to create new BOM versions but not modify existing ones.
### Checklist
- [x] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/dependency-track/blob/main/CONTRIBUTING.md#filing-issues)
- [x] I have checked the [existing issues](https://github.com/DependencyTrack/dependency-track/issues) for whether this enhancement was already requested
Contributor guide
Research direction
Start by tracing the existing project BOM upload permission and the entry point that permits overwriting an existing version. Identify where permission checks and upload-versus-modify behavior are defined, then add coverage for creating a new BOM versus changing an existing one. Done means upload-only users can create new versions but cannot modify existing BOMs, while appropriate permissions preserve current behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- authorization, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100