owncloud / owncloud/ocis

Sharing NG

Open
#6,993 10 comments 0 reactions 0 assignees View on GitHub
Category:Enhancement Platform:Android Platform:Desktop Platform:iOS Platform:Web Priority:p3-medium Status:Accepted Topic:API Type:Epic
Dominant language
Go
Stars
2.1k
Forks
274
Avg merge
2d 1h
Merged PRs (30d)
103

Description

# Goal

- Same Sharing Roles across all clients
- Sharing Roles can be changed on a single source of truth (the instance)
- Foundation for OCM (Federated Shares)
- Elevate or Full-Deny of access permissions within Spaces

⚠️ Note:
- This can mean to drop OCS Share API *
- This can mean to drop the support of Web UI for OC10

*needs deprecation notice 6 month prior for CERN

## Images

![expected](https://github.com/owncloud/ocis/assets/4378513/3eca36ab-4f21-4119-ab71-6abd8ab320d8)

![problem elevate permissions via sharing](https://github.com/owncloud/ocis/assets/4378513/ff45cd0f-9529-43d9-a83d-649a0205dbad)

## Stories

### Sharing

- [x] Create ADR https://github.com/owncloud/ocis/pull/6995 @micbar
- [x] Create Spec https://github.com/owncloud/libre-graph-api/pull/112 @butonic
- [x] Implement "SharedByMe" https://github.com/owncloud/ocis/pull/7239 @rhafer
- [x] Implement "SharedwithMe" https://github.com/owncloud/ocis/pull/7633 @fschade
- [x] Implement Role <-> Permissions Conversion https://github.com/owncloud/ocis/pull/7703 @rhafer
- [x] Implement https://owncloud.dev/libre-graph-api/#/drives.permissions/ListPermissions https://github.com/owncloud/ocis/pull/7753 @fschade
- [x] Implement https://owncloud.dev/libre-graph-api/#/drives.permissions/Invite https://github.com/owncloud/ocis/pull/7687 @fschade
- [x] Implement [Edit Permission (User, Group, Link)]( https://owncloud.dev/libre-graph-api/#/drives.permissions/UpdatePermission) -> https://github.com/owncloud/ocis/pull/7860 @rhafer
- [x] Share accept, decline (delete) - Add `POST drive/{drive-id}/items` and `DELETE drive/{drive-id}/items/{item-ID}` @fschade, https://learn.microsoft.com/en-us/graph/api/driveitem-delete?view=graph-rest-1.0&tabs=http, https://learn.microsoft.com/en-us/graph/api/driveitem-post-children?view=graph-rest-1.0&tabs=http
- [x] Implement https://owncloud.dev/libre-graph-api/#/drives.permissions/DeletePermission @rhafer -> https://github.com/owncloud/ocis/pull/7796
- [x] #8616
- [x] Implement https://owncloud.dev/libre-graph-api/#/drives.permissions/DeletePermission for public links @rhafer ->https://github.com/owncloud/ocis/pull/7849
- [x] Update the drives listing to show the new `grantedtoV2` implementation with the unified roles instead of "editor, viewer, manager" https://github.com/owncloud/ocis/pull/7861 @fschade

### Links

- [x] Implement https://owncloud.dev/libre-graph-api/#/drives.permissions/CreateLink https://github.com/owncloud/ocis/pull/7743 @micbar
- [x] How to update or delete links? Answer: via https://owncloud.dev/libre-graph-api/#/drives.permissions/UpdatePermission and https://owncloud.dev/libre-graph-api/#/drives.permissions/DeletePermission
- [x] Add `quicklink` and `internal link` to spec https://github.com/owncloud/libre-graph-api/pull/131 @micbar
- [x] Add config to match also legacy public shares to libregraph link types https://github.com/owncloud/ocis/pull/7834 @micbar
- [x] Implement Password protection in the PublicShare Provider https://github.com/owncloud/ocis/pull/7877/ @micbar
- [x] Implement Edit Link via permissions https://github.com/owncloud/ocis/pull/7908 @micbar
- [X] Implement Delete Link via permissions
- [x] Implement SetPassword on Link via permissions https://github.com/owncloud/ocis/pull/7908 @micbar

### Users

- [x] Implement user lookup on the existing graph users endpoint for all users https://github.com/owncloud/ocis/pull/7887 @jvillafanez @rhafer

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.