IQSS / IQSS/dataverse

dsContributor shows up in list role assignments result but not in user interface

Open
#8,929 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature: Permissions Type: Bug User Role: Curator
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

What steps does it take to reproduce the issue?
This assumes your dataverse collection is configured to allow all authenticated users to create datasets.

Choose a dataset and retrieve the role assignments on that dataset through the API. Note that the following role assignment is included:

 {
   "id": 12345,
   "assignee": ":authenticated-users",
   "roleId": 5,
   "_roleAlias": "dsContributor",
   "definitionPointId": 1
 }

Note also that the only permission in this role is AddDataset, which is only useful for dataverse collections, as you cannot create a dataset within a dataset.

Now for comparison:

  1. Log in as admin
  2. Open the same dataset
  3. Go to Edit Dataset -> Permissions -> Dataset
  4. The role assignment ":authenticated-users" -> "dsContributor" is not included
  • What did you expect to happen?
    I should expect the role assignment to be included in both the API result and the UI or in neither. Since the role assignment has no practical effect on the dataset that inherits it, it is probably best not to include it.

Which version of Dataverse are you using?
5.10.1

Any related open or closed issues to this bug report?
N/a

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 with the dataset role-assignment API response and the Edit Dataset → Permissions → Dataset UI described in the reproduction steps. Compare how the dsContributor assignment for :authenticated-users is handled in each path, then confirm the chosen behavior with a regression test covering the API result and UI list.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, authorization
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.