Commit Graph

249 Commits

Author SHA1 Message Date
Artur Neumann
fcd13cf9b8 return only single permission on link creation 2023-12-05 11:15:49 +05:45
Artur Neumann
3f476680a3 return 200 and not 201 when creating sharing link 2023-12-04 17:41:05 +05:45
Christian Richter
fb514c2ff1 allow whitespaces in contains & startsWith Filter
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-12-01 11:28:40 +01:00
Jörn Friedrich Dreyer
d6cb6eeaa3 allow creating an upload session via graph (#7712)
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2023-11-30 17:29:15 +01:00
Ralf Haferkamp
afb127090d graph sharing: delete link permission
Allow to delete link permissions (i.e. Public Shares)
2023-11-30 13:39:26 +01:00
Ralf Haferkamp
9d3523e310 graph/errocode: Rework FromCS3Status
The handling of 'error' has been moved from FromStat() to FromCS3Status().
It's generally useful for other users of FromCS3Status()
2023-11-30 13:39:26 +01:00
Christian Richter
63973d2b26 make user filter contains and startsWith case insensitive
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-30 12:08:13 +01:00
Artur Neumann
eed474bec8 Merge pull request #7851 from owncloud/return200invite
return 200 on successful invite
2023-11-30 14:42:56 +05:45
Artur Neumann
5ceeb5119b return 200 on successfull invite 2023-11-30 10:10:07 +05:45
Ralf Haferkamp
cd704661f2 graph unit test: Use mocked identity backend in utils_test
This avoids running into the WaitForCA waitloop that is running in
with the default (LDAP) identity backend when starting up in a clean
environment.
2023-11-29 17:07:05 +01:00
Florian Schade
ad06a192d8 enhancement: add graph beta listPermissions endpoint (#7753)
* enhancement: add graph beta listPermissions endpoint

besides the new api endpoint it includes several utilities to simplify the graph api development.

* resolve drive and item id from the request path
* generic pointer and value utilities
* space root detection

* update GetDriveAndItemIDParam signature to return a error

* move errorcode package

* enhancement: add generic error code handling

* fix: rebase
2023-11-28 17:06:04 +01:00
Michael Barz
eb6ec1311a chore: update libregraph api again 2023-11-28 14:56:12 +01:00
Michael Barz
ce705bc6c8 style: refactor test code 2023-11-28 14:56:12 +01:00
Michael Barz
2ca74a0e9a fix: incorporate code review 2023-11-28 14:56:12 +01:00
Michael Barz
061bde54b5 test: adapt test expectation 2023-11-28 14:56:12 +01:00
Michael Barz
2991e4a19b fix: fix error code handling 2023-11-28 14:56:12 +01:00
Michael Barz
53f2fd396f test: add more integration tests for create link 2023-11-28 14:56:12 +01:00
Michael Barz
5f70d8a303 test: add integration tests for create link handler 2023-11-28 14:56:12 +01:00
Michael Barz
c035fc80a9 feat(api): add new sharing NG create link feature 2023-11-28 14:56:12 +01:00
Michael Barz
2668ca664a feat: add new error code type 2023-11-28 14:56:12 +01:00
Ralf Haferkamp
4a94388a25 graph: Add delete permission endpoint
Allows the owner to remove permissions of a driveItem (i.e. to delete a
share). For now this does not work for "link" permission (i.e. public
shares)
2023-11-27 16:52:15 +01:00
Florian Schade
170021a38e chore: go version bump to 1.21 2023-11-23 14:52:01 +01:00
Florian Schade
40d356c56b enhancement: make use of unifiedrole from the graph invitation endpoint, applying multiple roles works and result in a merged cs3 permission set (#7751) 2023-11-23 14:18:03 +01:00
Christian Richter
06a66e8aa0 add user filter startsWith and contains
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-20 20:10:39 +01:00
Florian Schade
ad57d59738 enhancement: add graph invite endpoint (#7687) 2023-11-17 16:36:54 +01:00
Ralf Haferkamp
9303cdece7 graph: Set roles/actions in sharedByMe response (#7703)
* unifiedrole: Add CS3ResourcePermissionsToLibregraphActions

Add function to convert CS3ResourcePermsissions to libregraph actions

* unifiedrole: Fix strings for the UnifiedRoleConditionSelf

The "Self/Owner/Grantee" string are not part the the constraint value

* graph: Move getRoleDefinitionList to unifiedrole module

rename it to GetBuiltinRoleDefinitionList and make it public

* graph: turn libregraph resource actions into string constants

* graph/sharedbyme: Set the correct roles (or actions) on permissions

Try to map CS3 resource permissions on a share to one of the default libregraph
UnifiedRoleDefinitions. If a match if found return the roleid in 'permissions.roles'
attribute of the response. If no match if found convert the
ResourcePermissions in to `libre.graph.permissions.actions` and return
those in the response.
2023-11-17 15:41:24 +01:00
Ralf Haferkamp
50f63bf436 bump reva to latest edge (#7727)
* bump reva to latest edge

To get https://github.com/cs3org/reva/pull/4336

* graph: Import unified role related code from reva

The UnifiedRole related types are pretty specific to the graph service.
Maintaining them as part of reva makes things more complex that required.

* chore: add failing cases to the expected failures

---------

Co-authored-by: Florian Schade <f.schade@icloud.com>
2023-11-17 09:18:45 +01:00
Roman Perekhod
a6b75bc9f6 fix libre-graph status codes (#7705)
* fix libre-graph status codes

* owncloud-test-middleware bumped

---------

Co-authored-by: Roman Perekhod <rperekhod@owncloud.com>
2023-11-15 17:45:23 +01:00
Christian Richter
fde6a4b67a [Experiment] Remove language object from GetUser
Co-authored-by: Florian Schade <fschade@owncloud.com>

Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 13:36:35 +01:00
Christian Richter
15699f02b8 Incorporate requested changes
Co-authored-by: Julian Koberg <jkoberg@owncloud.com>
Co-authored-by: Ralf Haferkamp <rhaferkamp@owncloud.com>
Co-authored-by: Michael Barz <mbarz@owncloud.com>
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 13:22:51 +01:00
Christian Richter
5e02658873 Fix wrong variable
Signed-off-by: Christian Richter <crichter@owncloud.com>
Co-authored-by: Julian Koberg <jkoberg@owncloud.com>
Co-authored-by: Ralf Haferkamp <rhaferkamp@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
1e34e43c10 Add language to PostUser, allow admin to read user values
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
407238efa5 incorporate requested changes
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
c5d3b74cd4 filter out unallowed fields in changes
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Florian Schade
e2e1d1da44 fix(graph users test): provide proto list value example on how to set language
Co-authored-by: Florian Schade <fschade@owncloud.com>
Signed-of-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
3e203fe751 add mocks for valueservice
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
174097214f Persist preferred language for user
Signed-off-by: Christian Richter <crichter@owncloud.com>
Co-authored-by: Julian Koberg <jkoberg@owncloud.com>
Co-authored-by: Michael Barz <mbarz@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
a3f037a53e refactor to api changes
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
388e9f266a restore deleted changes
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
Christian Richter
d96031b7d3 add preffered language
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-11-15 11:23:24 +01:00
jkoberg
3629babb7e use name instead id for map
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-11-13 11:00:05 +01:00
jkoberg
73f87a003c refactor settings/pkg/store/defaults
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-11-10 13:02:21 +01:00
Florian Schade
643158b67b enhancement: add sharedWithMe graph beta endpoint (#7633) 2023-11-08 20:02:58 +01:00
Ralf Haferkamp
94d2befc25 Make v1beta1/roleManagement/permissions/roleDefinitions/ beta
To align with the current spec.
2023-11-08 15:46:24 +01:00
Ralf Haferkamp
e084e5a722 graph/sharebyme: Use cache for user and group lookups 2023-11-08 14:45:44 +01:00
Ralf Haferkamp
c9df9f5f31 graph: Make user and group lookup cache re-usable
drives.go implemented a local user/group cache (ttl based) to speed up repeated
user and group lookups. This commit moves the implementation to the 'identity' module
to make it usable outside of drives.go.
2023-11-08 14:45:44 +01:00
Ralf Haferkamp
65daa93c1e Fix url path for getsharedbyme
it's 'drive' not 'drives'
2023-11-08 09:31:45 +01:00
Ralf Haferkamp
d2cff38ab4 graph/sharedbyme: Add user and group names to permissions 2023-11-06 09:35:27 +01:00
Ralf Haferkamp
580a4e0d92 graph/sharedbyme: populate the permissions property
Set the exipration date, grantedToV2 and link attributes on the
permissions.

The displayName for users and groups isn't expanded yet (only the "id" is set)
Also, the "roles" attribute cannot be populated yet.
2023-11-06 09:35:27 +01:00
Ralf Haferkamp
454ec52955 graph/sharedbyme: Use existing method to initialize driveitem properties
getDriveItem does a Stat() call on the resource and sets the
corresponding DriveItem properties.
2023-11-06 09:35:27 +01:00