Dataverse linking still requires superuser despite introduction of LinkDataverse permission
Nobody has claimed this yet.
- 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?
- Upgrade a Dataverse installation to version 6.8.
- Create two dataverses (Dataverse A and Dataverse B).
- Create or identify a non-superuser account.
- Grant that user the LinkDataverse permission (or a role containing it) on both dataverses.
- Log in as that non-superuser.
- Attempt to link Dataverse A to Dataverse B using either: the UI, or the Dataverse linking API.
- When does this issue occur?
When a non-superuser attempts to link one dataverse to another, even though they have been explicitly granted the LinkDataverse permission.
- Which page(s) does it occurs on?
The Dataverse page where the “Link Dataverse” action would normally be available in the UI
The API endpoint used for linking dataverses
- What happens?
In the UI, the “Link Dataverse” button does not appear for non-superusers.
In the API, the linking request fails with an authorization error.
The same operation succeeds when performed by a superuser.
- To whom does it occur (all users, curators, superusers)?
Occurs for non-superusers (including users with curator/admin roles that include the LinkDataverse permission).
Does not occur for superusers.
- What did you expect to happen?
Users who have been granted the LinkDataverse permission in both the source and target dataverses should be able to link dataverses via the UI and API, without requiring superuser status—consistent with how dataset linking works.
Which version of Dataverse are you using?
Dataverse 6.8 (observed after upgrading from 6.4 to 6.8)
Any related open or closed issues to this bug report?
PR #4648 – Added linking APIs with superuser-only restriction (Dataverse 4.9)
Issue #4410 – Led to removal of superuser requirement for dataset linking
PR #5014 – Removed superuser-only requirement for dataset linking (Dataverse 4.9.3)
PR #11691 – Introduced separate linking permissions (including LinkDataverse), but did not remove superuser requirement for dataverse linking
Are you thinking about creating a pull request for this issue?
No fix is currently planned by the team.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the missing UI action and authorization failure through the Dataverse linking API in a 6.8 installation. Trace the LinkDataverse permission checks for both source and target dataverses, then verify that a permitted non-superuser can link through both UI and API while unauthorized users remain blocked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api, authorization, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100