DependencyTrack / DependencyTrack/dependency-track

Portfolio access control doesn't work when a user is member of different teams with different ACL's/projects

Open
#5,295 1 comment 0 reactions 0 assignees View on GitHub
access control defect size/XL
Dominant language
Java
Stars
4.2k
Forks
811
Avg merge
8h 39m
Merged PRs (30d)
237

Description

### Current Behavior

I wanted to give user "write" access to a limited set of projects and view access to all the other projects in dependency track. Therefore I created 2 teams. One (teamA) with the permissions allowing to update attributes of projects/vulnerabilities and one (team B) with view only permissions.

In the Portolio Access Control tab, I assigned a limited set of projects to teamA and the remainder of the projects to teamB.

I've made a user member of teamA and teamB.

The user can modify attributes of all the projects now (e.g., vulnerability analysis data)

### Steps to Reproduce

1. Create teamA with permissions PORTFOLIO_MANAGEMENT, VULNERABILITY_ANALYSIS and VULNERABILITY_MANAGEMENT
2. Create team B with all VIEW* permissions
3. Assign teamA to projectA and team B to projectB and projectC
4. Assign a user to team A and team B

The user is able to update vulnerability attributes (e.g., analysis data) of project B and C

### Expected Behavior

I would have expected that it would refuse updates of vulnerability analsysis data of project B and C

### Dependency-Track Version

4.13.3

### Dependency-Track Distribution

Container Image

### Database Server

PostgreSQL

### Database Server Version

_No response_

### Browser

N/A

### Checklist

- [x] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/dependency-track/blob/master/CONTRIBUTING.md#filing-issues)
- [x] I have checked the [existing issues](https://github.com/DependencyTrack/dependency-track/issues) for whether this defect was already reported

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.